Extending DPLL-Based QBF Solvers to Handle Free Variables

Size: px
Start display at page:

Download "Extending DPLL-Based QBF Solvers to Handle Free Variables"

Transcription

1 Extending DPLL-Based QBF Solvers to Handle Free Variables Will Klieber, Mikoláš Janota, Joao Marques-Silva, Edmund Clarke July 9,

2 Open QBF Closed QBF: All variables quantified; answer is True or False. Open QBF: Contains free (unquantified) variables. Goal: Find equivalent propositional formula. E.g., given x. x (y z), return y z. 2

3 Open QBF Closed QBF: All variables quantified; answer is True or False. Open QBF: Contains free (unquantified) variables. Goal: Find equivalent propositional formula. E.g., given x. x (y z), return y z. Applications: symbolic MC, synthesis from formal spec, etc. 2

4 Outline Naïve Algorithm Introduce sequents that generalize clauses for open QBF in CNF (without ghost variables) Experimental results Ghost variables: see paper. 3

5 Naïve Algorithm Notation: ite(x, φ 1, φ 2 ) is a formula with an if-then-else: ite(x, φ 1, φ 2 ) = (x φ 1 ) ( x φ 2 ) 4

6 Naïve Algorithm Notation: ite(x, φ 1, φ 2 ) is a formula with an if-then-else: ite(x, φ 1, φ 2 ) = (x φ 1 ) ( x φ 2 ) Recursively Shannon-expand on free variables: Φ = ite(x, Φ x=true, Φ x=false ) 4

7 Naïve Algorithm Notation: ite(x, φ 1, φ 2 ) is a formula with an if-then-else: ite(x, φ 1, φ 2 ) = (x φ 1 ) ( x φ 2 ) Recursively Shannon-expand on free variables: Φ = ite(x, Φ x=true, Φ x=false ) Base case (no more free variables): Give to closed-qbf solver. 4

8 Naïve Algorithm 1. function solve(φ) { 2. if (Φ has no free variables) 3. return closed qbf solve(φ); 7. } 5

9 Naïve Algorithm 1. function solve(φ) { 2. if (Φ has no free variables) 3. return closed qbf solve(φ); 4. x := (a free variable in Φ); 5. return ite(x, solve( Φ x=true ), 6. solve( Φ x=false )); 7. } 5

10 Naïve Algorithm 1. function solve(φ) { 2. if (Φ has no free variables) 3. return closed qbf solve(φ); 4. x := (a free variable in Φ); 5. return ite(x, solve( Φ x=true ), 6. solve( Φ x=false )); 7. } Builds OBDD if: 1. same branch order, 2. formula construction is memoized, and 3. ite(x, φ, φ) is simplified to φ. 5

11 Naïve Algorithm Naïve Algorithm: Similar to DPLL in terms of branching. But lacks many optimizations that make DPLL fast: Non-chronological backtracking Clause learning Our open-qbf technique: Extend existing closed-qbf algorithm to allow free variables. 6

12 Preliminaries Prenex Form: Q 1 x 1...Q n x n. φ where φ has no quantifiers. 7

13 Preliminaries Prenex Form: Q 1 x 1...Q n x n. φ where φ has no quantifiers. In x. y. φ, we say that y is downstream of x. y occurs inside scope of x. 7

14 Preliminaries Prenex Form: Q 1 x 1...Q n x n. φ where φ has no quantifiers. In x. y. φ, we say that y is downstream of x. y occurs inside scope of x. Free variables are upstream of all quantified variables. 7

15 Preliminaries Prenex Form: Q 1 x 1...Q n x n. φ where φ has no quantifiers. In x. y. φ, we say that y is downstream of x. y occurs inside scope of x. Free variables are upstream of all quantified variables. We identify assignment π with the set of literals made true by π. E.g., identify {(e 1, True), (u 2, False)} with {e 1, u 2 }. 7

16 Preliminaries Prenex Form: Q 1 x 1...Q n x n. φ where φ has no quantifiers. In x. y. φ, we say that y is downstream of x. y occurs inside scope of x. Free variables are upstream of all quantified variables. We identify assignment π with the set of literals made true by π. E.g., identify {(e 1, True), (u 2, False)} with {e 1, u 2 }. Substitution: Φ π substitutes assigned variables with values (even if bound by quantifier, which gets deleted). 7

17 QBF as a Game Existential variables are owned by Player. Universal variables are owned by Player. Players assign variables in quantification order. The goal of Player is to make Φ be true. The goal of Player is to make Φ be false. 8

18 Properties of Clauses and Cubes Motivate definition of sequents. If π falsifies all literals in clause C in CNF Φ, then Φ π = False. 9

19 Properties of Clauses and Cubes Motivate definition of sequents. If π falsifies all literals in clause C in CNF Φ, then Φ π = False. If π falsifies all existential literals in clause C in CNF Φ and doesn t satisfy any universal literals in C, then Φ π = False. 9

20 Properties of Clauses and Cubes Motivate definition of sequents. If π falsifies all literals in clause C in CNF Φ, then Φ π = False. If π falsifies all existential literals in clause C in CNF Φ and doesn t satisfy any universal literals in C, then Φ π = False. If π satisfies all universal literals in a cube C in a DNF Φ and doesn t falsify any existential literals in C, then Φ π = True. 9

21 Properties of Clauses and Cubes Motivate definition of sequents. If π falsifies all literals in clause C in CNF Φ, then Φ π = False. If π falsifies all existential literals in clause C in CNF Φ and doesn t satisfy any universal literals in C, then Φ π = False. If π satisfies all universal literals in a cube C in a DNF Φ and doesn t falsify any existential literals in C, then Φ π = True. Tautological clauses learned via long-distance resolution? (Assuming -reduction is done only on-the-fly, during unit prop.) 9

22 L now, L fut Sequents Definition. A game-state specifier is a pair L now, L fut consisting of two sets of literals, L now and L fut. Definition. We say that L now, L fut matches assignment π iff: 1. for every literal l in L now, l π = True, and 2. for every literal l in L fut, either l π = True or l vars(π). 10

