The Verus Language : Representing Time efficiently with BDDs 1
نویسنده
چکیده
There have been significant advances on formal methods and tools to verify real-time systems recently. Nevertheless, these methods have not yet been accepted as a realistic alternative to the verification of industrial systems. One reasons for this is that formal methods are still difficult to apply efficiently. Another reason is that even though being more efficient than previous ones, verification algorithms are still not efficient enough to handle many complex systems. This work addresses this problem by presenting a language designed especially to simplify writing real-time programs. It is an imperative language with a syntax similar to C. Special constructs are provided to allow the straightforward expression of timing properties. The familiar syntax makes it easier for nonexperts to use the tool. The special constructs make it possible to model the timing characteristics of the system naturally and accurately. The language is compiled into state-transition graphs, which provide a simple but extremely efficient model of time. Symbolic model checking and quantitative algorithms are used to check the timing properties of the system. The efficiency of the representation allows complex realistic systems to be verified by the method as evidenced by the aircraft controller discussed in the paper. The model for this example has about 1015 states and counterexamples with thousands of states have been produced in seconds using the language and algorithms proposed.
منابع مشابه
The Verus Language: Representing Time Efficiently with BDDs
There have been significant advances on formal methods to verify complex systems recently. Nevertheless, these methods have not yet been accepted as a realistic alternative to the verification of industrial systems. One reason for this is that formal methods are still difficult to apply efficiently. Another reason is that current verification algorithms are still not efficient enough to handle ...
متن کاملThe Verus Tool: A Quantitative Approach to the Formal Verification of Real-Time Systems1
The task of checking if a computer system satisfies its timing specifications is extremely important. These systems are often used in critical applications where failure to meet a deadline can have serious or even fatal consequences. This work describes Verus, an efficient tool for performing this verification task. Using our tool, the system being verified is specified in the Verus language an...
متن کاملOn the Size of Binary Decision Diagrams Representing Boolean Functions
We consider the size of the representation of Boolean functions by several classes of binary decision diagrams (BDDs) (also called branching programs), namely the classes of arbitrary BDDs of real time BDD (RBDD) (i.e. BDDs where each computation path is limited to the number of variables), of free BDDs (FBDDs) (also called read-once-only branching programs), of ordered BDDs (OBDDS) i.e. FBDDs ...
متن کاملAutomated Deduction with Shannon Graphs
Binary Decision Diagrams (BDDs) are a well-known tool for representing Boolean functions. We show how BDDs can be extended to full rst-order logic by integrating means for representing quantiiers. The resulting structures are called Shannon graphs. A calculus based on these Shannon graphs is set up, and its soundness and completeness proofs are outlined. A comparison of deduction with rst-order...
متن کاملSymbolic Model Checking for Probabilistic Processes
We introduce a symbolic model checking procedure for Probabilistic Computation Tree Logic PCTL over labelled Markov chains as models. Model checking for probabilistic logics typically involves solving linear equation systems in order to ascertain the probability of a given formula holding in a state. Our algorithm is based on the idea of representing the matrices used in the linear equation sys...
متن کامل