Abstract: We introduce a new decision procedure for Equality Logic. The procedure improves on Bryant and Velev's “Sparse” method from CAV'00, in which each equality predicate is encoded with a Boolean variable, and then a set of transitivity constraints are added to compensate on the lost of transitivity of equality. We suggest the Reduced Transitivity Constraints (RTC) algorithm, that unlike the Sparse method, considers the polarity of each equality predicate, i.e. whether it is an equality or disequality when the given equality formula φ is in Negation Normal Form (NNF). Given this information, we build the Equality Graph corresponding to φ with two types of edges, one for each polarity. We then define the notion of Contradictory Cycles to be cycles in that graph that the variables corresponding to their edges cannot be simultaneously satisfied due to transitivity of equality. We prove that it is sufficient to add transitivity constraints that only constrain Contradictory Cycles, which results in only a small subset of the constraints added by the Sparse method. The formulas we generate are smaller and define a larger solution set, hence are expected to be easier to solve, as indeed our experiments show. Our new decision procedure is now implemented in the Uclid verification system.
Joint work with Orly Meir.
Ofer
Strichman is a Senior Lecturer at the Technion, Israel, and a
consultant of IBM Research in Haifa. He received his B.Sc. and
M.Sc. from the Technion in Operations Research and System
Analysis, and his Ph.D. in Computer Science from the Weizmann
Institute (Israel). His Ph.D. thesis, under the guidance of
Prof. Amir Pnueli, covered various subjects in formal verification
such as Translation Validation, decision procedures for Equality
Logic, and Bounded Model Checking. He was a Postdoctoral Fellow
in Prof. Edmund Clarke's group between 2001 and 2003. He
initiated the International Workshop on Bounded Model Checking,
affiliated with CAV, and has co-chaired the event since its
inception in 2001.
|
| Maintainer | [ Home > Seminar ] |
| Last modified: Tue Mar 1 13:10:38 EST 2005 |