23 L now, L fut Sequents Definition. A game-state specifier is a pair L now, L fut consisting of two sets of literals, L now and L fut. Definition. We say that L now, L fut matches assignment π iff: 1. for every literal l in L now, l π = True, and 2. for every literal l in L fut, either l π = True or l vars(π). E.g., {e}, {u} matches {e} and {e, u}, 10

24 L now, L fut Sequents Definition. A game-state specifier is a pair L now, L fut consisting of two sets of literals, L now and L fut. Definition. We say that L now, L fut matches assignment π iff: 1. for every literal l in L now, l π = True, and 2. for every literal l in L fut, either l π = True or l vars(π). E.g., {e}, {u} matches {e} and {e, u}, but does not match {} or {e, u}. 10

25 L now, L fut Sequents Definition. A game-state specifier is a pair L now, L fut consisting of two sets of literals, L now and L fut. Definition. We say that L now, L fut matches assignment π iff: 1. for every literal l in L now, l π = True, and 2. for every literal l in L fut, either l π = True or l vars(π). E.g., {e}, {u} matches {e} and {e, u}, but does not match {} or {e, u}. L now, {l, l} matches π only if π doesn t assign l. 10

26 L now, L fut Sequents Definition. A game-state specifier is a pair L now, L fut consisting of two sets of literals, L now and L fut. Definition. We say that L now, L fut matches assignment π iff: 1. for every literal l in L now, l π = True, and 2. for every literal l in L fut, either l π = True or l vars(π). Definition. L now, L fut = (Φ ψ) means for all assignments π that match L now, L fut, Φ π is logically equivalent to ψ π unless π is a don t-care assignment. 11

27 L now, L fut Sequents Definition. A game-state specifier is a pair L now, L fut consisting of two sets of literals, L now and L fut. Definition. We say that L now, L fut matches assignment π iff: 1. for every literal l in L now, l π = True, and 2. for every literal l in L fut, either l π = True or l vars(π). Definition. L now, L fut = (Φ ψ) means for all assignments π that match L now, L fut, Φ π is logically equivalent to ψ π unless π is a don t-care assignment. Without ghost literals: No assignments are don t-care. With ghost literals: Some assignments are don t-care. 11

28 Correspondence of Sequents to Clauses and Cubes Consider a QBF with existential literals e 1... e n and universal literals u 1... u m. Clause (e 1... e n u 1... u m ) in CNF Φ in corresponds to sequent { e 1,..., e n }, { u 1,..., u m } = (Φ in False). 12

29 Correspondence of Sequents to Clauses and Cubes Consider a QBF with existential literals e 1... e n and universal literals u 1... u m. Clause (e 1... e n u 1... u m ) in CNF Φ in corresponds to sequent { e 1,..., e n }, { u 1,..., u m } = (Φ in False). Cube (e 1... e n u 1... u m ) in DNF Φ in corresponds to sequent {u 1,..., u m }, {e 1,..., e n } = (Φ in True). 12

30 Correspondence of Sequents to Clauses and Cubes Consider a QBF with existential literals e 1... e n and universal literals u 1... u m. Clause (e 1... e n u 1... u m ) in CNF Φ in corresponds to sequent { e 1,..., e n }, { u 1,..., u m } = (Φ in False). Cube (e 1... e n u 1... u m ) in DNF Φ in corresponds to sequent {u 1,..., u m }, {e 1,..., e n } = (Φ in True). Sequents generalize clauses/cubes because L now, L fut = (Φ ψ) can have ψ be a formula in terms of free variables. 12

31 Alternate Sequent Notation L now, L fut = ( loses Φ) means L now, L fut = (Φ False). L now, L fut = ( loses Φ) means L now, L fut = (Φ True). 13

32 Resolution rule for free variable Literal r is free L now 1 {r}, L fut 1 = (Φ in ψ 1 ) L now 2 { r}, L fut 2 = (Φ in ψ 2 ) L now 1 L now 2, L fut 1 Lfut 2 {r, r} = (Φ in ite(r, ψ 1, ψ 2 )) 14

33 Top-level algorithm 1. initialize_sequent_database(); 2. π cur := ; Propagate(); 3. while (true) { 12. } 15

34 Top-level algorithm 1. initialize_sequent_database(); 2. π cur := ; Propagate(); 3. while (true) { 4. while (π cur doesn t match any database sequent) { 5. DecideLit(); 6. Propagate(); 7. } 12. } 15

35 Top-level algorithm 1. initialize_sequent_database(); 2. π cur := ; Propagate(); 3. while (true) { 4. while (π cur doesn t match any database sequent) { 5. DecideLit(); 6. Propagate(); 7. } 8. Learn(); 9. if (learned seq has form, L fut = (Φ in ψ)) return ψ; 10. Backtrack(); 11. Propagate(); 12. } 15

36 Propagation Let seq be a sequent L now, L fut = (Φ in ψ) in database. If there is a literal l L now such that 1. π cur {l} matches seq, and 2. l is not downstream of any unassigned literals in L fut, then l is forced; it is added to the current assignment π cur. 16

37 Propagation Let seq be a sequent L now, L fut = (Φ in ψ) in database. If there is a literal l L now such that 1. π cur {l} matches seq, and 2. l is not downstream of any unassigned literals in L fut, then l is forced; it is added to the current assignment π cur. Propagation ensures that the solver never re-explores areas of the search space for which it already knows the answer. 16

38 Learning func Learn() { 1. seq := (the database sequent that matches π cur ); 2. while (true) { } } 17

39 Learning func Learn() { 1. seq := (the database sequent that matches π cur ); 2. while (true) { 3. r := (the most recently assigned literal in seq.lnow) 4. seq := Resolve(seq, antecedent[r]); } } 17

40 Learning func Learn() { 1. seq := (the database sequent that matches π cur ); 2. while (true) { 3. r := (the most recently assigned literal in seq.lnow) 4. seq := Resolve(seq, antecedent[r]); 5. if (seq.lnow = or has good UIP(seq)) 6. return seq; 7. } } 17

