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

Slides:



Advertisements
Similar presentations
Automated Theorem Proving Lecture 1. Program verification is undecidable! Given program P and specification S, does P satisfy S?
Advertisements

Time-Space Tradeoffs in Resolution: Superpolynomial Lower Bounds for Superlinear Space Chris Beck Princeton University Joint work with Paul Beame & Russell.
Chaff: Engineering an Efficient SAT Solver Matthew W.Moskewicz, Concor F. Madigan, Ying Zhao, Lintao Zhang, Sharad Malik Princeton University Presenting:
1 Finite Constraint Domains. 2 u Constraint satisfaction problems (CSP) u A backtracking solver u Node and arc consistency u Bounds consistency u Generalized.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
UIUC CS 497: Section EA Lecture #2 Reasoning in Artificial Intelligence Professor: Eyal Amir Spring Semester 2004.
Proofs from SAT Solvers Yeting Ge ACSys NYU Nov
Methods of Proof Chapter 7, second half.. Proof methods Proof methods divide into (roughly) two kinds: Application of inference rules: Legitimate (sound)
Timed Automata.
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.
Properties of SLUR Formulae Ondřej Čepek, Petr Kučera, Václav Vlček Charles University in Prague SOFSEM 2012 January 23, 2012.
Efficient Query Evaluation on Probabilistic Databases
Plan for today Proof-system search ( ` ) Interpretation search ( ² ) Quantifiers Equality Decision procedures Induction Cross-cutting aspectsMain search.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
Nikolaj Bjørner Microsoft Research Lecture 3. DayTopicsLab 1Overview of SMT and applications. SAT solving, Z3 Encoding combinatorial problems with Z3.
Heuristics for Efficient SAT Solving As implemented in GRASP, Chaff and GSAT.
1 Deciding separation formulas with SAT Ofer Strichman Sanjit A. Seshia Randal E. Bryant School of Computer Science, Carnegie Mellon University.
Presented by Ed Clarke Slides borrowed from P. Chauhan and C. Bartzis
Constraint Satisfaction Problems
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.
1 Satisfiability Checking of Non-clausal Formulas using General Matings Himanshu Jain Constantinos Bartzis Edmund Clarke Carnegie Mellon University.
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.
Last time Proof-system search ( ` ) Interpretation search ( ² ) Quantifiers Equality Decision procedures Induction Cross-cutting aspectsMain search strategy.
1 CS 4700: Foundations of Artificial Intelligence Carla P. Gomes Module: Satisfiability (Reading R&N: Chapter 7)
1 Abstraction Refinement for Bounded Model Checking Anubhav Gupta, CMU Ofer Strichman, Technion Highly Jet Lagged.
1 A propositional world Ofer Strichman School of Computer Science, Carnegie Mellon University.
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.
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
Daniel Kroening and Ofer Strichman 1 Decision Procedures in First Order Logic Decision Procedures for Equality Logic Range Allocation.
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.
Constraint Satisfaction Problems (CSPs) CPSC 322 – CSP 1 Poole & Mackworth textbook: Sections § Lecturer: Alan Mackworth September 28, 2012.
Introduction to Satisfiability Modulo Theories
MathCheck: A Math Assistant Combining SAT with Computer Algebra Systems Ed Zulkoski, Vijay Ganesh, Krzysztof Czarnecki University of Waterloo August 7,
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View BDDs.
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View BDDs.
Nikolaj Bjørner Microsoft Research DTU Winter course January 2 nd 2012 Organized by Flemming Nielson & Hanne Riis Nielson.
1 First order theories (Chapter 1, Sections 1.4 – 1.5) From the slides for the book “Decision procedures” by D.Kroening and O.Strichman.
Heuristics for Efficient SAT Solving As implemented in GRASP, Chaff and GSAT.
SAT Solving As implemented in - DPLL solvers: GRASP, Chaff and
Inference in Propositional Logic (and Intro to SAT) CSE 473.
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View Basic Concepts and Background.
Finding Conflicting Instances of Quantified Formulas in SMT Andrew Reynolds Cesare Tinelli Leonardo De Moura July 18, 2014.
Proof Methods for Propositional Logic CIS 391 – Intro to Artificial Intelligence.
1 A framework for eager encoding Daniel Kroening ETH, Switzerland Ofer Strichman Technion, Israel (Executive summary) (submitted to: Formal Aspects of.
Knowledge Repn. & Reasoning Lecture #9: Propositional Logic UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2005.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
Satisfiability Modulo Theories and DPLL(T) Andrew Reynolds March 18, 2015.
Heuristics for Efficient SAT Solving As implemented in GRASP, Chaff and GSAT.
Automatic Test Generation
Chap 10. Sensitivity Analysis
Inference and search for the propositional satisfiability problem
Chao Wang, Aarti Gupta, Malay Ganai NEC Laboratories America
Computability and Complexity
A theory-based decision heuristic for DPLL(T)
Heuristics for Efficient SAT Solving
Mining backbone literals in incremental SAT
Decision Procedures An Algorithmic Point of View
A Progressive Approach for Satisfiability Modulo Theories
Decision heuristics based on an Abstraction/Refinement model
GRASP-an efficient SAT solver
Presentation transcript:

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

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

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

4 Theory propagation Matters for efficiency, not correctness. Depending on the theory, the best strategy can be:  One T-implication at a time  All possible T-implications (“exhaustive theory-propagation”).  Cheap-to-compute T-implications

5 In this work we are interested in Linear Arithmetic ( LA ) We will see:  The potential of theory propagation  Why doesn’t it work today  How can it be approximated efficiently Theory propagation for LA

6 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 R d. An arrangement in d =2: # cells · n d

7 A geometric interpretation Consider a consistent partial assignment of size r.  e.g. assignment to ( l 1, l 2, l 3 ), hence r =3. How many such T-implications are there ? l1l1 l4l4 current partial assignment (1,0,0) n = 6 r = 3 l5l5 T-Implied

8 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/r c ). 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: , 1987.

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

