Introduction to the Boolean Satisfiability Problem

Slides:



Advertisements
Similar presentations
SAT Solver CS 680 Formal Methods Jeremy Johnson. 2 Disjunctive Normal Form  A Boolean expression is a Boolean function  Any Boolean function can be.
Advertisements

UIUC CS 497: Section EA Lecture #2 Reasoning in Artificial Intelligence Professor: Eyal Amir Spring Semester 2004.
Disjunctive Normal Form CS 680: Formal Methods Jeremy Johnson.
Models and Propositional Logic In propositional logic, a model in general simply fixes the truth value – true or false – for every proposition symbol.
Methods of Proof Chapter 7, second half.. Proof methods Proof methods divide into (roughly) two kinds: Application of inference rules: Legitimate (sound)
Intelligent Systems (AI-2) Computer Science cpsc422, Lecture 20
Logic Use mathematical deduction to derive new knowledge.
Logic Concepts Lecture Module 11.
© by Kenneth H. Rosen, Discrete Mathematics & its Applications, Sixth Edition, Mc Graw-Hill, 2007 Chapter 1: (Part 2): The Foundations: Logic and Proofs.
1 Boolean Satisfiability in Electronic Design Automation (EDA ) By Kunal P. Ganeshpure.
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.
Methods of Proof Chapter 7, second half.
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.
GRASP: A Search Algorithm for Propositional Satisfiability EE878C Homework #2 2002/11/1 KAIST, EECS ICS Lab Lee, Dongsoo.
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.
Quantified Formulas - Decision Procedure Daniel Kroening, Ofer Strichman Presented by Changki Hong 07 NOV 08.
MBSat Satisfiability Program and Heuristics Brief Overview VLSI Testing B Marc Boulé April 2001 McGill University Electrical and Computer Engineering.
CHAPTERS 7, 8 Oliver Schulte Logical Inference: Through Proof to Truth.
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.
CS344: Introduction to Artificial Intelligence Lecture: Herbrand’s Theorem Proving satisfiability of logic formulae using semantic trees (from Symbolic.
LECTURE LECTURE Propositional Logic Syntax 1 Source: MIT OpenCourseWare.
LDK R Logics for Data and Knowledge Representation Propositional Logic: Reasoning First version by Alessandro Agostini and Fausto Giunchiglia Second version.
A DPLL example C1:(a  b) C2:(  a   b) C3:(a   c) C4:(c  d  e) C5:(d   e) C6:(  d   f) C7:(f  e) C8:(  f   e) false true a a a=false by.
CS6133 Software Specification and Verification
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.
Planning as Satisfiability (SAT-Plan). SAT-Plan Translate the planning problem into a satisfiability problem for length n of Plan garb 0 (proposition)present.
CS 461 – Nov. 30 Section 7.5 How to show a problem is NP-complete –Show it’s in NP. –Show that it corresponds to another problem already known to be NP-complete.
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.
1 Boolean Satisfiability (SAT) Class Presentation By Girish Paladugu.
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
Knowledge Repn. & Reasoning Lecture #9: Propositional Logic UIUC CS 498: Section EA Professor: Eyal Amir Fall Semester 2005.
CS.462 Artificial Intelligence SOMCHAI THANGSATHITYANGKUL Lecture 04 : Logic.
Propositional Logic (a.k.a. Sentential Logic)
Inference and search for the propositional satisfiability problem
Gábor Kusper University of Linz RISC Austria
(CSC 102) Discrete Structures Lecture 2.
The Propositional Calculus
ARTIFICIAL INTELLIGENCE
NP-Completeness (36.4-5) P: yes and no in pt NP: yes in pt NPH  NPC
Disjunctive Normal Form
First-Order Logic and Inductive Logic Programming
Introduction to Software Verification
Logical Inference: Through Proof to Truth
Clause Learning and Intelligent Backtracking in MiniSAT
Watched Literals and Restarts in MiniSAT
Propositional Calculus: Boolean Algebra and Simplification
Elementary Metamathematics
NP-Completeness Proofs
Modeling Sudoku as a CNF Formula
Introduction to the Boolean Satisfiability Problem
ECE 667 Synthesis and Verification of Digital Circuits
Propositional Equivalences
CSE 311 Foundations of Computing I
Unit Propagation and Variable Ordering in MiniSAT
Clause Learning and Intelligent Backtracking in MiniSAT
Modeling Sudoku as a CNF Formula
Unit Propagation and Variable Ordering in MiniSAT
Clause Learning and Intelligent Backtracking in MiniSAT
Methods of Proof Chapter 7, second half.
Watched Literals and Restarts in MiniSAT
Modeling Sudoku as a CNF Formula
GRASP-an efficient SAT solver
Presentation transcript:

Introduction to the Boolean Satisfiability Problem Spring 2018 CSCE 235H Introduction to Discrete Structures URL: cse.unl.edu/~cse235h All questions: Piazza

Satisfiability Study 7 weeks 30 min lectures in recitation ~2 hours of homework per week Goals: Exposure to fundamental research in CS Understand how to model problems Learn to use SAT solver, MiniSAT

Boolean Satisfiability Problem Given: A Boolean formula Question: Is there an assignment of truth values to the Boolean variables such that the formula holds true?

Boolean Satisfiability Problem

Boolean Satisfiability Problem SATISFIABLE a=true, b=true

Boolean Satisfiability Problem SATISFIABLE a=true, b=true UNSATISFIABLE Left side of implication is a tautology. Right side of implication is a contradiction. True cannot imply false.

Applications of SAT Scheduling Resource allocation Hardware/software verification Planning Cryptography

Conjunctive Normal Form Variable Literal Clause Formula

Converting to CNF All Boolean formulas can be converted to CNF The operators can be rewritten in terms of can be rearranged using De Morgan’s Laws Distributive Laws Double Negative May result in exponential size increase of the formula

Converting to CNF

Converting to CNF Implication

Converting to CNF Implication DeMorgan’s

Converting to CNF Implication DeMorgan’s Distributive

Interpretation of CNF Every clause must be satisfied by at least one true literal Total possible number of solutions increases as number of variables increases Clauses constrain the possible solutions Smaller clauses are more constraining

Interpretation of CNF a b C 1

Interpretation of CNF a b C 1

Interpretation of CNF a b C 1

Interpretation of CNF a b C 1

Interpretation of CNF a b C 1

Determining SAT/UNSAT All that is required to show satisfiability is to find a valid solution Many techniques available: Guessing and checking Systematic search Inference

Systematic Search with Backtracking Construct a binary tree of all combinations Proceeds in a depth first manner Each level corresponds to a variable Each branch corresponds to a truth assignment Branches of the tree are ‘pruned’ when the assignment cannot be extended in a satisfiable manner

Systematic Search with Backtracking

Systematic Search with Backtracking

Systematic Search with Backtracking

Systematic Search with Backtracking

Systematic Search with Backtracking

Systematic Search with Backtracking

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable

Systematic Search with Backtracking Satisfiable 3 solutions total