Motivation & Goal SAT and Constraint Processing (CP) are fundamental areas of Computer Science that address the same computational questions. Compare SAT.

Slides:



Advertisements
Similar presentations
Exploiting SAT solvers in unbounded model checking
Advertisements

Introduction to MiniSat v1.14 Presented by Yunho Kim Provable Software Lab, KAIST.
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 
Proofs from SAT Solvers Yeting Ge ACSys NYU Nov
“Using Weighted MAX-SAT Engines to Solve MPE” -- by James D. Park Shuo (Olivia) Yang.
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?
Abstract Answer Set Solver. Todolist Print the rules of Fig 1.
4 th Nov, Oct 23 rd Happy Deepavali!. 10/23 SAT & CSP.
Answer Set Programming vs CSP: Power of Constraint Propagation Compared Jia-Huai You ( 犹嘉槐 ) University of Alberta Canada.
Boolean Satisfiability Solvers Wonhong Nam
1 Boolean Satisfiability in Electronic Design Automation (EDA ) By Kunal P. Ganeshpure.
Constraint Satisfaction and the Davis-Putnam-Logeman-Loveland Procedure Henry Kautz.
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.
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.
A Compressed Breadth-First Search for Satisfiability DoRon B. Motter and Igor L. Markov University of Michigan, Ann Arbor.
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)
Ken Bayer, Josh Snyder, and Berthe Y. Choueiry Constraint Systems Laboratory University of Nebraska-Lincoln A Constraint-Based Approach to Solving Minesweeper.
1 Abstraction Refinement for Bounded Model Checking Anubhav Gupta, CMU Ofer Strichman, Technion Highly Jet Lagged.
Chapter 5 Outline Formal definition of CSP CSP Examples
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.
Distributed Scheduling. What is Distributed Scheduling? Scheduling: –A resource allocation problem –Often very complex set of constraints –Tied directly.
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.
1 Message Passing and Local Heuristics as Decimation Strategies for Satisfiability Lukas Kroc, Ashish Sabharwal, Bart Selman (presented by Sebastian Brand)
SAT Solver Math Foundations of Computer Science. 2 Boolean Expressions  A Boolean expression is a Boolean function  Any Boolean function can be written.
Visualizations to Support Interactive Goal Model Analysis Jennifer Horkoff 1 Eric Yu 2 Department of Computer Science 1 Faculty of Information 2
Chapter 8: Writing Graphical User Interfaces
Boolean Satisfiability and SAT Solvers
Quantified Formulas - Decision Procedure Daniel Kroening, Ofer Strichman Presented by Changki Hong 07 NOV 08.
SAT and SMT solvers Ayrat Khalimov (based on Georg Hofferek‘s slides) AKDV 2014.
MBSat Satisfiability Program and Heuristics Brief Overview VLSI Testing B Marc Boulé April 2001 McGill University Electrical and Computer Engineering.
Explorations in Artificial Intelligence Prof. Carla P. Gomes Module 3 Logic Representations (Part 2)
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.
Explorations in Artificial Intelligence Prof. Carla P. Gomes Module Logic Representations.
LDK R Logics for Data and Knowledge Representation Propositional Logic: Reasoning First version by Alessandro Agostini and Fausto Giunchiglia Second version.
Advanced Algorithm Design and Analysis (Lecture 14) SW5 fall 2004 Simonas Šaltenis E1-215b
On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda Rolf Drechsler Alex Orailoglu Computer Science & Engineering Dept. University.
SAT 2009 Ashish Sabharwal Backdoors in the Context of Learning (short paper) Bistra Dilkina, Carla P. Gomes, Ashish Sabharwal Cornell University SAT-09.
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.
Planning as Satisfiability (SAT-Plan). SAT-Plan Translate the planning problem into a satisfiability problem for length n of Plan garb 0 (proposition)present.
SAT Solver Heuristics. SAT-solver History Started with David-Putnam-Logemann-Loveland (DPLL) (1962) –Able to solve variable problems Satz (Chu Min.
Solving the Logic Satisfiability problem Solving the Logic Satisfiability problem Jesus De Loera.
Satisfiability and SAT Solvers CS 270 Math Foundations of CS Jeremy Johnson.
SAT Solving As implemented in - DPLL solvers: GRASP, Chaff and
1 Boolean Satisfiability (SAT) Class Presentation By Girish Paladugu.
A Decision-Making Procedure for Resolution-Based SAT-solvers Eugene Goldberg Cadence Research Labs (USA) SAT-2008, Guangzhou, P.R. China.
REU 2007-ParSat: A Parallel SAT Solver Christopher Earl, Mentor: Dr. Hao Zheng Department of Computer Science & Engineering Introduction Results and Conclusions.
Hybrid BDD and All-SAT Method for Model Checking
Inference and search for the propositional satisfiability problem
CS 4700: Foundations of Artificial Intelligence
Clause Learning and Intelligent Backtracking in MiniSAT
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
Unit Propagation and Variable Ordering in MiniSAT
Introduction to the Boolean Satisfiability Problem
GRASP-an efficient SAT solver
Presentation transcript:

Motivation & Goal SAT and Constraint Processing (CP) are fundamental areas of Computer Science that address the same computational questions. Compare SAT & CP: formalisms, search, and inference mechanisms. Approach Constraint Processing Studied formalism, modeling, algorithms for search, backtracking, and constraint propagation. Built, from scratch, a CP solver with main fundamental mechanisms & conducted extensive empirical performance studies. SAT Solving Studied Tseiten’s encoding, propagation, conflict graph, clause learning, simplification at pre-processing, etc. Instrumented MiniSat to capture and animate its main operations. Built a visualization tool of MiniSat using Flare and FlashBuilder. Outcomes A comparative synthesis of terminology, mechanisms in CP & SAT. A visualization tool of MiniSat as an instructional aid to teach Computer Science students about SAT & its fundamentals. This research was supported by CREU-W of the CRA, Undergraduate Creative Activities and Research Experiences Program of the University of Nebraska-Lincoln, and National Science Foundation REU supplements for Grant #CNS and Grant #RI Visualization: The Search Tree Chart selectively displays search statistics using check boxes The chart shows trends during search. Zooming allows users to explore points of interest. Point of interest A solution path Inconsistent paths 1. Open Original Clauses is the number of clauses given as input but not yet satisfied. 2. Open Learnt Clauses is the number clauses learned during search but not yet satisfied. 3. Instantiated Literals is the number of literals instantiated by decision or by propagation. 4. Learnt Clauses is the total number of clauses learnt during search. 7. Driving the Visualization 6. Visualization: The Explanation Box The user can examine in the Explanation Box the details of any of four metrics summarized in the chart The latest information is displayed first & in green to facilitate understanding Clauses are shown in CNF: When the user hovers over a node in the tree, the details of the corresponding metrics are listed in the Explanation Box. The contents of the Explanation Box change as the tree is being built to reflect the metrics details of the latest node generated in the tree. New instantiations: one decision & nine propagations A problem instance is selected from a drop-down menu. The prefixes ‘uf’/‘uuf’ indicate that the instance is satisfiable/unsatisfiable.  The user can build the tree by: -Activating the Play/Pause buttons. -Pressing the right/left arrow keys. -Clicking on a point on the Chart.  As the tree is being built, the Chart & Explanation Box are updated to reflect the state of the latest node.  The user can zoom in the tree using the mouse scroll-wheel or the CTRL+Click shortcut.  Hovering over a node in the tree updates the Explanation Box. The corresponding node on the Chart blinks to indicate a relationship between the Chart and the tree.  If the user hovers over a node the actual value is shown. Actual value 1. Propositional Satisfiability (SAT) SAT Problem Given: A propositional Satisfiability (SAT) sentence, e.g., Question: Find an assignment for the Boolean variables such that the sentence holds, e.g., Solving SAT SAT is NP-complete, solved with search MiniSat 1 is a SAT solver based on the Davis-Putnam-Logemann- Loveland (DPLL) backtracking algorithm. MiniSat uses heuristics & inference techniques to enhance the performance of DPLL, including Boolean Constraint Propagation (BCP). Conflict clause learning. Conflict-directed backtracking. 2. Our Project a =0 b =0 c =0 d =0 d =1 c =1 d =0 DPLL explores combinations of values for the Boolean variables in a depth-first manner by expanding partial assignments that are consistent with the clauses of the sentence. When a partial solution cannot be expanded without violating one of the clauses, a conflict is detected and backtracking is occurs. Mary D. Burke, Daniel Geschwender, Keegan Lunn, Margaret Krause, Berthe Y. Choueiry & Matthew Dwyer Computer Science & Engineering University of Nebraska-Lincoln I NTERACTIVE V ISUALIZATION OF S ATISFIABILITY S OLVING ( satviz.unl.edu) clause literals terms or Boolean variables Dead-end Part of solution Not part of solution The search tree traces the assignments of decision variables. Each tree node  Represents a MiniSat decision (assumption).  Is labeled by the decision: “-20” indicates that the literal is set to false “13” indicates that the literal is set to true  Is colored based on its status: a dead-end (pink), part of the solution (green), or not part of the solution (grey). Users visually identify solution paths & inconsistent paths. They can also collapse subtrees and expand them. Inconsistent paths One new learnt clause The decision yields instantiation of other literals by propagation, a conflict, and a new learnt clause When more than one metrics are selected, the chart’s y-axis is shown as a percentage of the max values of each metric. When only one metric is selected the y-axis shows the true scale. 4. Visualization: The Chart