Conflict analysis in search algorithms for propositional satisfiability

This paper introduces GRASP (Generic seaRch Algorithm for the Satisfiability Problem), a new search algorithm for Propositional Satisfiability (SAT). GRASP incorporates several search-pruning techniques, some of which are specific to SAT, whereas others find equivalent in other fields of Artificial Intelligence. GRASP is premised on the inevitability of conflicts during search and its most distinguishing feature is the augmentation of basic backtracking search with a powerful conflict analysis procedure. Analyzing conflicts to determine their causes enables GRASP to backtrack non-chronologically to earlier levels in the search tree, potentially pruning large portions of the search space. In addition, by “recording” the causes of conflicts, GRASP can recognize and preempt the occurrence of similar conflicts later on in the search. Finally, straightforward bookkeeping of the causality chains leading up to conflicts allows GRASP to identify assignments that are necessary for a solution to be found. Experimental results obtained from a large number of benchmarks indicate that application of the proposed conflict analysis techniques to SAT algorithms can be extremely effective for a large number of representative classes of SAT instances. Conflict Analysis in Search Algorithms for Propositional Satisfiability 1

[1]  James M. Crawford,et al.  Experimental Results on the Crossover Point inSatis ability , 1993 .

[2]  Robert E. Tarjan,et al.  Finding Dominators in Directed Graphs , 1974, SIAM J. Comput..

[3]  Gerald J. Sussman,et al.  Forward Reasoning and Dependency-Directed Backtracking in a System for Computer-Aided Circuit Analysis , 1976, Artif. Intell..

[4]  Maurice Bruynooghe,et al.  Analysis of Dependencies to Improve the Behaviour of Logic Programs , 1980, CADE.

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

[6]  João Silva Search algorithms for satisfiability problems in combinational switching circuits , 1996 .

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

[8]  Giorgio Gallo,et al.  Algorithms for Testing the Satisfiability of Propositional Formulae , 1989, J. Log. Program..

[9]  David A. McAllester An Outlook on Truth Maintenance. , 1980 .

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

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

[12]  Johan de Kleer,et al.  An Assumption-Based TMS , 1987, Artif. Intell..

[13]  Daniele Pretolani,et al.  Efficiency and stability of hypergraph SAT algorithms , 1993, Cliques, Coloring, and Satisfiability.

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

[15]  Rina Dechter,et al.  Enhancement Schemes for Constraint Processing: Backjumping, Learning, and Cutset Decomposition , 1990, Artif. Intell..

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

[17]  Thomas Schiex,et al.  Nogood Recording for static and dynamic constraint satisfaction problems , 1993, Proceedings of 1993 IEEE Conference on Tools with Al (TAI-93).

[18]  David A. McAllester,et al.  A Rearrangement Search Strategy for Determining Propositional Satisfiability , 1988, AAAI.

[19]  T. Larrabee Efficient generation of test patterns using Boolean satisfiability , 1990 .

[20]  Hantao Zhang,et al.  ModGen: Theorem Proving by Model Generation , 1994, AAAI.

[21]  Hector J. Levesque,et al.  A New Method for Solving Hard Satisfiability Problems , 1992, AAAI.

[22]  Jacques Carlier,et al.  SAT versus UNSAT , 1993, Cliques, Coloring, and Satisfiability.