New Techniques that Improve MACE-style Finite Model Finding

We describe a new method for finding finite models of unsorted first-order logic clause sets. The method is a MACE-style method, i.e. it ”flattens” the first-order clauses, and for increasing model sizes, instantiates the resulting clauses into propositional clauses which are consecutively solved by a SAT-solver. We enhance the standard method by using 4 novel techniques: term definitions, which reduce the number of variables in flattened clauses, incremental SAT, which enables reuse of search information between consecutive model sizes, static symmetry reduction, which reduces the number of isomorphic models by adding extra constraints to the SAT problem, and sort inference, which allows the symmetry reduction to be applied at a finer grain. All techniques have been implemented in a new model finder, called Paradox, with very promising results.

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

[2]  W. McCune A Davis-Putnam program and its application to finite-order model search: Quasigroup existence problems , 1994 .

[3]  Hantao Zhang,et al.  SEM: a System for Enumerating Models , 1995, IJCAI.

[4]  Hantao Zhang,et al.  System Description: Generating Models by SEM , 1996, CADE.

[5]  Gilles Audemard,et al.  The eXtended Least Number Heuristic , 2001, IJCAR.

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

[7]  Joonyoung Kim,et al.  SATIRE: A new incremental satisfiability engine , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

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

[9]  Andrei Voronkov,et al.  Splitting Without Backtracking , 2001, IJCAI.

[10]  Stephan Schulz A Comparison of Different Techniques for Grounding Near-Propositional CNF Formulae , 2002, FLAIRS Conference.