41 Resolution rule for quantified variable (case 1) The quantifier type of r in Φ is Q L now 1 {r}, L fut 1 = (Q loses Φ in) L now 2 { r}, L fut 2 = (Q loses Φ in) Opponent of Q owns all literals in L fut 1 r is not downstream of any l such that l L fut 1 and l (Lfut 1 Lfut 2 ) L now 1 L now 2, L fut 1 Lfut 2 = (Q loses Φ in) 18

42 Resolution rule for quantified variable (case 2) The quantifier type of r in Φ is Q L now 1 {r}, L fut 1 = (Q loses Φ in) L now 2 { r}, L fut 2 = (Φ in ψ) Opponent of Q owns all literals in L fut 1 r is not downstream of any l such that l L fut 1 and l (Lfut 1 Lfut 2 ) L now 1 L now 2, L fut 1 Lfut 2 { r} = (Φ in ψ) 19

43 Experimental Comparison Our solver: GhostQ. Compared to computational-learning solver from: B. Becker, R. Ehlers, M. Lewis, and P. Marin, ALLQBF solving by computational learning (ATVA 2012). Benchmarks (from same paper): synthesis from formal specifications. 20

44 Cactus Plot CPU time (s) learner learner-d learner-c GQ instances 21

45 Formula Size GQ learner-c 22

46 Conclusion DPLL-based solver for open QBF. Sequents generalize clauses and cubes. Generates proof certificates. Our solver produces unordered BDDs. Unordered because of unit propagation. In our experience, often larger than OBDDs. More details: preprint of CP 2013 paper on Will Klieber s website. 23

Solving QBF with Free Variables

Solving QBF with Free Variables Solving QBF with Free Variables William Klieber 1, Mikoláš Janota 2, Joao Marques-Silva 2,3, and Edmund Clarke 1 1 Carnegie Mellon University, Pittsburgh, PA, USA 2 IST/INESC-ID, Lisbon, Portugal 3 University

More information

A Non-Prenex, Non-Clausal QBF Solver with Game-State Learning

A Non-Prenex, Non-Clausal QBF Solver with Game-State Learning A Non-Prenex, Non-Clausal QBF Solver with Game-State Learning William Klieber, Samir Sapra, Sicun Gao, and Edmund Clarke Computer Science Department Carnegie Mellon University Pittsburgh, Pennsylvania

More information

Solvers for the Problem of Boolean Satisfiability (SAT) Will Klieber Aug 31, 2011

Solvers for the Problem of Boolean Satisfiability (SAT) Will Klieber Aug 31, 2011 Solvers for the Problem of Boolean Satisfiability (SAT) Will Klieber 15-414 Aug 31, 2011 Why study SAT solvers? Many problems reduce to SAT. Formal verification CAD, VLSI Optimization AI, planning, automated

More information

On Unit-Refutation Complete Formulae with Existentially Quantified Variables

On Unit-Refutation Complete Formulae with Existentially Quantified Variables On Unit-Refutation Complete Formulae with Existentially Quantified Variables Lucas Bordeaux 1 Mikoláš Janota 2 Joao Marques-Silva 3 Pierre Marquis 4 1 Microsoft Research, Cambridge 2 INESC-ID, Lisboa 3

More information

On Conflicts and Strategies in QBF

On Conflicts and Strategies in QBF Nikolaj Bjørner 1, Mikoláš Janota 2 and William Klieber 3 1 Microsoft Research, Redmond, USA 2 Microsoft Research, Cambridge, UK 3 CERT/SEI, Carnegie Mellon University Abstract QBF solving techniques can

More information

Reasoning with Quantified Boolean Formulas

Reasoning with Quantified Boolean Formulas Reasoning with Quantified Boolean Formulas Martina Seidl Institute for Formal Models and Verification Johannes Kepler University Linz 1 What are QBF? Quantified Boolean formulas (QBF) are formulas of propositional

More information

Decision Procedures for Satisfiability and Validity in Propositional Logic

Decision Procedures for Satisfiability and Validity in Propositional Logic Decision Procedures for Satisfiability and Validity in Propositional Logic Meghdad Ghari Institute for Research in Fundamental Sciences (IPM) School of Mathematics-Isfahan Branch Logic Group http://math.ipm.ac.ir/isfahan/logic-group.htm

More information

The Calculus of Computation: Decision Procedures with Applications to Verification. Part I: FOUNDATIONS. by Aaron Bradley Zohar Manna

The Calculus of Computation: Decision Procedures with Applications to Verification. Part I: FOUNDATIONS. by Aaron Bradley Zohar Manna The Calculus of Computation: Decision Procedures with Applications to Verification Part I: FOUNDATIONS by Aaron Bradley Zohar Manna 1. Propositional Logic(PL) Springer 2007 1-1 1-2 Propositional Logic(PL)

More information

Incremental QBF Solving by DepQBF

Incremental QBF Solving by DepQBF Incremental QBF Solving by DepQBF Florian Lonsing and Uwe Egly Vienna University of Technology Institute of Information Systems Knowledge-Based Systems Group http://www.kr.tuwien.ac.at/ Abstract. The logic

More information

On Computing Backbones of Propositional Theories

On Computing Backbones of Propositional Theories On Computing Backbones of Propositional Theories Joao Marques-Silva 1 Mikoláš Janota 2 Inês Lynce 3 1 CASL/CSI, University College Dublin, Ireland 2 INESC-ID, Lisbon, Portugal 3 INESC-ID/IST, Lisbon, Portugal

More information

Foundations of Artificial Intelligence

Foundations of Artificial Intelligence Foundations of Artificial Intelligence 31. Propositional Logic: DPLL Algorithm Malte Helmert and Gabriele Röger University of Basel April 24, 2017 Propositional Logic: Overview Chapter overview: propositional

More information

Validating QBF Invalidity in HOL4

Validating QBF Invalidity in HOL4 Interactive Theorem Proving (ITP) 14 July, 2010 Quantified Boolean Formulae Quantified Boolean Formulae Motivation System Overview Related Work QBF = propositional logic + quantifiers over Boolean variables

More information

Comp487/587 - Boolean Formulas

