Proofs from SAT Solvers Yeting Ge ACSys NYU Nov 20 2007.

Slides:



Advertisements
Similar presentations
The behavior of SAT solvers in model checking applications K. L. McMillan Cadence Berkeley Labs.
Advertisements

Exploiting SAT solvers in unbounded model checking
Exploiting SAT solvers in unbounded model checking K. L. McMillan Cadence Berkeley Labs.
Hybrid BDD and All-SAT Method for Model Checking Orna Grumberg Joint work with Assaf Schuster and Avi Yadgar Technion – Israel Institute of Technology.
The Project Problem formulation (one page) Literature review –“Related work" section of final paper, –Go to writing center, –Present paper(s) to class.
Chaff: Engineering an Efficient SAT Solver Matthew W.Moskewicz, Concor F. Madigan, Ying Zhao, Lintao Zhang, Sharad Malik Princeton University Presenting:
UIUC CS 497: Section EA Lecture #2 Reasoning in Artificial Intelligence Professor: Eyal Amir Spring Semester 2004.
Propositional and First Order Reasoning. Terminology Propositional variable: boolean variable (p) Literal: propositional variable or its negation p 
Methods of Proof Chapter 7, second half.. Proof methods Proof methods divide into (roughly) two kinds: Application of inference rules: Legitimate (sound)
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.
Review: Constraint Satisfaction Problems How is a CSP defined? How do we solve CSPs?
Properties of SLUR Formulae Ondřej Čepek, Petr Kučera, Václav Vlček Charles University in Prague SOFSEM 2012 January 23, 2012.
Reduction of Interpolants for Logic Synthesis John Backes Marc Riedel University of Minnesota Dept.
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 translation from CVC3 to Hol light Yeting Ge Acsys Mar 5, 2008.
Proof-based Abstraction Presented by Roman Gershman Ken McMillan, Nina Amla.
Boolean Satisfiability Solvers Wonhong Nam
08/1 Foundations of AI 8. Satisfiability and Model Construction Davis-Putnam, Phase Transitions, GSAT Wolfram Burgard and Bernhard Nebel.
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.
Search in the semantic domain. Some definitions atomic formula: smallest formula possible (no sub- formulas) literal: atomic formula or negation of an.
Formal Verification Group © Copyright IBM Corporation 2008 IBM Haifa Labs SAT-based unbounded model checking using interpolation Based on a paper “Interpolation.
Last time Proof-system search ( ` ) Interpretation search ( ² ) Quantifiers Equality Decision procedures Induction Cross-cutting aspectsMain search strategy.
SAT Algorithms in EDA Applications Mukul R. Prasad Dept. of Electrical Engineering & Computer Sciences University of California-Berkeley EE219B Seminar.
1 Abstraction Refinement for Bounded Model Checking Anubhav Gupta, CMU Ofer Strichman, Technion Highly Jet Lagged.
ENGG3190 Logic Synthesis “Boolean Satisfiability” Winter 2014 S. Areibi School of Engineering University of Guelph.
GRASP: A Search Algorithm for Propositional Satisfiability EE878C Homework #2 2002/11/1 KAIST, EECS ICS Lab Lee, Dongsoo.
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.
Satisfiability Introduction to Artificial Intelligence COS302 Michael L. Littman Fall 2001.
Logics for Data and Knowledge Representation Propositional Logic: Reasoning Originally by Alessandro Agostini and Fausto Giunchiglia Modified by Fausto.
Boolean Satisfiability and SAT Solvers
SAT and SMT solvers Ayrat Khalimov (based on Georg Hofferek‘s slides) AKDV 2014.
INTRODUCTION TO ARTIFICIAL INTELLIGENCE COS302 MICHAEL L. LITTMAN FALL 2001 Satisfiability.
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.
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View BDDs.
Unification Algorithm Input: a finite set Σ of simple expressions Output: a mgu for Σ (if Σ is unifiable) 1. Set k = 0 and  0 = . 2. If Σ  k is a singleton,
LDK R Logics for Data and Knowledge Representation Propositional Logic: Reasoning First version by Alessandro Agostini and Fausto Giunchiglia Second version.
On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda Rolf Drechsler Alex Orailoglu Computer Science & Engineering Dept. University.
First-Order Logic and Inductive Logic Programming.
Boolean Satisfiability Present and Future
© Daniel S. Weld 1 Logistics Problem Set 2 Due Wed A few KR problems Robocode 1.Form teams of 2 people 2.Write design document.
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.
Accelerating Random Walks Wei Wei and Bart Selman.
SAT Solving As implemented in - DPLL solvers: GRASP, Chaff and
Inference in Propositional Logic (and Intro to SAT) CSE 473.
1 Boolean Satisfiability (SAT) Class Presentation By Girish Paladugu.
Knowledge Repn. & Reasoning Lecture #9: Propositional Logic UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2005.
Satisfiability Modulo Theories and DPLL(T) Andrew Reynolds March 18, 2015.
Inference in Propositional Logic (and Intro to SAT)
Gábor Kusper University of Linz RISC Austria
Recovering and Exploiting Structural Knowledge from CNF Formulas
(xy)(yz)(xz)(zy)
First-Order Logic and Inductive Logic Programming
ECE 667 Synthesis and Verification of Digital Circuits
Logics for Data and Knowledge Representation
Decision Procedures An Algorithmic Point of View
Resolution Proofs for Combinational Equivalence
Canonical Computation without Canonical Data Structure
Canonical Computation without Canonical Data Structure
GRASP-an efficient SAT solver
Faster Extraction of High-Level Minimal Unsatisfiable Cores
Verifying Clausal Proofs, DRUPing and Interpolants SAT/SMT Seminar
Presentation transcript:

Proofs from SAT Solvers Yeting Ge ACSys NYU Nov

SAT solvers and proofs SAT problem and solvers Given a propositional logic formula, a SAT solver outputs sat or unsat Proofs from SAT solvers are needed A certificate to show the solver is correct Required by applications Planning Calculation of interpolants …… 11/20/20072

A bunch of SAT solvers Complete / incomplete Internal representation BDD, circuit, CNF,…… Search method Depth first, breadth first Most modern SAT solvers Complete, CNF, breadth first DPLL based 11/20/20073

Naïve SAT algorithm To solve: 11/20/20074 UNSAT

DPLL algorithm dpll(Clauses C){ C = simplify(C); if ( C contains contradictions ) return UNSAT ; if ( no more free variables in C) return SAT ; choose a free variable v in C ; C1 = substitute(C, v, T ) ; if (SAT == dpll(Clauses C1)) return SAT ; else { C2 = substitute(C, v, F ) ; return dpll(Clauses C2) ; } 11/20/20075

DPLL algorithm Two rules to simplify the CNF clauses Unit propagation rule If there is a clause contains only one literal, the literal is forced to be true. Propagate this new assignment immediately. Given {, }, deduce and { }, then One literal rule Not used in most modern SAT solvers 11/20/20076

Modern SAT solvers Efficient unit propagation BCP(Boolean Constraints Propagation) Efficient back-tracking Iterative algorithm Almost constant cost back-tracking Better heuristics on what to do next Conflict analysis Look ahead heuristics Fine tuning Restart, preprocessing,… 11/20/20077

Resolution and SAT problem Resolution Given two clauses and, derive From and, derive empty clause Theorem A set of CNF clauses is unsatisfiable if and only if there is a resolution derivation of empty clause Proof: Based on induction. 11/20/20078

From DPLL search tree to resolution proof Observation: A contraction  a resolution 11/20/20079 UNSAT

Naïve proof generation Record the entire proof tree and reconstruct the resolution proof Dump search trace Modern SAT solvers employ unit propagation Modern SAT solvers employ some learning techniques New clauses are learned and added into the CNF clause set. New clause could be used later 11/20/200710

Unit propagation (BCP) and resolution Given a unit clause, only if there is a clause, we can generate a new clause A special case of resolution New unit clauses will be linked to their source clauses (implication graph) Modern SAT solvers spent most of the time on BCP 11/20/200711

Learning and resolution: Implication graph 11/20/ ) 2) 3) 4) 5)

11/20/ ) 2) 3) 4) 5) Implication graph The contraction is due to: or We can learn a clause, which is the result of resolution of clause 4) and 5) contraction  resolution

11/20/ ) 2) 3) 4) 5) Implication graph: more learned clause Another clause

11/20/ ) 2) 3) 4) 5) Implication graph: more learned clause Yet another clause

11/20/ ) 2) 3) 4) 5) Implication graph: more learned clause

Resolution and learned clauses Conflict clause The learned clause that are fed back into SAT solver Conflict clauses can be seen as the result of some resolution Conflict clauses are redundant Could be deleted later 11/20/200717

Proof generation Whenever a learned clause is generated, record the clause and dump the reason for that clause Recode all variables assigned at root level and the reasons Re-construct the resolution proof from the last contradiction by searching the dumped trace and recorded information Learned clauses are constructed if necessary 11/20/200718

Application of proofs: Small unsat core Some applications require small unsat core Given a set of unsatisfiable CNF clauses C, if and, then S is a minimal unsat core of C If s is the smallest among all minimal unsat core, then s is the minimum unsat core It is difficult to obtain a minimum unsat core 11/20/200719

Small unsat core from proofs By Zhang et al. Given a unsatisfiable set of clauses C Collect all clauses appears in the unsat proof, say C1, which must be unsatifiable Run SAT solver on C1 and collect all clauses appears in the unsat proof of C1, say C2 Repeat until reach a fixpoint There is no guarantee that the fixpoint is minimal 11/20/200720

Another kind of proof Given a set of unsatisfiable CNF clauses F and all conflict clauses C found by the SAT solver, a conflict pair can be derived by performing BCP on F  C only If a set of CNF clauses is unsatisfiable, a conflict pair can be derive by resolution All the result of non-BCP resolution are in C The proof checking is time consuming The checking procedure could give a small unsat core as a by-product 11/20/200721

Some future problems A standard proof format Dump of the resolution proof Dump of conflict clauses Better proof generation and checking Big proofs Proofs from SMT solvers More difficult There is no general standard format 11/20/200722

Summary Proofs from SAT solvers are useful Modern CNF based SAT solvers can generate proofs with little overhead Construct the resolution proof might be a problem for large cases Small unsat core could be obtained from proofs 11/20/200723