Boolean satisfiability with transitivity constraints
- 1 October 2002
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Computational Logic
- Vol. 3 (4) , 604-627
- https://doi.org/10.1145/566385.566390
Abstract
We consider a variant of the Boolean satisfiability problem where a subset ε of the propositional variables appearing in formula F sat encode a symmetric, transitive, binary relation over N elements. Each of these relational variables, e i,j , for 1 ≤ i < j ≤ N , expresses whether or not the relation holds between elements i and j . The task is to either find a satisfying assignment to F sat that also satisfies all transitivity constraints over the relational variables (e.g., e 1,2 ∧ e 2,3 ⇒ e 1,3 ), or to prove that no such assignment exists. Solving this satisfiability problem is the final and most difficult step in our decision procedure for a logic of equality with uninterpreted functions. This procedure forms the core of our tool for verifying pipelined microprocessors.To use a conventional Boolean satisfiability checker, we augment the set of clauses expressing F sat with clauses expressing the transitivity constraints. We consider methods to reduce the number of such clauses based on the sparse structure of the relational variables.To use Ordered Binary Decision Diagrams (OBDDs), we show that for some sets ε, the OBDD representation of the transitivity constraints has exponential size for all possible variable orderings. By considering only those relational variables that occur in the OBDD representation of F sat , our experiments show that we can readily construct an OBDD representation of the relevant transitivity constraints and thus solve the constrained satisfiability problem.Keywords
All Related Versions
This publication has 10 references indexed in Scilit:
- Processor verification using efficient reductions of the logic of uninterpreted functions to propositional logicACM Transactions on Computational Logic, 2001
- GRASP: a search algorithm for propositional satisfiabilityIEEE Transactions on Computers, 1999
- Exploiting Positive Equality in a Logic of Equality with Uninterpreted FunctionsPublished by Springer Nature ,1999
- BDD based procedures for a theory of equality with uninterpreted functionsPublished by Springer Nature ,1998
- Automatic verification of pipelined microprocessor controlPublished by Springer Nature ,1994
- ARRAYS AND TREESPublished by Elsevier ,1992
- On the complexity of VLSI implementations and graph representations of Boolean functions with application to integer multiplicationIEEE Transactions on Computers, 1991
- Graph-Based Algorithms for Boolean Function ManipulationIEEE Transactions on Computers, 1986
- Computing the Minimum Fill-In is NP-CompleteSIAM Journal on Algebraic Discrete Methods, 1981
- Triangulated graphs and the elimination processJournal of Mathematical Analysis and Applications, 1970