Comp487/587 - Boolean Formulas Comp487/587 - Boolean Formulas 1 Logic and SAT 1.1 What is a Boolean Formula Logic is a way through which we can analyze and reason about simple or complicated events. In particular, we are interested

More information

Propositional Fragments for Knowledge Compilation and Quantified Boolean Formulae

Propositional Fragments for Knowledge Compilation and Quantified Boolean Formulae 1/15 Propositional Fragments for Knowledge Compilation and Quantified Boolean Formulae Sylvie Coste-Marquis Daniel Le Berre Florian Letombe Pierre Marquis CRIL, CNRS FRE 2499 Lens, Université d Artois,

More information

Proof Complexity of Quantified Boolean Formulas

Proof Complexity of Quantified Boolean Formulas Proof Complexity of Quantified Boolean Formulas Olaf Beyersdorff School of Computing, University of Leeds Olaf Beyersdorff Proof Complexity of Quantified Boolean Formulas 1 / 39 Proof complexity (in one

More information

COMP219: Artificial Intelligence. Lecture 20: Propositional Reasoning

COMP219: Artificial Intelligence. Lecture 20: Propositional Reasoning COMP219: Artificial Intelligence Lecture 20: Propositional Reasoning 1 Overview Last time Logic for KR in general; Propositional Logic; Natural Deduction Today Entailment, satisfiability and validity Normal

More information

Preprocessing QBF: Failed Literals and Quantified Blocked Clause Elimination

Preprocessing QBF: Failed Literals and Quantified Blocked Clause Elimination Preprocessing QBF: Failed Literals and Quantified Blocked Clause Elimination Florian Lonsing (joint work with Armin Biere and Martina Seidl) Institute for Formal Models and Verification (FMV) Johannes

More information

VLSI CAD: Lecture 4.1. Logic to Layout. Computational Boolean Algebra Representations: Satisfiability (SAT), Part 1

VLSI CAD: Lecture 4.1. Logic to Layout. Computational Boolean Algebra Representations: Satisfiability (SAT), Part 1 VLSI CAD: Logic to Layout Rob A. Rutenbar University of Illinois Lecture 4.1 Computational Boolean Algebra Representations: Satisfiability (SAT), Part 1 Some Terminology Satisfiability (called SAT for

More information

Lecture 2 Propositional Logic & SAT

Lecture 2 Propositional Logic & SAT CS 5110/6110 Rigorous System Design Spring 2017 Jan-17 Lecture 2 Propositional Logic & SAT Zvonimir Rakamarić University of Utah Announcements Homework 1 will be posted soon Propositional logic: Chapter

More information

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 3: Practical SAT Solving

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 3: Practical SAT Solving Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 3: Practical SAT Solving Matt Fredrikson mfredrik@cs.cmu.edu October 17, 2016 Matt Fredrikson SAT Solving 1 / 36 Review: Propositional

More information

Exploiting QBF Duality on a Circuit Representation

Exploiting QBF Duality on a Circuit Representation Proceedings of the Twenty-Fourth AAAI Conference on Artificial Intelligence (AAAI-10) Exploiting QBF Duality on a Circuit Representation Alexandra Goultiaeva and Fahiem Bacchus Department of Computer Science

More information

Solving SAT Modulo Theories

Solving SAT Modulo Theories Solving SAT Modulo Theories R. Nieuwenhuis, A. Oliveras, and C.Tinelli. Solving SAT and SAT Modulo Theories: from an Abstract Davis-Putnam-Logemann-Loveland Procedure to DPLL(T) Mooly Sagiv Motivation

More information

Propositional Reasoning

Propositional Reasoning Propositional Reasoning CS 440 / ECE 448 Introduction to Artificial Intelligence Instructor: Eyal Amir Grad TAs: Wen Pu, Yonatan Bisk Undergrad TAs: Sam Johnson, Nikhil Johri Spring 2010 Intro to AI (CS

More information

INF3170 / INF4171 Notes on Resolution

INF3170 / INF4171 Notes on Resolution INF3170 / INF4171 Notes on Resolution Andreas Nakkerud Autumn 2015 1 Introduction This is a short description of the Resolution calculus for propositional logic, and for first order logic. We will only

More information

Quantified Boolean Formulas Part 1

Quantified Boolean Formulas Part 1 Quantified Boolean Formulas Part 1 Uwe Egly Knowledge-Based Systems Group Institute of Information Systems Vienna University of Technology Results of the SAT 2009 application benchmarks for leading solvers

More information

CS156: The Calculus of Computation

CS156: The Calculus of Computation CS156: The Calculus of Computation Zohar Manna Winter 2010 It is reasonable to hope that the relationship between computation and mathematical logic will be as fruitful in the next century as that between

More information

LOGIC PROPOSITIONAL REASONING

LOGIC PROPOSITIONAL REASONING LOGIC PROPOSITIONAL REASONING WS 2017/2018 (342.208) Armin Biere Martina Seidl biere@jku.at martina.seidl@jku.at Institute for Formal Models and Verification Johannes Kepler Universität Linz Version 2018.1

More information

Tutorial 1: Modern SMT Solvers and Verification

Tutorial 1: Modern SMT Solvers and Verification University of Illinois at Urbana-Champaign Tutorial 1: Modern SMT Solvers and Verification Sayan Mitra Electrical & Computer Engineering Coordinated Science Laboratory University of Illinois at Urbana

More information

Clause/Term Resolution and Learning in the Evaluation of Quantified Boolean Formulas

Clause/Term Resolution and Learning in the Evaluation of Quantified Boolean Formulas Journal of Artificial Intelligence Research 1 (1993) 1-15 Submitted 6/91; published 9/91 Clause/Term Resolution and Learning in the Evaluation of Quantified Boolean Formulas Enrico Giunchiglia Massimo

More information

Computational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30)

Computational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30) Computational Logic Davide Martinenghi Free University of Bozen-Bolzano Spring 2010 Computational Logic Davide Martinenghi (1/30) Propositional Logic - sequent calculus To overcome the problems of natural

More information

CSE 555 HW 5 SAMPLE SOLUTION. Question 1.

CSE 555 HW 5 SAMPLE SOLUTION. Question 1. CSE 555 HW 5 SAMPLE SOLUTION Question 1. Show that if L is PSPACE-complete, then L is NP-hard. Show that the converse is not true. If L is PSPACE-complete, then for all A PSPACE, A P L. We know SAT PSPACE

More information

Formal Verification Methods 1: Propositional Logic

Formal Verification Methods 1: Propositional Logic Formal Verification Methods 1: Propositional Logic John Harrison Intel Corporation Course overview Propositional logic A resurgence of interest Logic and circuits Normal forms The Davis-Putnam procedure

More information

Satisfiability and SAT Solvers. CS 270 Math Foundations of CS Jeremy Johnson

Satisfiability and SAT Solvers. CS 270 Math Foundations of CS Jeremy Johnson Satisfiability and SAT Solvers CS 270 Math Foundations of CS Jeremy Johnson Conjunctive Normal Form Conjunctive normal form (products of sums) Conjunction of clauses (disjunction of literals) For each

More information

Propositional Logic: Evaluating the Formulas

Propositional Logic: Evaluating the Formulas Institute for Formal Models and Verification Johannes Kepler University Linz VL Logik (LVA-Nr. 342208) Winter Semester 2015/2016 Propositional Logic: Evaluating the Formulas Version 2015.2 Armin Biere

More information

Solving QBF with Combined Conjunctive and Disjunctive Normal Form

Solving QBF with Combined Conjunctive and Disjunctive Normal Form Solving QBF with Combined Conjunctive and Disjunctive Normal Form Lintao Zhang Microsoft Research Silicon Valley Lab 65 La Avenida, Mountain View, CA 94043, USA lintaoz@microsoft.com Abstract Similar to

More information

Fast DQBF Refutation

Fast DQBF Refutation Fast DQBF Refutation Bernd Finkbeiner and Leander Tentrup Saarland University Abstract. Dependency Quantified Boolean Formulas (DQBF) extend QBF with Henkin quantifiers, which allow for non-linear dependencies

More information

A brief introduction to Logic. (slides from

A brief introduction to Logic. (slides from A brief introduction to Logic (slides from http://www.decision-procedures.org/) 1 A Brief Introduction to Logic - Outline Propositional Logic :Syntax Propositional Logic :Semantics Satisfiability and validity

More information

Satisfiability Modulo Theories

Satisfiability Modulo Theories Satisfiability Modulo Theories Summer School on Formal Methods Menlo College, 2011 Bruno Dutertre and Leonardo de Moura bruno@csl.sri.com, leonardo@microsoft.com SRI International, Microsoft Research SAT/SMT

More information

Logic: First Order Logic

Logic: First Order Logic Logic: First Order Logic Raffaella Bernardi bernardi@inf.unibz.it P.zza Domenicani 3, Room 2.28 Faculty of Computer Science, Free University of Bolzano-Bozen http://www.inf.unibz.it/~bernardi/courses/logic06

More information

Introduction to Artificial Intelligence Propositional Logic & SAT Solving. UIUC CS 440 / ECE 448 Professor: Eyal Amir Spring Semester 2010

Introduction to Artificial Intelligence Propositional Logic & SAT Solving. UIUC CS 440 / ECE 448 Professor: Eyal Amir Spring Semester 2010 Introduction to Artificial Intelligence Propositional Logic & SAT Solving UIUC CS 440 / ECE 448 Professor: Eyal Amir Spring Semester 2010 Today Representation in Propositional Logic Semantics & Deduction

More information

Binary Decision Diagrams Boolean Functions

Binary Decision Diagrams Boolean Functions Binary Decision Diagrams Representation of Boolean Functions BDDs, OBDDs, ROBDDs Operations Model-Checking over BDDs 72 Boolean functions:b = {0,1}, f :B B B Boolean Functions Boolean expressions: t ::=

More information

Dependency Schemes in QBF Calculi: Semantics and Soundness

Dependency Schemes in QBF Calculi: Semantics and Soundness Dependency Schemes in QBF Calculi: Semantics and Soundness Olaf Beyersdorff and Joshua Blinkhorn School of Computing, University of Leeds, UK {O.Beyersdorff,scjlb}@leeds.ac.uk Abstract. We study the parametrisation

More information

Quantified Boolean Formulas: Complexity and Expressiveness

Quantified Boolean Formulas: Complexity and Expressiveness Dagstuhl SAT Interactions 2012 Quantified Boolean Formulas: Complexity and Expressiveness Uwe Bubeck University of Paderborn 20.11.2012 Outline Introduction Free Variables and Equivalence Complexity Expressiveness

More information

An instance of SAT is defined as (X, S)

An instance of SAT is defined as (X, S) SAT: Propositional Satisfiability 22c:45 Artificial Intelligence Russell & Norvig, Ch. 7.6 Validity vs. Satisfiability Validity: A sentence is valid if it is true in every interpretation (every interpretation

More information

Topics in Model-Based Reasoning

Topics in Model-Based Reasoning Towards Integration of Proving and Solving Dipartimento di Informatica Università degli Studi di Verona Verona, Italy March, 2014 Automated reasoning Artificial Intelligence Automated Reasoning Computational

More information

An Introduction to SAT Solving

An Introduction to SAT Solving An Introduction to SAT Solving Applied Logic for Computer Science UWO December 3, 2017 Applied Logic for Computer Science An Introduction to SAT Solving UWO December 3, 2017 1 / 46 Plan 1 The Boolean satisfiability

More information

Fixed-parameter tractable reductions to SAT. Vienna University of Technology

Fixed-parameter tractable reductions to SAT. Vienna University of Technology Fixed-parameter tractable reductions to SAT Ronald de Haan Stefan Szeider Vienna University of Technology Reductions to SAT Problems in NP can be encoded into SAT in poly-time. Problems at the second level

More information

Lecture 2: Symbolic Model Checking With SAT

Lecture 2: Symbolic Model Checking With SAT Lecture 2: Symbolic Model Checking With SAT Edmund M. Clarke, Jr. School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 (Joint work over several years with: A. Biere, A. Cimatti, Y.

More information

Lecture 22: PSPACE

Lecture 22: PSPACE 6.045 Lecture 22: PSPACE 1 VOTE VOTE VOTE For your favorite course on automata and complexity Please complete the online subject evaluation for 6.045 2 Final Exam Information Who: You On What: Everything

More information

SAT-Solving: From Davis- Putnam to Zchaff and Beyond Day 3: Recent Developments. Lintao Zhang

SAT-Solving: From Davis- Putnam to Zchaff and Beyond Day 3: Recent Developments. Lintao Zhang SAT-Solving: From Davis- Putnam to Zchaff and Beyond Day 3: Recent Developments Requirements for SAT solvers in the Real World Fast & Robust Given a problem instance, we want to solve it quickly Reliable

More information

Chapter 4: Classical Propositional Semantics

Chapter 4: Classical Propositional Semantics Chapter 4: Classical Propositional Semantics Language : L {,,, }. Classical Semantics assumptions: TWO VALUES: there are only two logical values: truth (T) and false (F), and EXTENSIONALITY: the logical

More information

A Symbolic Approach to Safety LTL Synthesis

A Symbolic Approach to Safety LTL Synthesis A Symbolic Approach to Safety LTL Synthesis Shufang Zhu 1 Lucas M. Tabajara 2 Jianwen Li Geguang Pu 1 Moshe Y. Vardi 2 1 East China Normal University 2 Rice Lucas M. Tabajara (Rice University) 2 University

More information

Title: Logical Agents AIMA: Chapter 7 (Sections 7.4 and 7.5)

Title: Logical Agents AIMA: Chapter 7 (Sections 7.4 and 7.5) B.Y. Choueiry 1 Instructor s notes #12 Title: Logical Agents AIMA: Chapter 7 (Sections 7.4 and 7.5) Introduction to Artificial Intelligence CSCE 476-876, Fall 2018 URL: www.cse.unl.edu/ choueiry/f18-476-876

More information

Propositional Calculus

Propositional Calculus Propositional Calculus Dr. Neil T. Dantam CSCI-498/598 RPM, Colorado School of Mines Spring 2018 Dantam (Mines CSCI, RPM) Propositional Calculus Spring 2018 1 / 64 Calculus? Definition: Calculus A well

More information

CS156: The Calculus of Computation Zohar Manna Autumn 2008

CS156: The Calculus of Computation Zohar Manna Autumn 2008 Page 3 of 52 Page 4 of 52 CS156: The Calculus of Computation Zohar Manna Autumn 2008 Lecturer: Zohar Manna (manna@cs.stanford.edu) Office Hours: MW 12:30-1:00 at Gates 481 TAs: Boyu Wang (wangboyu@stanford.edu)

More information

Computation and Inference

Computation and Inference Computation and Inference N. Shankar Computer Science Laboratory SRI International Menlo Park, CA July 13, 2018 Length of the Longest Increasing Subsequence You have a sequence of numbers, e.g., 9, 7,

More information

Theory of Computation Space Complexity. (NTU EE) Space Complexity Fall / 1

Theory of Computation Space Complexity. (NTU EE) Space Complexity Fall / 1 Theory of Computation Space Complexity (NTU EE) Space Complexity Fall 2016 1 / 1 Space Complexity Definition 1 Let M be a TM that halts on all inputs. The space complexity of M is f : N N where f (n) is

More information

CS 512, Spring 2017, Handout 10 Propositional Logic: Conjunctive Normal Forms, Disjunctive Normal Forms, Horn Formulas, and other special forms

CS 512, Spring 2017, Handout 10 Propositional Logic: Conjunctive Normal Forms, Disjunctive Normal Forms, Horn Formulas, and other special forms CS 512, Spring 2017, Handout 10 Propositional Logic: Conjunctive Normal Forms, Disjunctive Normal Forms, Horn Formulas, and other special forms Assaf Kfoury 5 February 2017 Assaf Kfoury, CS 512, Spring

More information

Self-assessment due: Monday 3/18/2019 at 11:59pm (submit via Gradescope)

Self-assessment due: Monday 3/18/2019 at 11:59pm (submit via Gradescope) CS 188 Spring 2019 Introduction to Artificial Intelligence Written HW 6 Sol. Self-assessment due: Monday 3/18/2019 at 11:59pm (submit via Gradescope) Instructions for self-assessment: Take your original

More information

Pythagorean Triples and SAT Solving

Pythagorean Triples and SAT Solving Pythagorean Triples and SAT Solving Moti Ben-Ari Department of Science Teaching Weizmann Institute of Science http://www.weizmann.ac.il/sci-tea/benari/ c 2017-18 by Moti Ben-Ari. This work is licensed

More information

Lecture 23: More PSPACE-Complete, Randomized Complexity

Lecture 23: More PSPACE-Complete, Randomized Complexity 6.045 Lecture 23: More PSPACE-Complete, Randomized Complexity 1 Final Exam Information Who: You On What: Everything through PSPACE (today) With What: One sheet (double-sided) of notes are allowed When:

More information

ArgoCaLyPso SAT-Inspired Coherent Logic Prover

ArgoCaLyPso SAT-Inspired Coherent Logic Prover ArgoCaLyPso SAT-Inspired Coherent Logic Prover Mladen Nikolić and Predrag Janičić Automated Reasoning GrOup (ARGO) Faculty of Mathematics University of, February, 2011. Motivation Coherent logic (CL) (also

More information

Propositional Calculus: Formula Simplification, Essential Laws, Normal Forms

Propositional Calculus: Formula Simplification, Essential Laws, Normal Forms P Formula Simplification, Essential Laws, Normal Forms Lila Kari University of Waterloo P Formula Simplification, Essential Laws, Normal CS245, Forms Logic and Computation 1 / 26 Propositional calculus

More information

Solving QBF by Clause Selection (preprint of an IJCAI 15 paper)

Solving QBF by Clause Selection (preprint of an IJCAI 15 paper) Solving QBF by lause Selection (preprint of an IJAI 15 paper) Mikoláš Janota 1 and Joao Marques-Silva 1,2 1 INES-ID, IST, Lisbon, Portugal 2 University ollege Dublin, Ireland mikolas@sat.inesc-id.pt, jpms@tecnico.ulisboa.pt

More information

Propositional and Predicate Logic. jean/gbooks/logic.html

Propositional and Predicate Logic.   jean/gbooks/logic.html CMSC 630 February 10, 2009 1 Propositional and Predicate Logic Sources J. Gallier. Logic for Computer Science, John Wiley and Sons, Hoboken NJ, 1986. 2003 revised edition available on line at http://www.cis.upenn.edu/

More information

From SAT To SMT: Part 1. Vijay Ganesh MIT

From SAT To SMT: Part 1. Vijay Ganesh MIT From SAT To SMT: Part 1 Vijay Ganesh MIT Software Engineering & SMT Solvers An Indispensable Tactic for Any Strategy Formal Methods Program Analysis SE Goal: Reliable/Secure Software Automatic Testing

More information

Solving QBF Instances With Nested SAT Solvers

Solving QBF Instances With Nested SAT Solvers Solving QBF Instances With Nested SAT Solvers Bart Bogaerts and Tomi Janhunen and Shahab Tasharrofi Helsinki Institute for Information Technology HIIT Department of Computer Science Aalto University, FI-00076

More information

Lecture 9: The Splitting Method for SAT

Lecture 9: The Splitting Method for SAT Lecture 9: The Splitting Method for SAT 1 Importance of SAT Cook-Levin Theorem: SAT is NP-complete. The reason why SAT is an important problem can be summarized as below: 1. A natural NP-Complete problem.

More information

Foundations of Artificial Intelligence

Foundations of Artificial Intelligence Foundations of Artificial Intelligence 8. Satisfiability and Model Construction Davis-Putnam-Logemann-Loveland Procedure, Phase Transitions, GSAT Joschka Boedecker and Wolfram Burgard and Bernhard Nebel

More information

Disjunction/Conjunction Normal Form

Disjunction/Conjunction Normal Form Normal Forms Well formed formula (wff) also called formula, is a string consists of propositional variables, connectives, and parenthesis used in the proper manner. E.g. ((p q) ( p r)) pq r is a disjunction

More information

Computation and Logic Definitions

Computation and Logic Definitions Computation and Logic Definitions True and False Also called Boolean truth values, True and False represent the two values or states an atom can assume. We can use any two distinct objects to represent

More information

Verification using Satisfiability Checking, Predicate Abstraction, and Craig Interpolation. Himanshu Jain THESIS ORAL TALK

Verification using Satisfiability Checking, Predicate Abstraction, and Craig Interpolation. Himanshu Jain THESIS ORAL TALK Verification using Satisfiability Checking, Predicate Abstraction, and Craig Interpolation Himanshu Jain THESIS ORAL TALK 1 Computer Systems are Pervasive Computer Systems = Software + Hardware Software/Hardware

More information

A Solver for Quantified Formula Problem Q-ALL SAT

A Solver for Quantified Formula Problem Q-ALL SAT Dec 8, 2008 A Solver for Quantified Formula Problem Q-ALL SAT Anja Remshagen Department of Computer Science, University of West Georgia Klaus Truemper Department of Computer Science, University of Texas

More information

Propositional Logic Basics Propositional Equivalences Normal forms Boolean functions and digital circuits. Propositional Logic.

Propositional Logic Basics Propositional Equivalences Normal forms Boolean functions and digital circuits. Propositional Logic. Propositional Logic Winter 2012 Propositional Logic: Section 1.1 Proposition A proposition is a declarative sentence that is either true or false. Which ones of the following sentences are propositions?

More information

Formal Methods for Java

Formal Methods for Java Formal Methods for Java Lecture 12: Soundness of Sequent Calculus Jochen Hoenicke Software Engineering Albert-Ludwigs-University Freiburg June 12, 2017 Jochen Hoenicke (Software Engineering) Formal Methods

More information

3 Propositional Logic

3 Propositional Logic 3 Propositional Logic 3.1 Syntax 3.2 Semantics 3.3 Equivalence and Normal Forms 3.4 Proof Procedures 3.5 Properties Propositional Logic (25th October 2007) 1 3.1 Syntax Definition 3.0 An alphabet Σ consists

More information

PSPACE COMPLETENESS TBQF. THURSDAY April 17

PSPACE COMPLETENESS TBQF. THURSDAY April 17 PSPACE COMPLETENESS TBQF THURSDAY April 17 Definition: Language B is PSPACE-complete if: 1. B PSPACE 2. Every A in PSPACE is poly-time reducible to B (i.e. B is PSPACE-hard) QUANTIFIED BOOLEAN FORMULAS

More information

ECE473 Lecture 15: Propositional Logic

ECE473 Lecture 15: Propositional Logic ECE473 Lecture 15: Propositional Logic Jeffrey Mark Siskind School of Electrical and Computer Engineering Spring 2018 Siskind (Purdue ECE) ECE473 Lecture 15: Propositional Logic Spring 2018 1 / 23 What

More information

Non-CNF QBF Solving with QCIR

Non-CNF QBF Solving with QCIR Non-CNF QBF Solving with QCIR Charles Jordan Graduate School of Information Science and Technology Hokkaido University Will Klieber Software Engineering Institute Carnegie Mellon University Martina Seidl

More information

Practical SAT Solving

Practical SAT Solving Practical SAT Solving Lecture 10 Carsten Sinz, Tomáš Balyo June 27, 2016 INSTITUTE FOR THEORETICAL COMPUTER SCIENCE KIT University of the State of Baden-Wuerttemberg and National Laboratory of the Helmholtz

More information

CSE507. Introduction. Computer-Aided Reasoning for Software. Emina Torlak courses.cs.washington.edu/courses/cse507/17wi/

CSE507. Introduction. Computer-Aided Reasoning for Software. Emina Torlak courses.cs.washington.edu/courses/cse507/17wi/ Computer-Aided Reasoning for Software CSE507 courses.cs.washington.edu/courses/cse507/17wi/ Introduction Emina Torlak emina@cs.washington.edu Today What is this course about? Course logistics Review of

More information

Mathematical Logic Part Three

Mathematical Logic Part Three Mathematical Logic Part hree riday our Square! oday at 4:15PM, Outside Gates Announcements Problem Set 3 due right now. Problem Set 4 goes out today. Checkpoint due Monday, October 22. Remainder due riday,

More information

Classical Propositional Logic

Classical Propositional Logic Classical Propositional Logic Peter Baumgartner http://users.cecs.anu.edu.au/~baumgart/ Ph: 02 6218 3717 Data61/CSIRO and ANU July 2017 1 / 71 Classical Logic and Reasoning Problems A 1 : Socrates is a

More information

Bounded-width QBF is PSPACE-complete

Bounded-width QBF is PSPACE-complete Bounded-width QBF is PSPACE-complete Albert Atserias Universitat Politècnica de Catalunya Barcelona, Spain atserias@lsi.upc.edu Sergi Oliva Universitat Politècnica de Catalunya Barcelona, Spain oliva@lsi.upc.edu

More information

Lecture 1: Logical Foundations

Lecture 1: Logical Foundations Lecture 1: Logical Foundations Zak Kincaid January 13, 2016 Logics have two components: syntax and semantics Syntax: defines the well-formed phrases of the language. given by a formal grammar. Typically

More information

Normal Forms of Propositional Logic

Normal Forms of Propositional Logic Normal Forms of Propositional Logic Bow-Yaw Wang Institute of Information Science Academia Sinica, Taiwan September 12, 2017 Bow-Yaw Wang (Academia Sinica) Normal Forms of Propositional Logic September

More information

Formal Modeling with Propositional Logic

Formal Modeling with Propositional Logic Formal Modeling with Propositional Logic Assaf Kfoury February 6, 2017 (last modified: September 3, 2018) Contents 1 The Pigeon Hole Principle 2 2 Graph Problems 3 2.1 Paths in Directed Graphs..................................

More information

Lecture Notes on SAT Solvers & DPLL

Lecture Notes on SAT Solvers & DPLL 15-414: Bug Catching: Automated Program Verification Lecture Notes on SAT Solvers & DPLL Matt Fredrikson André Platzer Carnegie Mellon University Lecture 10 1 Introduction In this lecture we will switch

More information

Logic: Propositional Logic (Part I)

Logic: Propositional Logic (Part I) Logic: Propositional Logic (Part I) Alessandro Artale Free University of Bozen-Bolzano Faculty of Computer Science http://www.inf.unibz.it/ artale Descrete Mathematics and Logic BSc course Thanks to Prof.

More information

A PSPACE Subclass of Dependency Quantified Boolean Formulas and Its Effective Solving

A PSPACE Subclass of Dependency Quantified Boolean Formulas and Its Effective Solving Preprint from 33th AAAI Conference on Artificial Intelligence (AAAI-19), January 2019, Honolulu, USA A PSPACE Subclass of Dependency Quantified Boolean Formulas and Its Effective Solving Christoph Scholl,1

More information

A New 3-CNF Transformation by Parallel-Serial Graphs 1

A New 3-CNF Transformation by Parallel-Serial Graphs 1 A New 3-CNF Transformation by Parallel-Serial Graphs 1 Uwe Bubeck, Hans Kleine Büning University of Paderborn, Computer Science Institute, 33098 Paderborn, Germany Abstract For propositional formulas we

More information

Tecniche di Verifica. Introduction to Propositional Logic

Tecniche di Verifica. Introduction to Propositional Logic Tecniche di Verifica Introduction to Propositional Logic 1 Logic A formal logic is defined by its syntax and semantics. Syntax An alphabet is a set of symbols. A finite sequence of these symbols is called

More information

Description Logics. Foundations of Propositional Logic. franconi. Enrico Franconi

Description Logics. Foundations of Propositional Logic.   franconi. Enrico Franconi (1/27) Description Logics Foundations of Propositional Logic Enrico Franconi franconi@cs.man.ac.uk http://www.cs.man.ac.uk/ franconi Department of Computer Science, University of Manchester (2/27) Knowledge

More information

Sat-Solving Based on Boundary Point Elimination

Sat-Solving Based on Boundary Point Elimination Sat-Solving Based on Boundary Point Elimination Eugene Goldberg, Pete Manolios Northeastern University, USA HVC-2010, October 5-7, Haifa, Israel Outline Introduction BPE-SAT Experimental results and conclusions

More information

Playing with Quantified Satisfaction

Playing with Quantified Satisfaction Nikolaj Bjørner 1 and Mikoláš Janota 2 1 Microsoft Research, Redmond, USA 2 Microsoft Research, Cambridge, UK Abstract We develop an algorithm for satisfiability of quantified formulas. The algorithm is

More information

Rewriting for Satisfiability Modulo Theories

Rewriting for Satisfiability Modulo Theories 1 Dipartimento di Informatica Università degli Studi di Verona Verona, Italy July 10, 2010 1 Joint work with Chris Lynch (Department of Mathematics and Computer Science, Clarkson University, NY, USA) and

More information

Propositional and First Order Reasoning

Propositional and First Order Reasoning Propositional and First Order Reasoning Terminology Propositional variable: boolean variable (p) Literal: propositional variable or its negation p p Clause: disjunction of literals q \/ p \/ r given by

More information

Non-Deterministic Time

Non-Deterministic Time Non-Deterministic Time Master Informatique 2016 1 Non-Deterministic Time Complexity Classes Reminder on DTM vs NDTM [Turing 1936] (q 0, x 0 ) (q 1, x 1 ) Deterministic (q n, x n ) Non-Deterministic (q

More information

Algorithms for Satisfiability beyond Resolution.

Algorithms for Satisfiability beyond Resolution. Algorithms for Satisfiability beyond Resolution. Maria Luisa Bonet UPC, Barcelona, Spain Oaxaca, August, 2018 Co-Authors: Sam Buss, Alexey Ignatiev, Joao Marques-Silva, Antonio Morgado. Motivation. Satisfiability

More information

Language of Propositional Logic

Language of Propositional Logic Logic A logic has: 1. An alphabet that contains all the symbols of the language of the logic. 2. A syntax giving the rules that define the well formed expressions of the language of the logic (often called

More information