On the Power of Clause-Learning SAT Solvers with Restarts

Slides:



Advertisements
Similar presentations
Automated abstraction refinement II Heuristic aspects Ken McMillan Cadence Berkeley Labs.
Advertisements

The behavior of SAT solvers in model checking applications K. L. McMillan Cadence Berkeley Labs.
Exploiting SAT solvers in unbounded model checking
Exploiting SAT solvers in unbounded model checking K. L. McMillan Cadence Berkeley Labs.
Automated Theorem Proving
Time-Space Tradeoffs in Resolution: Superpolynomial Lower Bounds for Superlinear Space Chris Beck Princeton University Joint work with Paul Beame & Russell.
The Project Problem formulation (one page) Literature review –“Related work" section of final paper, –Go to writing center, –Present paper(s) to class.
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.
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.
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.
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:
Proof-based Abstraction Presented by Roman Gershman Ken McMillan, Nina Amla.
Hrinking hrinking A signment tack tack. Agenda Introduction Algorithm Description Heuristics Experimental Results Conclusions.
(a = 0)  (c = 0)  (f = 0)  (  = 0)  = (a + b)(¬b + c + d) (¬b + e)(¬d + ¬e + f)  Clause Recording During backtrack search, for each conflict create.
Boolean Satisfiability Solvers Wonhong Nam
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.
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.
Search in the semantic domain. Some definitions atomic formula: smallest formula possible (no sub- formulas) literal: atomic formula or negation of an.
Last time Proof-system search ( ` ) Interpretation search ( ² ) Quantifiers Equality Decision procedures Induction Cross-cutting aspectsMain search strategy.
1 Understanding the Power of Clause Learning Ashish Sabharwal, Paul Beame, Henry Kautz University of Washington, Seattle IJCAI ConferenceAug 14, 2003.
SAT Algorithms in EDA Applications Mukul R. Prasad Dept. of Electrical Engineering & Computer Sciences University of California-Berkeley EE219B Seminar.
MiniSAT: World fastest SAT solver (2005 and 2006) Niklas Sorensson, Niklas Een and Armin Biere Some slides are from Niklas Sorensson presentation Presented.
1 Abstraction Refinement for Bounded Model Checking Anubhav Gupta, CMU Ofer Strichman, Technion Highly Jet Lagged.
1 Paul Beame University of Washington Phase Transitions in Proof Complexity and Satisfiability Search Dimitris Achlioptas Michael Molloy Microsoft Research.
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.
SAT Solver Math Foundations of Computer Science. 2 Boolean Expressions  A Boolean expression is a Boolean function  Any Boolean function can be written.
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.
Parallelizing MiniSat I-Ting Angelina Lee Justin Zhang May 05, Final Project Presentation.
Boolean Satisfiability Present and Future
SAT 2009 Ashish Sabharwal Backdoors in the Context of Learning (short paper) Bistra Dilkina, Carla P. Gomes, Ashish Sabharwal Cornell University SAT-09.
Nikolaj Bjørner Microsoft Research DTU Winter course January 2 nd 2012 Organized by Flemming Nielson & Hanne Riis Nielson.
SAT Solver Heuristics. SAT-solver History Started with David-Putnam-Logemann-Loveland (DPLL) (1962) –Able to solve variable problems Satz (Chu Min.
Satisfiability and SAT Solvers CS 270 Math Foundations of CS Jeremy Johnson.
SAT Solving As implemented in - DPLL solvers: GRASP, Chaff and
Inference in Propositional Logic (and Intro to SAT) CSE 473.
A Decision-Making Procedure for Resolution-Based SAT-solvers Eugene Goldberg Cadence Research Labs (USA) SAT-2008, Guangzhou, P.R. China.
Heuristics for Efficient SAT Solving As implemented in GRASP, Chaff and GSAT.
Inference in Propositional Logic (and Intro to SAT)
Hardware Acceleration of A Boolean Satisfiability Solver
Knot Pipatsrisawat and Adnan Darwiche Computer Science Department UCLA
Inference and search for the propositional satisfiability problem
Gábor Kusper University of Linz RISC Austria
Introduction to Software Verification
Logic Synthesis CNF Satisfiability.
Simple Circuit-Based SAT Solver
NP-Completeness Yin Tat Lee
Intro to Theory of Computation
Heuristics for Efficient SAT Solving
Introduction to the Boolean Satisfiability Problem
ECE 667 Synthesis and Verification of Digital Circuits
Unit Propagation and Variable Ordering in MiniSAT
Decision Procedures An Algorithmic Point of View
CS 416 Artificial Intelligence
A Progressive Approach for Satisfiability Modulo Theories
Resolution Proofs for Combinational Equivalence
Introduction to the Boolean Satisfiability Problem
NP-Completeness Yin Tat Lee
Gábor Kusper  Research Institute for Symbolic Computation (RISC-Linz)
Canonical Computation without Canonical Data Structure
Stronger learning and higher backjumping
GRASP-an efficient SAT solver
Presentation transcript:

On the Power of Clause-Learning SAT Solvers with Restarts Knot Pipatsrisawat and Adnan Darwiche Computer Science Department UCLA CP-09

Boolean Satisfiability (SAT) Conjunctive Normal Form (CNF) (AvBvC) (~AvDvE) (~DvF) (~CvDvGvH) … clauses

CL SAT Solvers and Resolution Clause-learning SAT solvers Resolution Refutation proof of  UNSAT CNF   = C1, C2, C3, …, Ci, …, CN-1, false Clauses from CNF  Empty clause

CL SAT Solvers and Resolution Clause-learning SAT solvers Resolution Refutation proof of  UNSAT problem  resolution (YvZvX) (~XvWvV)  = C1, C2, C3, …, Ci, …, CN-1, false (YvZvWvV) Resolvents of earlier clauses resolvent Size of  = || = # of clauses

CL SAT Solvers and Resolution Clause-learning SAT solvers Resolution Refutation proof UNSAT problem Asserting clause learning Non-chronological backtracking Restarting E.g., Chaff, MiniSat, PicoSat, Rsat, …

CL SAT Solvers and Resolution Decision heuristic 2 Decision heuristic 3 Decision heuristic … Decision heuristic 1 Does CLR contain short proofs for every UNSAT (compared to RES) ? Clause-learning SAT solvers UNSAT problems Restart policy 2 Restart policy … Restart policy 3 Restart policy 1 RES Proofs CLR Proofs … 1 2 3 … 1 2 3 … 1 2 3 …

Previous Results [Beame et al, JAIR 04] Yes, if you allow the solver to branch on assigned variables [Hertel et al, AAAI 08] Yes, if you first transform the problem [Buss et al, LMCS 08] Yes, if you first transform the problem

Our Results Yes. For any solvers that learn asserting clauses and restart

Clause-Learning SAT Solvers Decision: A=true Implications: B=true C=false D=false Decision: E=false Implications: F=true Decision: G=true Implications: H=false SATISFIABLE I=false

Clause-Learning SAT Solvers Decision: A=true Implications: B=true C=false D=false Decision: E=false Implications: F=true Decision: G=true Implications: H=false CONFLICT

Clause-Learning SAT Solvers Decision: A=true Implications: B=true C=false D=false Some of these are wrong! (~A v E v ~G) Decision: E=false (~A v D v H) Implications: F=true Decision: G=true Implications: H=false CONFLICT

Clause-Learning SAT Solvers Decision: A=true (~A v D v H) Implications: B=true C=false D=false Decision: E=false Implications: F=true Decision: G=true Implications: H=false CONFLICT

Clause-Learning SAT Solvers Decision: A=true (~A v D v H) Implications: B=true free literal C=false D=false Implications: H=true Decision: E=false Implications: F=true

Clause-Learning SAT Solvers Decision: A=true Restart = undo all decisions & consequent implications Implications: B=true C=false D=false Decision: E=false Implications: F=true Decision: G=true Implications: H=false

Clause-Learning SAT Solvers Decision: B=false Restart = undo all decisions & consequent implications Implications: D=true G=false

Clause-Learning Algorithm Falsified clause: (AvDvG) Unit clauses: (AvDvF) (Fv~G) (AvDvE) (Ev~F) (AvCvD) (AvCv~E) (AvBvC) (BvCv~D) Each derivation has at most n intermediate clauses! Intermediate clauses Conflict clause

What We Will Show Resolution refutation  of CNF  Given We will construct Resolution refutation  of CNF  CLR refutation ’ of CNF  s.t. |’| = poly(||, ||)

What We Will Show Resolution refutation  of CNF  Given We will construct Resolution refutation  of CNF  CLR refutation ’ of CNF  s.t. |’|  poly(||, ||) n||

Proof Ideas  = C1, C2, C3, …, Ci, …, CN-1, false Past work simulated the solver to learn every clause in 

Proof Ideas  = C1, C2, C3, …, Ci, …, CN-1, false We will learn only clauses in  with certain properties

Clauses CL Solvers Can Learn CNF  (XvYvZvW) X=false All literals in the clause are falsified … Y=false … These assignments clauses an immediate conflict Z=false … W=false CONFLICT

Proof Ideas  = C1, C2, C3, …, Ci, …, CN-1, false Ci Cj Ck Cm false We will learn only clauses in  with certain properties

Proof Ideas  = C1, C2, C3, …, Ci, …, CN-1, false Ci Cj Ck Cm … false

Proof Ideas  = C1, C2, C3, …, Ci, …, CN-1, false 1 , Ci , 2 , Cj , 3 , Ck , 4 , Cm , 5 , …, false Intermediate clauses Each i has size at most n

Proof Ideas  = C1, C2, C3, …, Ci, …, CN-1, false ’ = 1 , Ci , 2 , Cj , 3 , Ck , 4 , Cm , 5 , …, false Each i has size at most n |’|  n ||

Clauses We Are After C = ( v l) is 1-empowering C is 1-provable Unit resolution cannot derive l when ~ is asserted Asserting ~C results in a conflict C allows unit resolution to see a new implication Easy to show that C is implied by the CNF Solvers can make decisions in order to falsify C Solvers will run into a conflict after falsifying C

How We Derive Them … CNF  C = ( v l) : 1-provable, 1-empowering Set ~ as decisions No conflict! Because C is 1-empowering l, ~l are not implied Set ~l as the next decision CONFLICT Because C is 1-provable

How We Derive Them … CNF  C = ( v l) : 1-provable, 1-empowering Set ~ as decisions No conflict! Because C is 1-empowering l, ~l are not implied Set ~l as the next decision CONFLICT Because C is 1-provable C can be derived by the “Decision” learning scheme

Putting It All Together UNSAT CNF   = C1, C2, C3, …, Ci, …, CN-1, false Ci 1-provable & 1-empowering

Putting It All Together UNSAT CNF   = C1, C2, C3, …, Ci, …, CN-1, false 1 Ci

Putting It All Together UNSAT CNF , Ci  = C1, C2, C3, …, Ci, …, CN-1, false 1, Ci Restart before proceeding

Putting It All Together UNSAT CNF , Ci  = C1, C2, C3, …, Ci, …, CN-1, false 1, Ci Cj

Putting It All Together UNSAT CNF , Ci, Cj  = C1, C2, C3, …, Ci, …, CN-1, false 1, Ci , 2 , Cj

Putting It All Together UNSAT CNF , Ci, Cj, …  = C1, C2, C3, …, Ci, …, CN-1, false ’ = 1, Ci ,2,Cj, … , false CLR proof

Conclusions CL SAT solvers have the full power of general resolution! Appropriate decision & restart heuristics required

Open Question & Future Work Are restarts necessary? Can we achieve the same result with no or bounded # of restarts?

Open Question & Future Work More attention on heuristics For guiding resolution as opposed to search Beyond resolution

Thank you!