2007 · 120 citations · 6 references
The authors present a new method for finding finite models of unsorted first‑order logic clause sets. The method is a MACE‑style approach that flattens clauses, instantiates them for increasing model sizes, and solves the resulting propositional clauses with a SAT solver, enhanced by term definitions, incremental SAT, static symmetry reduction, and sort inference. All four techniques were implemented in the model finder Paradox, yielding very promising results.
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.
6
A machine program for theorem-proving
Martin Davis, George Logemann, Donald Loveland · Communications of the ACM · 1962 · 3.1K citations · Full text
Matthew W. Moskewicz, Conor Madigan, Ying Zhao et al. · 2001 · 2.9K citations
Mathematical Programming, Artificial Intelligence, Constraint Solving +14
Jesse Whittemore, Joonyoung Kim, Karem A. Sakallah · 2001 · 180 citations
SEM: a system for enumerating models
Jian Zhang, Hantao Zhang · 1995 · 135 citations