Generalizing Boolean Satisfiability III: Implementation

This is the third of three papers describing ZAP, a satisfiability engine that substantially generalizes existing tools while retaining the performance characteristics of modern high-performance solvers. The fundamental idea underlying ZAP is that many problems passed to such engines contain rich internal structure that is obscured by the Boolean representation used; our goal has been to define a representation in which this structure is apparent and can be exploited to improve computational performance. The first paper surveyed existing work that (knowingly or not) exploited problem structure to improve the performance of satisfiability engines, and the second paper showed that this structure could be understood in terms of groups of permutations acting on individual clauses in any particular Boolean theory. We conclude the series by discussing the techniques needed to implement our ideas, and by reporting on their performance on a variety of problem instances.

[1]  Bart Selman,et al.  Problem Structure in the Presence of Perturbations , 1997, AAAI/IAAI.

[2]  Pavel Pudlák,et al.  Lower bounds for resolution and cutting plane proofs and monotone computations , 1997, Journal of Symbolic Logic.

[3]  George W. Polites,et al.  An introduction to the theory of groups , 1968 .

[4]  Matthew L. Ginsberg,et al.  Combining satisfiability techniques from AI and OR , 2000, The Knowledge Engineering Review.

[5]  Chu Min Li,et al.  Equivalent literal propagation in the DLL procedure , 2003, Discret. Appl. Math..

[6]  G. S. Tseitin On the Complexity of Derivation in Propositional Calculus , 1983 .

[7]  Mark E. Stickel,et al.  Implementing the Davis–Putnam Method , 2000, Journal of Automated Reasoning.

[8]  C. Sims Computational methods in the study of permutation groups , 1970 .

[9]  John N. Hooker,et al.  Generalized resolution and cutting planes , 1988 .

[10]  Thomas J. Schaefer,et al.  The complexity of satisfiability problems , 1978, STOC.

[11]  Armin Haken,et al.  The Intractability of Resolution , 1985, Theor. Comput. Sci..

[12]  László Babai,et al.  Arthur-Merlin Games: A Randomized Proof System, and a Hierarchy of Complexity Classes , 1988, J. Comput. Syst. Sci..

[13]  Roberto J. Bayardo,et al.  Using CSP Look-Back Techniques to Solve Real-World SAT Instances , 1997, AAAI/IAAI.

[14]  Matthew L. Ginsberg,et al.  Generalizing Boolean Satisfiability I: Background and Survey of Existing Work , 2011, J. Artif. Intell. Res..

[15]  Daniel P. Miranker,et al.  A Complexity Analysis of Space-Bounded Learning Algorithms for the Constraint Satisfaction Problem , 1996, AAAI/IAAI, Vol. 1.

[16]  Michael A. Harrison,et al.  Introduction to switching and automata theory , 1965 .

[17]  J. S. Leon,et al.  Permutation Group Algorithms Based on Partitions, I: Theory and Algorithms , 1991, J. Symb. Comput..

[18]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[19]  Chu Min Li,et al.  Integrating Equivalency Reasoning into Davis-Putnam Procedure , 2000, AAAI/IAAI.

[20]  Matthew W. Moskewicz,et al.  Cha : Engineering an e cient SAT solver , 2001, DAC 2001.

[21]  Chu Min Li,et al.  Integrating symmetry breaking into a DLL procedure , 2002 .

[22]  Hans van Maaren,et al.  Aligning CNF- and Equivalence-reasoning , 2004, SAT.

[23]  John E. Hopcroft,et al.  Polynomial-time algorithms for permutation groups , 1980, 21st Annual Symposium on Foundations of Computer Science (sfcs 1980).

[24]  P. Barth A Davis-Putnam based enumeration algorithm for linear pseudo-Boolean optimization , 1995 .

[25]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[26]  Matthew L. Ginsberg,et al.  Dynamic Backtracking , 1993, J. Artif. Intell. Res..

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

[28]  Á. Seress Permutation Group Algorithms , 2003 .

[29]  Mark Jerrum,et al.  A compact representation for permutation groups , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[30]  Matthew L. Ginsberg,et al.  Generalizing Boolean Satisfiability II: Theory , 2004, J. Artif. Intell. Res..