A theory-based decision heuristic for DPLL(T)

Slides:



Advertisements
Similar presentations
SMELS: Sat Modulo Equality with Lazy Superposition Christopher Lynch – Clarkson Duc-Khanh Tran - MPI.
Advertisements

The behavior of SAT solvers in model checking applications K. L. McMillan Cadence Berkeley Labs.
Exploiting SAT solvers in unbounded model checking
Presented by Monissa Mohan 1.  A highly optimized BCP algorithm  Two watched literals  Fast Backtracking  Efficient Decision Heuristic  Focused on.
Chaff: Engineering an Efficient SAT Solver Matthew W.Moskewicz, Concor F. Madigan, Ying Zhao, Lintao Zhang, Sharad Malik Princeton University Presenting:
1 Local Restarts in SAT Solvers Vadim Ryvchin and Ofer Strichman Technion, Haifa, Israel.
Introduction to MiniSat v1.14 Presented by Yunho Kim Provable Software Lab, KAIST.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
Proofs from SAT Solvers Yeting Ge ACSys NYU Nov
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View SAT.
1/30 SAT Solver Changki PSWLAB SAT Solver Daniel Kroening, Ofer Strichman.
1 Backdoor Sets in SAT Instances Ryan Williams Carnegie Mellon University Joint work in IJCAI03 with: Carla Gomes and Bart Selman Cornell University.
IBM Labs in Haifa © 2005 IBM Corporation Adaptive Application of SAT Solving Techniques Ohad Shacham and Karen Yorav Presented by Sharon Barner.
SAT and Model Checking. Bounded Model Checking (BMC) A.I. Planning problems: can we reach a desired state in k steps? Verification of safety properties:
Plan for today Proof-system search ( ` ) Interpretation search ( ² ) Quantifiers Equality Decision procedures Induction Cross-cutting aspectsMain search.
Nikolaj Bjørner Microsoft Research Lecture 3. DayTopicsLab 1Overview of SMT and applications. SAT solving, Z3 Encoding combinatorial problems with Z3.
Presented by Ed Clarke Slides borrowed from P. Chauhan and C. Bartzis
GRASP-an efficient SAT solver Pankaj Chauhan. 6/19/ : GRASP and Chaff2 What is SAT? Given a propositional formula in CNF, find an assignment.
Efficient SAT Solving for Non- clausal Formulas using DPLL, Graphs, and Watched-cuts Himanshu Jain Edmund M. Clarke.
State-of-the-art in SAT solvers
GRASP SAT solver Presented by Constantinos Bartzis Slides borrowed from Pankaj Chauhan J. Marques-Silva and K. Sakallah.
1 A theory-based decision heuristic for DPLL(T) Dan Goldwasser Ofer Strichman Shai Fine Haifa university TechnionIBM-HRL.
Last time Proof-system search ( ` ) Interpretation search ( ² ) Quantifiers Equality Decision procedures Induction Cross-cutting aspectsMain search strategy.
1 Abstraction Refinement for Bounded Model Checking Anubhav Gupta, CMU Ofer Strichman, Technion Highly Jet Lagged.
SAT Solving Presented by Avi Yadgar. The SAT Problem Given a Boolean formula, look for assignment A for such that.  A is a solution for. A partial assignment.
On Solving Presburger and Linear Arithmetic with SAT Ofer Strichman Carnegie Mellon University.
1 Linear-time Reductions of Resolution Proofs Omer Bar-Ilan Oded Fuhrmann Shlomo Hoory Ohad Shacham Ofer Strichman Technion.
Daniel Kroening and Ofer Strichman Decision Procedures An Algorithmic Point of View Deciding ILPs with Branch & Bound ILP References: ‘Integer Programming’
Decision Procedures An Algorithmic Point of View
CP Summer School Modelling for Constraint Programming Barbara Smith 1.Definitions, Viewpoints, Constraints 2.Implied Constraints, Optimization,
1 Decision Procedures for Linear Arithmetic Presented By Omer Katz 01/04/14 Based on slides by Ofer Strichman.
Boolean Satisfiability and SAT Solvers
SAT and SMT solvers Ayrat Khalimov (based on Georg Hofferek‘s slides) AKDV 2014.
Solvers for the Problem of Boolean Satisfiability (SAT) Will Klieber Aug 31, 2011 TexPoint fonts used in EMF. Read the TexPoint manual before you.
1 Agenda Modeling problems in Propositional Logic SAT basics Decision heuristics Non-chronological Backtracking Learning with Conflict Clauses SAT and.
Parallelizing MiniSat I-Ting Angelina Lee Justin Zhang May 05, Final Project Presentation.
Constraint Satisfaction CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
Lazy Annotation for Program Testing and Verification Speaker: Chen-Hsuan Adonis Lin Advisor: Jie-Hong Roland Jiang November 26,
Solving Non-linear Arithmetic Dejan Jovanovic and Leonadro de Moura Presented by Boris Trayvas.
Chapter 5 Constraint Satisfaction Problems
Maximum Density Still Life Symmetries and Lazy Clause Generation Geoffrey Chu, Maria Garcia de la Banda, Chris Mears, Peter J. Stuckey.
Nikolaj Bjørner Microsoft Research DTU Winter course January 2 nd 2012 Organized by Flemming Nielson & Hanne Riis Nielson.
Heuristics for Efficient SAT Solving As implemented in GRASP, Chaff and GSAT.
Satisfiability and SAT Solvers CS 270 Math Foundations of CS Jeremy Johnson.
SAT Solving As implemented in - DPLL solvers: GRASP, Chaff and
Finding Conflicting Instances of Quantified Formulas in SMT Andrew Reynolds Cesare Tinelli Leonardo De Moura July 18, 2014.
1 A framework for eager encoding Daniel Kroening ETH, Switzerland Ofer Strichman Technion, Israel (Executive summary) (submitted to: Formal Aspects of.
Satisfiability Modulo Theories and DPLL(T) Andrew Reynolds March 18, 2015.
Heuristics for Efficient SAT Solving As implemented in GRASP, Chaff and GSAT.
© 2012 IBM Corporation Perfect Hashing and CNF Encodings of Cardinality Constraints Yael Ben-Haim Alexander Ivrii Oded Margalit Arie Matsliah SAT 2012.
Automatic Test Generation
Inference in Propositional Logic (and Intro to SAT)
Hybrid BDD and All-SAT Method for Model Checking
Chap 10. Sensitivity Analysis
Inference and search for the propositional satisfiability problem
Lecture 3.
Chao Wang, Aarti Gupta, Malay Ganai NEC Laboratories America
Computability and Complexity
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Introduction to Software Verification
Heuristics for Efficient SAT Solving
Mining backbone literals in incremental SAT
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Complexity 6-1 The Class P Complexity Andrei Bulatov.
Decision Procedures An Algorithmic Point of View
A Progressive Approach for Satisfiability Modulo Theories
Stronger learning and higher backjumping
Decision heuristics based on an Abstraction/Refinement model
GRASP-an efficient SAT solver
Faster Extraction of High-Level Minimal Unsatisfiable Cores
Presentation transcript:

A theory-based decision heuristic for DPLL(T) Dan Goldwasser Ofer Strichman Shai Fine Haifa university Technion IBM-HRL

DPLL Decide SAT Backtrack Analyze BCP conflict UNSAT full assignment partial assignment Backtrack BCP conflict Analyze conflict UNSAT

DPLL(T) Decide SAT Backtrack BCP Analyze conflict UNSAT Deduction full assignment SAT partial assignment Backtrack BCP conflict Analyze conflict UNSAT Deduction Add Clauses T-propagation / T-conflict

Theory propagation Matters for efficiency, not correctness. Depending on the theory, the best strategy can be: No T-implications One T-implication at a time All possible T-implications (“exhaustive theory-propagation”). Cheap-to-compute T-implications … In the case of Linear Real Arithmetic (LRA) … None.

Outline We will see: The potential of theory propagation Why doesn’t it work today How can it be approximated efficiently Speculations: can the theory lead the way ?

A geometric interpretation Let H be a finite set of hyperplanes in d dimensions. Let n = |H| An arrangement of H, denoted A(H), is a partition of Rd. An arrangement in d=2: # cells · O(nd)

A geometric interpretation Consider a consistent partial assignment of size r. e.g. assignment to (l1,l2,l3), hence r =3. How many such T-implications are there ? r = 3 l4 l5 l1 (1,0,0) current partial assignment T-Implied

A geometric interpretation Consider a consistent partial assignment of size r . Theorem 1: O((n ¢ log r) /r) of the remaining constraints intersect the cell [HW87] with high probability (1 - 1/rc). Some example numbers: r = 3, ~47% of the remaining constraints are implied. r = 12, ~70% of the remaining constraints are implied. r = 60, ~90% of the remaining constraints are implied. [HW87] D. Haussler and E. Welzl. Epsilon-nets and simplex range queries. Comput. Geom., 2:127- 151, 1987.

Assigned vs. implied in practice Two benchmarks. Measured averages at T-consistent points

Theory propagation for LRA Let l1, l2, l3 be asserted. Is l4 (or :l4) T-implied ? Two techniques for finding T-implications. “Plunging”: check satisfiability of (l1 Æ l2 Æ l3 Æ l4) and of (l1 Æ l2 Æ l3 Æ :l4) Requires solving a linear system. Too expensive in practice (see e.g. [DdM06]). [DdM06] Integrating simplex with DPLL(T), Dutertre and De Moura, SRI-CSL-06-01

Theory propagation for LRA Let l1, l2, l3 be asserted. Is l4 (or :l4) T-implied ? Two techniques for finding T-implications. Check if all vertices on the same side of l4 There is an exponential number of vertices. Too expensive in practice.

Approximating theory propagation Problem 1: How can we use conjectured information without losing soundness ? Problem 2: how can we find (cheaply) good conjectures i.e., conjectured T-implications

Problem 1: how to use conjectures ? We use conjectured implications just to bias decisions. SAT chooses a variable to decide, we conjecture its value. SAT’s heuristics are T-ignorant.

Problem 2: conjecturing T-implications We examined two methods: k - vertices Find k-vertices. If they are all on the same side of l4 – conjecture that l4 is implied. In this case we conjecture :l4 l4

Problem 2: conjecturing T-implications We examined two methods: k - vertices Find k-vertices. If they are all on the same side of l4 – conjecture that l4 is implied. In this case we conjecture nothing l4

Problem 2: conjecturing T-implications We examined two methods: k - vertices Find k-vertices. If they are all on the same side of l4 – conjecture that l4 is implied. In this case we (falsely) conjecture l4 l4

Problem 2: conjecturing T-implications We examined two methods: k - vertices Find k-vertices. If they are all on the same side of l4 – conjecture that l4 is implied. Too expensive in practice

Problem 2: conjecturing T-implications We examined two methods: One approximated point Here we always conjecture a T-implication. l4

Problem 2: conjecturing T-implications We examined two methods: One approximated point Here we always conjecture a T-implication. l4

Problem 2: conjecturing T-implications We examined two methods: One approximated point Here we always conjecture a T-implication. l4

Problem 2: conjecturing T-implications We examined two methods: One approximated point The idea: use the assignment maintained by Simplex. It’s for free. l4

Problem 2: conjecturing T-implications We examined two methods: One approximated point The idea: use the assignment maintained by Simplex. It’s for free. Competitive SMT solvers Do not activate (general) Simplex after each assignment They only update the assignment  according to the ‘simple’ constraints (e.g. “x < c”).

Problem 2: conjecturing T-implications Several possibilities: 22%  is T-consistent  doesn’t satisfy it  is T-consistent  satisfies it  is T-inconsistent

Problem 2: conjecturing T-implications Our hope:  is ‘close’ to the polygon. Therefore it can be successful in guessing implications. Even if l4 is not T-implied,  can guide the search. l4

Results Some results for the 200 benchmarks from SMT-COMP’07 Implementation on top of ArgoLib Each column refers to a different strategy of choosing the value.

0-pivot vs. Minisat MiniSat

The bigger picture # of cells is exponential in d rather than exponential in n nd rather than 2n In the SMT-LIB benchmark set, on average n = 10 d. Let n = k*d. k is the ratio we are looking for, beyond which 2^n is larger. We can extract k from 2^{kd} > (kd)^d. we get 2^k > dk. This shows that, e.g. for d = 2^8, the ratio k should be 11 (that is, 11:1). I don’t know d for these benchmarks, but if it is around 2^7 – 2^8, it seems that what we get is that in these benchmarks it is about balanced. But this doesn’t account for the fact that the matrices are sparde, and hence there are less than n^d.

A reversed lazy approach ? Current SAT-based ‘lazy’ approaches Search the Boolean domain  check assignment in the theory domain A ‘reversed lazy approach’: Search the theory domain  check assignment in the Boolean domain SAT T-solver

Summary We studied LRA from the perspective of computational geometry. We showed efficient (approximated) theory propagation. We showed how approximated information can be used safely. Future research: How can we let the theory lead the search ?