An algorithm for reasoning about equality
Communications of the ACM
ACM Transactions on Computational Logic (TOCL)
Chaff: engineering an efficient SAT solver
Proceedings of the 38th annual Design Automation Conference
Introduction to algorithms
The small model property: how small can it be?
Information and Computation
Translation Validation for Synchronous Languages
ICALP '98 Proceedings of the 25th International Colloquium on Automata, Languages and Programming
BDD Based Procedures for a Theory of Equality with Uninterpreted Functions
CAV '98 Proceedings of the 10th International Conference on Computer Aided Verification
Deciding Equality Formulas by Small Domains Instantiations
CAV '99 Proceedings of the 11th International Conference on Computer Aided Verification
Boolean Satisfiability with Transitivity Constraints
CAV '00 Proceedings of the 12th International Conference on Computer Aided Verification
CAV '02 Proceedings of the 14th International Conference on Computer Aided Verification
Automatic verification of Pipelined Microprocessor Control
CAV '94 Proceedings of the 6th International Conference on Computer Aided Verification
Exploiting Positive Equality in a Logic of Equality with Uninterpreted Functions
CAV '99 Proceedings of the 11th International Conference on Computer Aided Verification
Finite Instantiations in Equivalence Logic with Uninterpreted Functions
CAV '01 Proceedings of the 13th International Conference on Computer Aided Verification
Cost-effective hyper-resolution for preprocessing CNF formulas
SAT'05 Proceedings of the 8th international conference on Theory and Applications of Satisfiability Testing
Generating Minimum Transitivity Constraints in P-time for Deciding Equality Logic
Electronic Notes in Theoretical Computer Science (ENTCS)
New results on rewrite-based satisfiability procedures
ACM Transactions on Computational Logic (TOCL)
EufDpll - A Tool to Check Satisfiability of Equality Logic Formulas
Electronic Notes in Theoretical Computer Science (ENTCS)
Theory decision by decomposition
Journal of Symbolic Computation
An interpolating decision procedure for transitive relations with uninterpreted functions
HVC'09 Proceedings of the 5th international Haifa verification conference on Hardware and software: verification and testing
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Hi-index | 0.00 |
We introduce a new decision procedure for Equality Logic. The procedure improves on Bryant and Velev's sparse method [4] 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 for the loss 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 ϕE is in Negation Normal Form (NNF). Given this information, we build the Equality Graph corresponding to ϕE 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 Reconstruct-α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.