Learn More
We propose a new efficient automatic verification technique, Athena, for security protocol analysis. It uses a new efficient representation — our extension to the Strand Space Model, and utilizes techniques from both model checking and theorem proving approaches. Athena is fully automatic and is able to prove the correctness of many security protocols with(More)
We present a new approach to the verification of hardware systems with data dependencies using temporal logic symbolic model checking. As a benchmark we take Tomasulo's algorithm [10] for out-of-order instruction scheduling. Our approach is similar to the idea of uninterpreted function symbols [4]. We use symbolic values and instructions instead of concrete(More)
We present a new way of using Binary Decision Diagrams in automata based algorithms for solving the satisfiability problem of quantifier-free Pres-burger arithmetic. Unlike in previous approaches [5, 2, 19], we translate the satis-fiability problem into a model checking problem and use the existing BDD-based model checker SMV [13] as our primary engine. We(More)
The never-ending growth of the complexity of modern hardware and software systems requires more and more sophisticated methods of verification. The state space explosion problem leaves little hope for automatic finite-state verification techniques like model checking to remain practical, especially when designs become parameterized. The use of theorem(More)
Efficient decision procedures for arithmetic play a very important role in formal verification. In practical examples, however, arithmetic constraints are often mixed with constraints from other theories like the theory of arrays, Boolean satisfiability (SAT), bit-vectors, etc. Therefore, decision procedures for arithmetic are especially useful in(More)
Most verification approaches assume a mathematical formalism in which functions are total, even though partial functions occur naturally in many applications. Furthermore , although there have been various proposals for logics of partial functions, there is no consensus on which is " the right " logic to use for verification applications. In this paper, we(More)