Results 1 -
8 of
8
Delayed theory combination vs. Nelson-Oppen for satisfiability modulo theories: A comparative analysis
- IN PROC. LPAR’06, VOLUME 4246 OF LNAI
, 2006
"... Many approaches for Satisfiability Modulo Theory (SMT(T)) rely on the integration between a SAT solver and a decision procedure for sets of literals in the background theory T (T-solver). When T is the combination T1 ∪ T2 of two simpler theories, the approach is typically handled by means of Nelson- ..."
Abstract
-
Cited by 15 (6 self)
- Add to MetaCart
Many approaches for Satisfiability Modulo Theory (SMT(T)) rely on the integration between a SAT solver and a decision procedure for sets of literals in the background theory T (T-solver). When T is the combination T1 ∪ T2 of two simpler theories, the approach is typically handled by means of Nelson-Oppen’s (NO) theory combination schema in which two specific T-solvers deduce and exchange (disjunctions of) interface equalities. In recent papers we have proposed a new approach to SMT(T1 ∪ T2), called Delayed Theory Combination (DTC). Here part or all the (possibly very expensive) task of deducing interface equalities is played by the SAT solver itself, at the potential cost of an enlargement of the boolean search space. In principle this enlargement could be up to exponential in the number of interface equalities generated. In this paper we show that this estimate was too pessimistic. We present a comparative analysis of DTC vs. NO for SMT(T1 ∪T2), which shows that, using stateof-the-art SAT-solving techniques, the amount of boolean branches performed by DTC can be upper bounded by the number of deductions and boolean branches performed by NO on the same problem. We prove the result for different deduction capabilities of the T-solvers and for both convex and non-convex theories.
Deciding Effectively Propositional Logic using DPLL and substitution sets
"... We introduce a DPLL calculus that is a decision procedure for the Bernays-Schönfinkel class, also known as EPR. Our calculus allows combining techniques for efficient propositional search with datastructures, such as Binary Decision Diagrams, that can efficiently and succinctly encode finite sets o ..."
Abstract
-
Cited by 9 (2 self)
- Add to MetaCart
We introduce a DPLL calculus that is a decision procedure for the Bernays-Schönfinkel class, also known as EPR. Our calculus allows combining techniques for efficient propositional search with datastructures, such as Binary Decision Diagrams, that can efficiently and succinctly encode finite sets of substitutions and operations on these. In the calculus, clauses comprise of a sequence of literals together with a finite set of substitutions; truth assignments are also represented using substitution sets. The calculus works directly at the level of sets, and admits performing parallel constraint propagation and decisions, resulting in potentially exponential speedups over existing approaches.
Cutting to the Chase Solving Linear Integer Arithmetic
"... Abstract. We describe a new algorithm for solving linear integer programming problems. The algorithm performs a DPLL style search for a feasible assignment, while using a novel cut procedure to guide the search away from the conflicting states. 1 ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
Abstract. We describe a new algorithm for solving linear integer programming problems. The algorithm performs a DPLL style search for a feasible assignment, while using a novel cut procedure to guide the search away from the conflicting states. 1
Theory decision by decomposition
, 2008
"... The topic of this article is decision procedures for satisfiability modulo theories (SMT) of arbitrary quantifier-free formulæ. We propose an approach that decomposes the formula in such a way that its definitional part, including the theory, can be compiled by a rewrite-based firstorder theorem pro ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
The topic of this article is decision procedures for satisfiability modulo theories (SMT) of arbitrary quantifier-free formulæ. We propose an approach that decomposes the formula in such a way that its definitional part, including the theory, can be compiled by a rewrite-based firstorder theorem prover, and the residual problem can be decided by an SMT-solver, based on the Davis-Putnam-Logemann-Loveland procedure. The resulting decision by stages mechanism may unite the complementary strengths of first-order provers and SMT-solvers. We demonstrate its practicality by giving decision procedures for the theories of records, integer offsets and arrays, with or without extensionality, and for combinations including such theories.
Formalization and Implementation of Modern SAT Solvers
"... Most, if not all, state-of-the-art complete SAT solvers are complex variations of the DPLL procedure described in the early 1960’s. Published descriptions of these modern algorithms and related data structures are given either as high-level (rule-based) transition systems or, informally, as (pseudo) ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Most, if not all, state-of-the-art complete SAT solvers are complex variations of the DPLL procedure described in the early 1960’s. Published descriptions of these modern algorithms and related data structures are given either as high-level (rule-based) transition systems or, informally, as (pseudo) programming language code. The former, although often accompanied with (informal) correctness proofs, are usually very abstract and do not specify many details crucial for efficient implementation. The latter usually do not involve any correctness argument and the given code is often hard to understand and modify. This paper aims at bridging this gap: we present SAT solving algorithms that are formally proved correct, but at the same time they contain information required for efficient implementation. We use a tutorial, top-down, approach and develop a SAT solver, starting from a simple design that is subsequently extended, step-by-step, with the requisite series of features. Heuristic parts of the solver are abstracted away, since they usually do not affect solver correctness (although they are very important for efficiency). All algorithms are given in pseudo-code. The code is accompanied with correctness conditions, given in Hoare logic style. Correctness proofs are formalized within the Isabelle theorem proving system and are available in the extended version of this paper. The given pseudo-code served as a basis for our SAT solver argo-sat.
Solving Non-Linear Arithmetic
"... Abstract. We present a new algorithm for deciding satisfiability of nonlinear arithmetic constraints. The algorithm performs a Conflict-Driven Clause Learning (CDCL)-style search for a feasible assignment, while using projection operators adapted from cylindrical algebraic decomposition to guide the ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Abstract. We present a new algorithm for deciding satisfiability of nonlinear arithmetic constraints. The algorithm performs a Conflict-Driven Clause Learning (CDCL)-style search for a feasible assignment, while using projection operators adapted from cylindrical algebraic decomposition to guide the search away from the conflicting states. 1
Formal Verification of a Modern SAT Solver
, 2009
"... We present a formalization and a formal total correctness proof of a MiniSATlike SAT solver within the system Isabelle/HOL. The solver is based on the DPLL procedure and employs most state-of-the art SAT solving techniques, including the conflict-guided backjumping, clause learning, and the two-watc ..."
Abstract
- Add to MetaCart
We present a formalization and a formal total correctness proof of a MiniSATlike SAT solver within the system Isabelle/HOL. The solver is based on the DPLL procedure and employs most state-of-the art SAT solving techniques, including the conflict-guided backjumping, clause learning, and the two-watch unit propagation scheme. A shallow embedding into HOL is used and the solver is expressed as a set of recursive HOL functions. Based on this specification, the Isabelle’s built-in code generator can be used to generate executable code in several supported functional languages (Haskell, SML, and OCaml). The SAT solver implemented in this way is, to our knowledge, the first fully formally and mechanically verified modern SAT solver.
SMT Beyond DPLL(T): A New Approach to Theory Solvers and Theory Combination
, 2012
"... Satisifiability modulo theories (smt) is the problem of deciding whether a given logical formula can be satisifed with respect to a combination of background theories. The past few decades have seen many significant developments in the field, including fast Boolean satisfiability solvers (sat), effi ..."
Abstract
- Add to MetaCart
Satisifiability modulo theories (smt) is the problem of deciding whether a given logical formula can be satisifed with respect to a combination of background theories. The past few decades have seen many significant developments in the field, including fast Boolean satisfiability solvers (sat), efficient decision procedures for a growing number of expressive theories, and frameworks for modular combination of decision procedures. All these improvements, with addition of robust smt solver implementations, culminated with the acceptance of smt as a standard tool in the fields of automated reasoning and computer added verification. In this thesis we develop new decision procedures for the theory of linear integer arithmetic and the theory of non-linear real arithmetic, and develop a new general framework for combination of decision procedures. The new decision procedures integrate theory specific reasoning and the Boolean search to provide a more powerful and efficient procedures, and allow a more expressive language for explaining problematic states. The new framework for combination of decision procedures overcomes the complexity limitations and restrictions on the theories imposed by the standard Nelson-Oppen approach. iii Acknowledgments

