27 research outputs found
Towards Understanding and Harnessing the Potential of Clause Learning
Efficient implementations of DPLL with the addition of clause learning are
the fastest complete Boolean satisfiability solvers and can handle many
significant real-world problems, such as verification, planning and design.
Despite its importance, little is known of the ultimate strengths and
limitations of the technique. This paper presents the first precise
characterization of clause learning as a proof system (CL), and begins the task
of understanding its power by relating it to the well-studied resolution proof
system. In particular, we show that with a new learning scheme, CL can provide
exponentially shorter proofs than many proper refinements of general resolution
(RES) satisfying a natural property. These include regular and Davis-Putnam
resolution, which are already known to be much stronger than ordinary DPLL. We
also show that a slight variant of CL with unlimited restarts is as powerful as
RES itself. Translating these analytical results to practice, however, presents
a challenge because of the nondeterministic nature of clause learning
algorithms. We propose a novel way of exploiting the underlying problem
structure, in the form of a high level problem description such as a graph or
PDDL specification, to guide clause learning algorithms toward faster
solutions. We show that this leads to exponential speed-ups on grid and
randomized pebbling problems, as well as substantial improvements on certain
ordering formulas
Efficient Certified Resolution Proof Checking
We present a novel propositional proof tracing format that eliminates complex
processing, thus enabling efficient (formal) proof checking. The benefits of
this format are demonstrated by implementing a proof checker in C, which
outperforms a state-of-the-art checker by two orders of magnitude. We then
formalize the theory underlying propositional proof checking in Coq, and
extract a correct-by-construction proof checker for our format from the
formalization. An empirical evaluation using 280 unsatisfiable instances from
the 2015 and 2016 SAT competitions shows that this certified checker usually
performs comparably to a state-of-the-art non-certified proof checker. Using
this format, we formally verify the recent 200 TB proof of the Boolean
Pythagorean Triples conjecture
Parameterized complexity of DPLL search procedures
We study the performance of DPLL algorithms on parameterized problems. In particular, we investigate how difficult it is to decide whether small solutions exist for satisfiability and other combinatorial problems. For this purpose we develop a Prover-Delayer game which models the running time of DPLL procedures and we establish an information-theoretic method to obtain lower bounds to the running time of parameterized DPLL procedures. We illustrate this technique by showing lower bounds to the parameterized pigeonhole principle and to the ordering principle. As our main application we study the DPLL procedure for the problem of deciding whether a graph has a small clique. We show that proving the absence of a k-clique requires n steps for a non-trivial distribution of graphs close to the critical threshold. For the restricted case of tree-like Parameterized Resolution, this result answers a question asked in [11] of understanding the Resolution complexity of this family of formulas
Towards Verifying Nonlinear Integer Arithmetic
We eliminate a key roadblock to efficient verification of nonlinear integer
arithmetic using CDCL SAT solvers, by showing how to construct short resolution
proofs for many properties of the most widely used multiplier circuits. Such
short proofs were conjectured not to exist. More precisely, we give n^{O(1)}
size regular resolution proofs for arbitrary degree 2 identities on array,
diagonal, and Booth multipliers and quasipolynomial- n^{O(\log n)} size proofs
for these identities on Wallace tree multipliers.Comment: Expanded and simplified with improved result
Resolution Trees with Lemmas: Resolution Refinements that Characterize DLL Algorithms with Clause Learning
Resolution refinements called w-resolution trees with lemmas (WRTL) and with
input lemmas (WRTI) are introduced. Dag-like resolution is equivalent to both
WRTL and WRTI when there is no regularity condition. For regular proofs, an
exponential separation between regular dag-like resolution and both regular
WRTL and regular WRTI is given.
It is proved that DLL proof search algorithms that use clause learning based
on unit propagation can be polynomially simulated by regular WRTI. More
generally, non-greedy DLL algorithms with learning by unit propagation are
equivalent to regular WRTI. A general form of clause learning, called
DLL-Learn, is defined that is equivalent to regular WRTL.
A variable extension method is used to give simulations of resolution by
regular WRTI, using a simplified form of proof trace extensions. DLL-Learn and
non-greedy DLL algorithms with learning by unit propagation can use variable
extensions to simulate general resolution without doing restarts.
Finally, an exponential lower bound for WRTL where the lemmas are restricted
to short clauses is shown
Transition Systems for Model Generators - A Unifying Approach
A fundamental task for propositional logic is to compute models of
propositional formulas. Programs developed for this task are called
satisfiability solvers. We show that transition systems introduced by
Nieuwenhuis, Oliveras, and Tinelli to model and analyze satisfiability solvers
can be adapted for solvers developed for two other propositional formalisms:
logic programming under the answer-set semantics, and the logic PC(ID). We show
that in each case the task of computing models can be seen as "satisfiability
modulo answer-set programming," where the goal is to find a model of a theory
that also is an answer set of a certain program. The unifying perspective we
develop shows, in particular, that solvers CLASP and MINISATID are closely
related despite being developed for different formalisms, one for answer-set
programming and the latter for the logic PC(ID).Comment: 30 pages; Accepted for presentation at ICLP 2011 and for publication
in Theory and Practice of Logic Programming; contains the appendix with
proof