Guiding CNF-SAT search via efficient constraint partitioning

Contemporary techniques to identify a good variable order for SAT rely on identifying minimum tree-width decompositions. However, the problem of finding a minimal width tree decomposition for an arbitrary graph is NP complete. The available tools and methods are impractical, as they cannot handle large and hard-to-solve CNF-SAT instances. This work proposes a hypergraph partitioning based constraint decomposition technique as an alternative to contemporary methods. We model the CNF-SAT problem on a hypergraph and apply min-cut based bi-partitioning. Clause-variable statistics across the partitions are analyzed to further decompose the problem, iteratively. The resulting tree-like decomposition provides a variable order for guiding CNF-SAT search. Experiments demonstrate that our partitioning procedure is fast, scalable and the derived variable order results in significant increase in performance of the SAT engine.

[1]  Vipin Kumar,et al.  Multilevel k-way hypergraph partitioning , 1999, DAC '99.

[2]  Sheila A. McIlraith,et al.  Partition-based logical reasoning for first-order and propositional theories , 2005, Artif. Intell..

[3]  Eyal Amir,et al.  Solving Satisfiability using Decomposition and the Most Constrained Subproblem (Preliminary Report) , 2001, Electron. Notes Discret. Math..

[4]  Eyal Amir,et al.  Efficient Approximation for Triangulation of Minimum Treewidth , 2001, UAI.

[5]  Kurt Keutzer,et al.  Why is ATPG easy? , 1999, DAC '99.

[6]  Randal E. Bryant,et al.  Efficient implementation of a BDD package , 1991, DAC '90.

[7]  Igor L. Markov,et al.  Solving difficult SAT instances in the presence of symmetry , 2002, Proceedings 2002 Design Automation Conference (IEEE Cat. No.02CH37324).

[8]  K. Sakallah,et al.  MINCE: A Static Global Variable-Ordering for SAT and BDD , 2001 .

[9]  Eugene Goldberg,et al.  Verification of proofs of unsatisfiability for CNF formulas , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[10]  Andrew B. Kahng,et al.  Improved algorithms for hypergraph bipartitioning , 2000, ASP-DAC '00.

[11]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.

[12]  Karem A. Sakallah,et al.  GRASP—a new search algorithm for satisfiability , 1996, ICCAD 1996.

[13]  Hilary Putnam,et al.  A Computing Procedure for Quantification Theory , 1960, JACM.

[14]  James M. Crawford,et al.  Symmetry-Breaking Predicates for Search Problems , 1996, KR.

[15]  Adnan Darwiche Compiling Knowledge into Decomposable Negation Normal Form , 1999, IJCAI.

[16]  Eugene Goldberg,et al.  BerkMin: A Fast and Robust Sat-Solver , 2002 .

[17]  Robert K. Brayton,et al.  Combinational test generation using satisfiability , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[18]  Bart Selman,et al.  Local search strategies for satisfiability testing , 1993, Cliques, Coloring, and Satisfiability.

[19]  D. Pradhan,et al.  Recursive learning: a new implication technique for efficient solutions to CAD problems-test, verification, and optimization , 2003 .

[20]  Karem A. Sakallah,et al.  Satometer: how much have we searched? , 2003, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[21]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[22]  James H. Kukula,et al.  Checking satisfiability of a conjunction of BDDs , 2003, Proceedings 2003. Design Automation Conference (IEEE Cat. No.03CH37451).

[23]  Hantao Zhang,et al.  SATO: An Efficient Propositional Prover , 1997, CADE.

[24]  Sheila A. McIlraith,et al.  Partition-Based Logical Reasoning , 2000, KR.

[25]  Zhihong Zeng,et al.  A BDD-based satisfiability infrastructure using the unate recursive paradigm , 2000, DATE '00.

[26]  Rina Dechter,et al.  Network-based heuristics for constraint satisfaction problems , 1988 .

[27]  Alasdair Urquhart,et al.  Formal Languages]: Mathematical Logic--mechanical theorem proving , 2022 .

[28]  Slawomir Pilarski,et al.  SAT with partial clauses and back-leaps , 2002, DAC '02.

[29]  Derek G. Corneil,et al.  Complexity of finding embeddings in a k -tree , 1987 .

[30]  J. K. Lowe,et al.  Some results and experiments in programming techniques for propositional logic , 1986, Comput. Oper. Res..

[31]  Sharad Malik,et al.  Partition-based decision heuristics for image computation using SAT and BDDs , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[32]  Adnan Darwiche,et al.  Decomposable negation normal form , 2001, JACM.

[33]  João P. Silva The Impact of Branching Heuristics in Propositional Satisfiability Algorithms , 1999 .

[34]  Shashi Shekhar,et al.  Multilevel hypergraph partitioning: application in VLSI domain , 1997, DAC.

[35]  J. Freeman Improvements to propositional satisfiability search algorithms , 1995 .

[36]  Per Bjesse,et al.  Guiding SAT Diagnosis with Tree Decompositions , 2003, SAT.