Guiding SAT Solving by Formula Partitioning

When deciding the satisfiability of a Boolean formula, one promising approach is to split the formula into two smaller independent sub-formulas. While many studies report encouraging early results with such methods, the approach is rarely used in state-of-the-art solvers. In this paper, we present a technique that uses formula partitioning to guide the solution of the SAT problem through providing initialization values for the VSIDS heuristic. Our results on a large number of benchmark instances show that the method can notably improve the performance of modern solvers, especially if the time available for solving is short. We also present some findings in the area of hypergraph partitioning, which is used as a tool for our technique.

[1]  Jun Gu,et al.  Algorithms for the satisfiability (SAT) problem: A survey , 1996, Satisfiability Problem: Theory and Applications.

[2]  George Katsirelos,et al.  Eigenvector Centrality in Industrial SAT Instances , 2012, CP.

[3]  Yixin Chen,et al.  SAS+ Planning as Satisfiability , 2012, J. Artif. Intell. Res..

[4]  Gilles Audemard,et al.  Predicting Learnt Clauses Quality in Modern SAT Solvers , 2009, IJCAI.

[5]  Gilles Audemard,et al.  Refining Restarts Strategies for SAT and UNSAT , 2012, CP.

[6]  Shashi Shekhar,et al.  Multilevel hypergraph partitioning: applications in VLSI domain , 1999, IEEE Trans. Very Large Scale Integr. Syst..

[7]  Per Bjesse,et al.  Finding Bugs in an Alpha Microprocessor Using Satisfiability Solvers , 2001, CAV.

[8]  Achim G. Hoffmann The dynamic locking heuristic-a new graph partitioning algorithm , 1994, Proceedings of IEEE International Symposium on Circuits and Systems - ISCAS '94.

[9]  Bart Selman,et al.  Algorithm portfolios , 2001, Artif. Intell..

[10]  M. Newman,et al.  Finding community structure in very large networks. , 2004, Physical review. E, Statistical, nonlinear, and soft matter physics.

[11]  Roberto J. Bayardo,et al.  Counting Models Using Connected Components , 2000, AAAI/IAAI.

[12]  Vasco M. Manquinho,et al.  An overview of parallel SAT solving , 2012, Constraints.

[13]  Niklas Sörensson,et al.  An Extensible SAT-solver , 2003, SAT.

[14]  Zoltán Ádám Mann Typical-case complexity and the SAT competitions , 2014, POS@SAT.

[15]  Roger Villemaire,et al.  Scalable formula decomposition for propositional satisfiability , 2010, C3S2E '10.

[16]  Adnan Darwiche,et al.  A Structure-Based Variable Ordering Heuristic for SAT , 2003, IJCAI.

[17]  Toby Walsh,et al.  Backbones and Backdoors in Satisfiability , 2005, AAAI.

[18]  G. Karypis,et al.  Multilevel k-way hypergraph partitioning , 1999, Proceedings 1999 Design Automation Conference (Cat. No. 99CH36361).

[19]  Zoltán Ádám Mann,et al.  Evaluating the Kernighan-Lin Heuristic for Hardware/Software Partitioning , 2007, Int. J. Appl. Math. Comput. Sci..

[20]  Andrew B. Kahng,et al.  Design and Implementation of the Fiduccia-Mattheyses Heuristic for VLSI Netlist Partitioning , 1999, ALENEX.

[21]  Brian W. Kernighan,et al.  An efficient heuristic procedure for partitioning graphs , 1970, Bell Syst. Tech. J..

[22]  Martin Fürer,et al.  Exact Max 2-Sat: Easier and Faster , 2007, SOFSEM.

[23]  Xin-She Yang,et al.  Introduction to Algorithms , 2021, Nature-Inspired Optimization Algorithms.

[24]  Ewald Speckenmeyer,et al.  A fast parallel SAT-solver — efficient workload balancing , 2005, Annals of Mathematics and Artificial Intelligence.

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

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

[27]  Carsten Sinz,et al.  Proceedings of SAT Challenge 2012 : Solver and Benchmark Descriptions , 2012 .

[28]  Zoltán Ádám Mann Optimization in computer engineering – Theory and applications , 2011 .

[29]  Martin Lukasiewycz,et al.  Improving system level design space exploration by incorporating SAT-solvers into multi-objective evolutionary algorithms , 2006, IEEE Computer Society Annual Symposium on Emerging VLSI Technologies and Architectures (ISVLSI'06).

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

[31]  Jinchang Wang,et al.  Solving propositional satisfiability problems , 1990, Annals of Mathematics and Artificial Intelligence.

[32]  Marijn J. H. Heule,et al.  Proceedings of SAT Competition 2013 , 2013 .

[33]  Sebastian Fischmeister,et al.  Impact of Community Structure on SAT Solver Performance , 2014, SAT.

[34]  Armin Biere,et al.  Decomposing SAT Problems into Connected Components , 2006, J. Satisf. Boolean Model. Comput..

[35]  Carlos Ansótegui,et al.  The Community Structure of SAT Formulas , 2012, SAT.

[36]  Armin Biere,et al.  Cube and Conquer: Guiding CDCL SAT Solvers by Lookaheads , 2011, Haifa Verification Conference.

[37]  Charles M. Fiduccia,et al.  A linear-time heuristic for improving network partitions , 1988, 25 years of DAC.

[38]  Bart Selman,et al.  Satisfiability Solvers , 2008, Handbook of Knowledge Representation.

[39]  Kevin Leyton-Brown,et al.  SATzilla: Portfolio-based Algorithm Selection for SAT , 2008, J. Artif. Intell. Res..

[40]  Zoltán Ádám Mann,et al.  Formula partitioning revisited , 2014, POS@SAT.

[41]  Peter van Beek,et al.  Guiding real-world SAT solving with dynamic hypergraph separator decomposition , 2004, 16th IEEE International Conference on Tools with Artificial Intelligence.

[42]  Cevdet Aykanat,et al.  Two novel multiway circuit partitioning algorithms using relaxed locking , 1997, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[43]  Daniel Singer,et al.  JaCk-SAT: A New Parallel Scheme to Solve the Satisfiability Problem (SAT) Based on Join-and-Check , 2007, PPAM.

[44]  Priyank Kalla,et al.  Exploiting hypergraph partitioning for efficient Boolean satisfiability , 2004, Proceedings. Ninth IEEE International High-Level Design Validation and Test Workshop (IEEE Cat. No.04EX940).

[45]  Ohad Shacham,et al.  Tuning the VSIDS decision heuristic for bounded model checking , 2003, Proceedings. 4th International Workshop on Microprocessor Test and Verification - Common Challenges and Solutions.

[46]  Allen Van Gelder,et al.  Partitioning Methods for Satisfiability Testing on Large Formulas , 1996, CADE.

[47]  Carlos Ansótegui,et al.  On the Modularity of Industrial SAT Instances , 2011, CCIA.