10 Theory propagation for LA Let l 1, l 2, l 3 be asserted. Is l 4 (or : l 4 ) T-implied ? Two techniques for finding T-implications. 1. “Plunging”: check satisfiability of ( l 1 Æ l 2 Æ l 3 Æ l 4 ) and of ( l 1 Æ l 2 Æ l 3 Æ : l 4 ) 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

11 Theory propagation for LA Let l 1, l 2, l 3 be asserted. Is l 4 (or : l 4 ) T-implied ? Two techniques for finding T-implications. 2. Check if all vertices on the same side of l 4 There is an exponential number of vertices. Too expensive in practice.

12 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

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

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

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

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

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

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

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

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

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

22 Problem 2: conjecturing T-implications The assignment  maintained by general Simplex is updated after each partial (Boolean) assignment   Based on simple constraints only. Several possibilities:  is T-inconsistent  is T-consistent  doesn’t satisfy it  is T-consistent  satisfies it 22%

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

24 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.

25 0-pivot vs. Minisat MiniSat

26 Back to the future # of cells is exponential in d rather than exponential in n  n d rather than 2 n   for n sufficiently larger than d, better worst-case complexity SMT-LIB + SRI’s GDP benchmarks Examples: n : d  QF_RDL_SCHEDULING 10.9: 1  QF_RDL_SAL6.7 : 1  QF_LRA_SC 3.9 : 1  QF_LRA_START_UP 6.9 : 1  QF_LRA_UART6.1 : 1  QF_LRA_CLOCK_SYNCH 3.3 : 1  QF_LRA_SPIDER_BENCHMARKS 3.2 : 1  QF_LRA_SAL6.1 : 1  MathSAT benchmarks (difference logic) 44.5: 1  SEP benchmarks (difference logic)17: 1

27 P#2: 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 T-solver SAT

28 How can we enumerate the cells ? There exists a data structure (“incidence graph”) that represents the linear arrangement Too large in practice…  Corresponds to an explicit representation of the search space.  Constructing a symbolic representation seems as hard as building the arrangement. For two years we worked on a random, incremental algorithm, each time adding a constraint and consulting SAT. The short summary: we were unable to beat Yices…

29 Summary We showed how to use ‘free’ information computed by general simplex in order to improve SAT’s decision.  Somewhat compensates on the fact that there is no theory propagation. Future research:  How can we let the theory lead efficiently ?

30 How many T-implications are there ? Let p be a polygon defined by a (consistent) assignment to r, ( r · n ), hyperplanes Theorem 1: O(( n ¢ log r ) / r ) of the remaining constraints intersect the cell [HW87] with high probability (1 - 1/r c ). In practice, less constraints are implied:  Due to the constant in O  Assignments and predicates are not random  Most decisions are made in low decision levels. [HW87] D. Haussler and E. Welzl. Epsilon-nets and simplex range queries. Comput. Geom., 2: , 1987.

31 Let’s summarize our failed attempts… For two years we worked on a random algorithm:  Choose randomly r constraints.  Build the corresponding arrangement H ( r ).  Now each cell corresponds to a partial assignment.  Together with BCP may lead to a conflict.  Otherwise – need to refine.  … The short summary: we could never beat Yices.