SAT, CSP, and proofs. Ofer Strichman Technion, Haifa. Tutorial HVC 13

Size: px
Start display at page:

Download "SAT, CSP, and proofs. Ofer Strichman Technion, Haifa. Tutorial HVC 13"

Transcription

1 SAT, CSP, and proofs Ofer Strichman Technion, Haifa Tutorial HVC 13 1

2 The grand plan for today Intro: the role of SAT, CSP and proofs in verification SAT how it works, and how it produces proofs CSP - how it works, and how it produces proofs Making proofs smaller 2

3 Why SAT? Example: is (x 1 Æ (x 2 Ç x 1 )) satisfiable? x 1,x 2 B Applications in verification: Formal verification: (Bounded) model checking for hardware [ ] Over a dozen commerncial tools (Bounded) model checking for software [ ] CBMC, SAT-ABS, CLLVM, Satisfiability Modulo Theories (SMT) [ ] e.g. MS Z3 used in dozens of software analysis tools (SymDiff, VCC, Havoc, Spec#, ) 3

4 Why SAT? Example: is (x 1 Æ (x 2 Ç x 1 )) satisfiable? x 1,x 2 B Applications in verification: Simulation: Test generation for hardware Test generation for software via SMT MS-SAGE, KLEE, 4

5 Why CSP (Constraints Satisfaction Problem)? Example: is (AllDiff(x 1,x 2, x 3 ) Ç x 1 < x Æ x 2 > x 3-1 )) satisfiable? x 1,x 2, x 3 [0..10] Z Applications in verification: Formal verification:?? Simulation: test generation for hardware 5

6 Why CSP (Constraints Satisfaction Problem)? Example: is (AllDiff(x 1,x 2, x 3 ) Ç x 1 < x Æ x 2 > x 3-1 )) satisfiable? x 1,x 2, x 3 [0..10] Z A Higher-level modeling language Can lead to an order of magniture smaller model size. Does not matter much in practice Certain constraints can be solved faster than in SAT Some (e.g. all-different ) can be solved directly in P 6

7 SAT and CSP SAT is crawling towards CSP Various SAT solvers now support high-level constraints over Boolean variables: Cripto-minisat supports XOR constraints MiniSat+ supports cardinality constraints CSP is crawling towards SAT: Some solvers support reduction to SAT Solution strategy now mimics SAT 7

8 Why proofs? Traditionally the focus was on finding models No information was given in case of UNSAT As of Chaff ( ) solvers produce proofs Originally just to validate result 8

9 Why proofs? Several killer-applications (SAT): Validate UNSAT results From the proof we can extract an unsat core Used in formal verification [AM03, KKB09, BKOSSB07 ] Uses of the proof itself: Interpolation-based model checking [M03]. Can we foresee usage for proofs in CSP? 9

10 The grand plan for today Intro: the role of SAT, CSP and proofs in verification SAT how it works, and how it produces proofs CSP - how it works, and how it produces proofs Making proofs smaller 10

11 CNF-SAT Conjunctive Normal Form: Conjunction of disjunction of literals. Example: ( x 1 Ç x 2 ) Æ (x 2 Ç x 4 Ç x 1 ) Æ... Polynomial transformation to CNF due to Tseitin (1970) Requires adding auxiliary variables. 11

12 Main steps SAT SAT Decide Variable, value Boolean Constraints Propagation (BCP) infer implied assignments Analyze conflict applies learning computes backtracking level 12

13 About that constraints propagation given ( x 1 Ç x 2 ) Æ (x 2 Ç x 4 Ç x 1 ) Æ... BCP: x 1 = 1 x 2 = 0 x 4 = 1 13

14 SAT essentials 14

15 Implication graphs and learning Current truth assignment: {x 9 =0@1,x 10 =0@3, x 11 =0@3, x 12 =1@2, x 13 =1@2} Current decision assignment: {x 1 =1@6} ω 1 = ( x 1 x 2 ) x 10 =0@3 ω 2 = ( x 1 x 3 x 9 ) x 2 =1@6 ω 4 x 5 =1@6 ω 3 = ( x 2 x 3 x 4 ) ω 4 = ( x 4 x 5 x 10 ) ω 5 = ( x 4 x 6 x 11 ) x 1 =1@6 ω 1 ω 2 ω 3 ω 3 ω 4 x 4 =1@6 ω 5 ω 6 ω 6 κ conflict ω 6 = ( x 5 x 6 ) ω 2 x 3 =1@6 ω 5 x6 =1@6 ω 7 = (x 1 x 7 x 12 ) ω 8 = (x 1 x 8 ) x 9 =0@1 x 11 =0@3 ω 9 = ( x 7 x 8 x 13 ) We learn the conflict clauseω 10 : ( x 1 Ç x 9 Ç x 11 Ç x 10 ) and backtrack to the highest (deepest) dec. level in this clause (6). 15

16 Implication graph, flipped assignment ω 1 = ( x 1 x 2 ) ω 2 = ( x 1 x 3 x 9 ) ω 3 = ( x 2 x 3 x 4 ) ω 4 = ( x 4 x 5 x 10 ) ω 5 = ( x 4 x 6 x 11 ) ω 6 = ( x 5 x 6 ) ω 7 = (x 1 x 7 x 12 ) ω 8 = (x 1 x 8 ) ω 9 = ( x 7 x 8 x 13 ) ω 10 : ( x 1 Ç x 9 Ç x 11 Ç x 10 ) x 10 =0@3 x 9 =0@1 ω 10 x 11 =0@3 ω 10 ω 10 Due to the conflict clause ω 8 x 1 =0@6 ω 7 ω 7 x 12 =1@2 x 8 =1@6 ω 9 x 13 =1@2 ω 9 κ x 7 =1@6 ω 9 We learn the conflict clauseω 11 : ( x 13 Ç x 9 Ç x 10 Ç x 11 Ç x 12 ) and backtrack to the highest (deepest) dec. level in this clause (3). 16

17 Non-chronological backtracking Which assignments caused the conflicts? x 9 = 0@1 x 10 = 0@3 x 11 = 0@3 x 12 = 1@2 x 13 = 1@2 These assignments Are sufficient for Causing a conflict. x Decision level Backtrack to decision level 3 κ κ Nonchronological backtracking 17

18 Learning and resolution Learning of a clause = inference by resolution. To be explained This is the key for producing a machine-checkable proof 18

19 Resolution By example: Formally: 19

20 Resolution proof A proof: (1 3) Æ (-1 2 5) Æ (-1 4) Æ (-1-4) (3 5) (1 3) (-1 2 5) (2 3 5) (1-2) (-1 4) (-1-4) (1 3 5) (-1) (3 5) 20

21 Resolution proof Hyper resolution proof A proof: (1 3) Æ (-1 2 5) Æ (-1 4) Æ (-1-4) (3 5) (1 3) (-1 2 5) (-1 4) (-1-4) (3 5) 21

22 Conflict clauses and resolution Consider the following example: Conflict clause: c 5 : (x 2 Ç x 4 Çx 10 ) We show that c 5 is inferred by resolution from c 1,,c 4 22

23 Conflict clauses and resolution Conflict clause: c 5 : (x 2 Ç x 4 Çx 10 ) BCP order: x 4,x 5,x 6,x 7 T1 = Res(c 4,c 3,x 7 ) = ( x 5 Ç x 6 ) T2 = Res(T1, c 2, x 6 ) = ( x 4 Ç x 5 Ç X 10 ) T3 = Res(T2,c 1,x 5 ) = (x 2 Ç x 4 Ç x 10 ) 23

24 The Resolution-Graph (Hyper) Resolution Graph ω 1 ω 2 ω 2 ω3 ω 3 ω 4 ω 4 ω 5 ω 5 ω 6 ω 6 κ conflict ω 1 ω 2 ω 3 ω 10 can be inferred via resolution from ω 1...ω 6 ω 10 ω 4 ω 11 ω 9 ω 5 ω 10 ω 10 ω 10 ω 8 ω 7 ω9 ω 9 κ conflict ω 6 ω 7 ω 8 ω 9 ω 7 24

25 The resolution graph What is it good for? Example: for computing an Unsatisfiable core [Picture Borrowed from Zhang, Malik SAT 03] 25

26 The grand plan for today Intro: the role of SAT, CSP and proofs in verification SAT how it works, and how it produces proofs CSP - how it works, and how it produces proofs Making proofs smaller 26

27 Main steps SAT and CSP* SAT Decide Variable, value CSP Same Boolean Constraints Propagation (BCP) infer implied assignments Boolean Constraints Propagation (CP) same Analyze conflict Same applies learning computes backtracking level *As implemented in PCS / Michael Veksler 27

28 About that constraints propagation Given x 1, x 2, x 3 [1..3], AllDifferent(x 1, x 2, x 3 ) CP: x 1 = 1 x 2, x 3 [2..3] 28

29 What about CSP proofs? SAT solvers generate proofs: From initial clauses to ( ). Inference is via the binary-resolution rule. Unlike SAT solvers, CSPs: have non-boolean domains, and non-clausal constraints. Can this gap be bridged? The following is based on [SV10] 29

30 Signed CNF 30

31 Signed resolution A binary-resolution rule for signed-cnf: Signed-clauses What about other constraints? e.g. should we just convert CSP to signed CNF? 31

32 Signed resolution Q: should we just convert CSP to signed CNF? A: No, because it is generally inefficient: e.g., x y requires: 32

33 Towards a solution Solution: introduce clauses lazily. Consider a general constraint c, such that: In the context of l 1 Æ l 2 Æ Æ l n, propagation of c implies I : (l 1 Æ l 2 Æ Æ l n Æ c) l 33

34 Towards a solution (l 1 Æ l 2 Æ Æ l n Æ c) l Find an explanation clause e such that: e is not too strong: c e e is strong enough: (l 1 Æl 2 Æ Æ l n Æ e) l 34

35 The structure of a CSP proof 35

36 Explanation rules 36

37 Explanation rules example 1 parameterized m = the value that trigerred the rule 37

38 Explanation rules example 1 38

39 Explanation rules example 2 Instantiate m with max(domain(y)) 39

40 Explanation rules example 2 40

41 Each constraint has its rule 41

42 So this is how the proof looks like 42

43 The grand plan for today Intro: the role of SAT, CSP and proofs in verification SAT how it works, and how it produces proofs CSP - how it works, and how it produces proofs Making proofs smaller 43

44 Minimizing the core The proof is not unique. Different proofs / different cores. Can we find a minimum / minimal / smaller cores/proofs? 44

45 Minimizing the core Core compression Smaller core [ZM03, ] Minimal core [DHN06, ] Min-core-biased search [NRS 13] Proof compression: Exponential-time transformations [GKS 06] Linear time transformations Recycle pivots [BFHSS 08], 45

46 Core compression (smaller core) A basic approach: run until reaching a fixpoint [chaff] initially last_core = ϕ SAT solver core core core == last_core? no last_core = core yes 46

47 Core compression (minimal core) Initially ϕ s clauses are unmarked Return ϕ Remove an unmarked clause c ϕ SAT(ϕ)? yes mark c no ϕ := core 47

48 Proof-compression linear-time transformation / Recycle-pivots Based on the following fact: Every resolution proof can be made regular which means that each pivot appears not more than once on every path. 48

49 Proof-compression linear-time transformation / Recycle-pivots

50 Proof-compression linear-time transformation / Recycle-pivots {2,-1,-2} {2,-1} {2,-1} {2,1} 1 {-2} {2} Reconstruct proof Collect removable literals 50

51 Proof-compression linear-time transformation / Recycle-pivots

52 Proof-compression linear-time transformation / Recycle-pivots Resolution graphs are DAGs So, a node is on more than one path to the empty clause

53 Proof-compression linear-time transformation / Recycle-pivots Resolution graphs are DAGs So, a node is on more than one path to the empty clause

54 Proof-compression linear-time transformation / Recycle-pivots

55 Proof-compression linear-time transformation / Recycle-pivots B A Does A dominate B? Dominance relation can be found in O( E log V ) Problem: need to be updated each time. () 55

56 Proof-compression linear-time transformation / Recycle-pivots Possible solution: Stop propagating information across nodes with more than one child. {2,-1,-2} {2,-1} {2,-1} {2,1} {-2} {2}

57 Proof-compression linear-time transformations /recent advances Recycle pivots with intersection P. Fontaine, S. Merz and B. W.Paleo. Compression of Propositional Resolution Proofs via Partial Regularization. In CADE 11. Local transformation Framework R. Bruttomesso, S.F. Rollini, N. Sharygina, and A. Tsitovich. Flexible Interpolation with Local Proof Transformations. In ICCAD 10. S.F. Rollini, R. Bruttomesso and N. Sharygina. An Efficient and Flexible Approach to Resolution Proof Reduction. In HVC 10. Lower units P. Fontaine, S. Merz and B. W.Paleo. Compression of Propositional Resolution Proofs via Partial Regularization. In CADE 11. Structural hashing S. Cotton. Two Techniques for Minimizing Resolution Proofs. In SAT 10. All implemented in PeRIPLO by S. Rollini. Together they reduce the proof size by ~40%. 57

58 Summary SAT and CSP are not only about finding models They can provide proofs Proofs are important for validation extracting cores various formal-verification techniques Minimizing proofs/cores is a subject for intense research. 58

59 Questions? 59

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

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

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

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

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

SMT Unsat Core Minimization

SMT Unsat Core Minimization SMT Unsat Core Minimization O F E R G U T H M A N N, O F E R S T R I C H M A N, A N N A T R O S TA N E T S K I F M C A D 2 0 1 6 1 Satisfiability Modulo Theories Satisfiability Modulo Theories (SMT): decides

More information

Heuristics for Efficient SAT Solving. As implemented in GRASP, Chaff and GSAT.

Heuristics for Efficient SAT Solving. As implemented in GRASP, Chaff and GSAT. Heuristics for Efficient SAT Solving As implemented in GRASP, Chaff and GSAT. Formulation of famous problems as SAT: k-coloring (1/2) The K-Coloring problem: Given an undirected graph G(V,E) and a natural

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

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

Introduction to SAT (constraint) solving. Justyna Petke

Introduction to SAT (constraint) solving. Justyna Petke Introduction to SAT (constraint) solving Justyna Petke SAT, SMT and CSP solvers are used for solving problems involving constraints. The term constraint solver, however, usually refers to a CSP solver.

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

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

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

Propositional Logic. Methods & Tools for Software Engineering (MTSE) Fall Prof. Arie Gurfinkel

Propositional Logic. Methods & Tools for Software Engineering (MTSE) Fall Prof. Arie Gurfinkel Propositional Logic Methods & Tools for Software Engineering (MTSE) Fall 2017 Prof. Arie Gurfinkel References Chpater 1 of Logic for Computer Scientists http://www.springerlink.com/content/978-0-8176-4762-9/

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

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

Proof Complexity Meets Algebra

Proof Complexity Meets Algebra ICALP 17, Warsaw 11th July 2017 (CSP problem) P 3-COL S resolution (proof system) Proofs in S of the fact that an instance of P is unsatisfiable. Resolution proofs of a graph being not 3-colorable. Standard

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

Chapter 2. Reductions and NP. 2.1 Reductions Continued The Satisfiability Problem (SAT) SAT 3SAT. CS 573: Algorithms, Fall 2013 August 29, 2013

Chapter 2. Reductions and NP. 2.1 Reductions Continued The Satisfiability Problem (SAT) SAT 3SAT. CS 573: Algorithms, Fall 2013 August 29, 2013 Chapter 2 Reductions and NP CS 573: Algorithms, Fall 2013 August 29, 2013 2.1 Reductions Continued 2.1.1 The Satisfiability Problem SAT 2.1.1.1 Propositional Formulas Definition 2.1.1. Consider a set of

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

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

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 Logic. Testing, Quality Assurance, and Maintenance Winter Prof. Arie Gurfinkel

Propositional Logic. Testing, Quality Assurance, and Maintenance Winter Prof. Arie Gurfinkel Propositional Logic Testing, Quality Assurance, and Maintenance Winter 2018 Prof. Arie Gurfinkel References Chpater 1 of Logic for Computer Scientists http://www.springerlink.com/content/978-0-8176-4762-9/

More information

The Eager Approach to SMT. Eager Approach to SMT

The Eager Approach to SMT. Eager Approach to SMT The Eager Approach to SMT Sanjit A. Seshia UC Berkeley Slides based on ICCAD 09 Tutorial Eager Approach to SMT Input Formula Satisfiability-preserving Boolean Encoder Boolean Formula SAT Solver SAT Solver

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

Lecture 9: Search 8. Victor R. Lesser. CMPSCI 683 Fall 2010

Lecture 9: Search 8. Victor R. Lesser. CMPSCI 683 Fall 2010 Lecture 9: Search 8 Victor R. Lesser CMPSCI 683 Fall 2010 ANNOUNCEMENTS REMEMBER LECTURE ON TUESDAY! EXAM ON OCTOBER 18 OPEN BOOK ALL MATERIAL COVERED IN LECTURES REQUIRED READINGS WILL MOST PROBABLY NOT

More information

Introduction to Solving Combinatorial Problems with SAT

Introduction to Solving Combinatorial Problems with SAT Introduction to Solving Combinatorial Problems with SAT Javier Larrosa December 19, 2014 Overview of the session Review of Propositional Logic The Conjunctive Normal Form (CNF) Modeling and solving combinatorial

More information

Satisfiability Modulo Theories

Satisfiability Modulo Theories Satisfiability Modulo Theories Bruno Dutertre SRI International Leonardo de Moura Microsoft Research Satisfiability a > b + 2, a = 2c + 10, c + b 1000 SAT a = 0, b = 3, c = 5 Model 0 > 3 + 2, 0 = 2 5 +

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

SAT, NP, NP-Completeness

SAT, NP, NP-Completeness CS 473: Algorithms, Spring 2018 SAT, NP, NP-Completeness Lecture 22 April 13, 2018 Most slides are courtesy Prof. Chekuri Ruta (UIUC) CS473 1 Spring 2018 1 / 57 Part I Reductions Continued Ruta (UIUC)

More information

Propositional logic. Programming and Modal Logic

Propositional logic. Programming and Modal Logic Propositional logic Programming and Modal Logic 2006-2007 4 Contents Syntax of propositional logic Semantics of propositional logic Semantic entailment Natural deduction proof system Soundness and completeness

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

Solving and Verifying Hard Problems using SAT

Solving and Verifying Hard Problems using SAT Solving and Verifying Hard Problems using SAT Marijn J.H. Heule 1/22 SAT Solving and Verification Solving Framework for Hard Problems The Future: Verified SAT via Proofs 2/22 SAT Solving and Verification

More information

Satisfiability Modulo Theories (SMT)

Satisfiability Modulo Theories (SMT) Satisfiability Modulo Theories (SMT) Sylvain Conchon Cours 7 / 9 avril 2014 1 Road map The SMT problem Modern efficient SAT solvers CDCL(T) Examples of decision procedures: equality (CC) and difference

More information

Intro to Theory of Computation

Intro to Theory of Computation Intro to Theory of Computation LECTURE 25 Last time Class NP Today Polynomial-time reductions Adam Smith; Sofya Raskhodnikova 4/18/2016 L25.1 The classes P and NP P is the class of languages decidable

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

USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING. Liudmila Cheremisinova, Dmitry Novikov

USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING. Liudmila Cheremisinova, Dmitry Novikov International Book Series "Information Science and Computing" 203 USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING Liudmila Cheremisinova, Dmitry Novikov Abstract. The problem of checking whether a

More information

SAT in Formal Hardware Verification

SAT in Formal Hardware Verification SAT in Formal Hardware Verification Armin Biere Institute for Formal Models and Verification Johannes Kepler University Linz, Austria Invited Talk SAT 05 St. Andrews, Scotland 20. June 2005 Overview Hardware

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

Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask

Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask Set 6: Knowledge Representation: The Propositional Calculus Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask Outline Representing knowledge using logic Agent that reason logically A knowledge based agent Representing

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

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

Reducing the Size of Resolution Proofs in Linear Time

Reducing the Size of Resolution Proofs in Linear Time Reducing the Size of Resolution Proofs in Linear Time Omer Bar-Ilan 1 Oded Fuhrmann 2 Shlomo Hoory 3 Ohad Shacham 4 Ofer Strichman 5 1 Rafael, Israel omerb@rafael.co.il 2 Google, California, USA frmoded@gmail.com

More information

1 Propositional Logic

1 Propositional Logic CS 2800, Logic and Computation Propositional Logic Lectures Pete Manolios Version: 384 Spring 2011 1 Propositional Logic The study of logic was initiated by the ancient Greeks, who were concerned with

More information

WHAT IS AN SMT SOLVER? Jaeheon Yi - April 17, 2008

WHAT IS AN SMT SOLVER? Jaeheon Yi - April 17, 2008 WHAT IS AN SMT SOLVER? Jaeheon Yi - April 17, 2008 WHAT I LL TALK ABOUT Propositional Logic Terminology, Satisfiability, Decision Procedure First-Order Logic Terminology, Background Theories Satisfiability

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

Overview, cont. Overview, cont. Logistics. Optional Reference #1. Optional Reference #2. Workload and Grading

Overview, cont. Overview, cont. Logistics. Optional Reference #1. Optional Reference #2. Workload and Grading Course staff CS389L: Automated Logical Reasoning Lecture 1: ntroduction and Review of Basics şıl Dillig nstructor: şil Dillig E-mail: isil@cs.utexas.edu Office hours: Thursday after class until 6:30 pm

More information

SAT Solvers: Theory and Practice

SAT Solvers: Theory and Practice Summer School on Verification Technology, Systems & Applications, September 17, 2008 p. 1/98 SAT Solvers: Theory and Practice Clark Barrett barrett@cs.nyu.edu New York University Summer School on Verification

More information

CS 4700: Foundations of Artificial Intelligence

CS 4700: Foundations of Artificial Intelligence CS 4700: Foundations of Artificial Intelligence Bart Selman selman@cs.cornell.edu Module: Knowledge, Reasoning, and Planning Part 2 Logical Agents R&N: Chapter 7 1 Illustrative example: Wumpus World (Somewhat

More information

Warm-Up Problem. Is the following true or false? 1/35

Warm-Up Problem. Is the following true or false? 1/35 Warm-Up Problem Is the following true or false? 1/35 Propositional Logic: Resolution Carmen Bruni Lecture 6 Based on work by J Buss, A Gao, L Kari, A Lubiw, B Bonakdarpour, D Maftuleac, C Roberts, R Trefler,

More information

Lemma Localization: A Practical Method for Downsizing SMT-Interpolants

Lemma Localization: A Practical Method for Downsizing SMT-Interpolants Lemma Localization: A Practical Method for Downsizing SMT-Interpolants Florian Pigorsch, and Christoph Scholl University of Freiburg, Department of Computer Science, 7911 Freiburg im Breisgau, Germany

More information

Machine Learning and Logic: Fast and Slow Thinking

Machine Learning and Logic: Fast and Slow Thinking Machine Learning and Logic: Fast and Slow Thinking Moshe Y. Vardi Rice University Is Computer Science Fundamentally Changing? Formal Science vs Data Science We are at peak hype about machine learning and

More information

CSE 3500 Algorithms and Complexity Fall 2016 Lecture 25: November 29, 2016

CSE 3500 Algorithms and Complexity Fall 2016 Lecture 25: November 29, 2016 CSE 3500 Algorithms and Complexity Fall 2016 Lecture 25: November 29, 2016 Intractable Problems There are many problems for which the best known algorithms take a very long time (e.g., exponential in some

More information

Part 1: Propositional Logic

Part 1: Propositional Logic Part 1: Propositional Logic Literature (also for first-order logic) Schöning: Logik für Informatiker, Spektrum Fitting: First-Order Logic and Automated Theorem Proving, Springer 1 Last time 1.1 Syntax

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

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

A New Look at BDDs for Pseudo-Boolean Constraints

A New Look at BDDs for Pseudo-Boolean Constraints Journal of Artificial Intelligence Research 45 (22) 443-48 Submitted 3/2; published /2 A New Look at BDDs for Pseudo-Boolean Constraints Ignasi Abío Robert Nieuwenhuis Albert Oliveras Enric Rodríguez-Carbonell

More information

PROPOSITIONAL LOGIC. VL Logik: WS 2018/19

PROPOSITIONAL LOGIC. VL Logik: WS 2018/19 PROPOSITIONAL LOGIC VL Logik: WS 2018/19 (Version 2018.2) Martina Seidl (martina.seidl@jku.at), Armin Biere (biere@jku.at) Institut für Formale Modelle und Verifikation BOX Game: Rules 1. The game board

More information

Propositional Logic: Models and Proofs

Propositional Logic: Models and Proofs Propositional Logic: Models and Proofs C. R. Ramakrishnan CSE 505 1 Syntax 2 Model Theory 3 Proof Theory and Resolution Compiled at 11:51 on 2016/11/02 Computing with Logic Propositional Logic CSE 505

More information

SAT/SMT/AR Introduction and Applications

SAT/SMT/AR Introduction and Applications SAT/SMT/AR Introduction and Applications Ákos Hajdu Budapest University of Technology and Economics Department of Measurement and Information Systems 1 Ákos Hajdu About me o PhD student at BME MIT (2016

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

Interleaved Alldifferent Constraints: CSP vs. SAT Approaches

Interleaved Alldifferent Constraints: CSP vs. SAT Approaches Interleaved Alldifferent Constraints: CSP vs. SAT Approaches Frédéric Lardeux 3, Eric Monfroy 1,2, and Frédéric Saubion 3 1 Universidad Técnica Federico Santa María, Valparaíso, Chile 2 LINA, Université

More information

Advanced Topics in LP and FP

Advanced Topics in LP and FP Lecture 1: Prolog and Summary of this lecture 1 Introduction to Prolog 2 3 Truth value evaluation 4 Prolog Logic programming language Introduction to Prolog Introduced in the 1970s Program = collection

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

NP and Computational Intractability

NP and Computational Intractability NP and Computational Intractability 1 Polynomial-Time Reduction Desiderata'. Suppose we could solve X in polynomial-time. What else could we solve in polynomial time? don't confuse with reduces from Reduction.

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

1 Algebraic Methods. 1.1 Gröbner Bases Applied to SAT

1 Algebraic Methods. 1.1 Gröbner Bases Applied to SAT 1 Algebraic Methods In an algebraic system Boolean constraints are expressed as a system of algebraic equations or inequalities which has a solution if and only if the constraints are satisfiable. Equations

More information

Artificial Intelligence

Artificial Intelligence Torralba and Wahlster Artificial Intelligence Chapter 11: Propositional Reasoning, Part II 1/69 Artificial Intelligence 11. Propositional Reasoning, Part II: SAT Solvers How to Efficiently Think About

More information

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams. Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams. Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams Sanjit A. Seshia EECS, UC Berkeley Acknowledgments: Lintao Zhang Announcement Project proposals due

More information

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 2: Propositional Logic

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 2: Propositional Logic Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 2: Propositional Logic Matt Fredrikson mfredrik@cs.cmu.edu October 17, 2016 Matt Fredrikson Propositional Logic 1 / 33 Propositional

More information

NP-completeness. Chapter 34. Sergey Bereg

NP-completeness. Chapter 34. Sergey Bereg NP-completeness Chapter 34 Sergey Bereg Oct 2017 Examples Some problems admit polynomial time algorithms, i.e. O(n k ) running time where n is the input size. We will study a class of NP-complete problems

More information

Algorithms and Complexity of Constraint Satisfaction Problems (course number 3)

Algorithms and Complexity of Constraint Satisfaction Problems (course number 3) Algorithms and Complexity of Constraint Satisfaction Problems (course number 3) Nicolas (Miki) Hermann LIX, École Polytechnique hermann@lix.polytechnique.fr Miki Hermann Algorithms and Complexity of csp

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

Satisifiability and Probabilistic Satisifiability

Satisifiability and Probabilistic Satisifiability Satisifiability and Probabilistic Satisifiability Department of Computer Science Instituto de Matemática e Estatística Universidade de São Paulo 2010 Topics Next Issue The SAT Problem The Centrality of

More information

Learning general constraints in CSP

Learning general constraints in CSP Learning general constraints in CSP Michael Veksler Ofer Strichman Information Systems Engineering, Technion, Haifa, Israel mveksler@tx.technion.ac.il ofers@ie.technion.ac.il Abstract. We present a new

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 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

Logic in AI Chapter 7. Mausam (Based on slides of Dan Weld, Stuart Russell, Subbarao Kambhampati, Dieter Fox, Henry Kautz )

Logic in AI Chapter 7. Mausam (Based on slides of Dan Weld, Stuart Russell, Subbarao Kambhampati, Dieter Fox, Henry Kautz ) Logic in AI Chapter 7 Mausam (Based on slides of Dan Weld, Stuart Russell, Subbarao Kambhampati, Dieter Fox, Henry Kautz ) 2 Knowledge Representation represent knowledge about the world in a manner that

More information

Craig Interpolation and Proof Manipulation

Craig Interpolation and Proof Manipulation Craig Interpolation and Proof Manipulation Theory and Applications to Model Checking Doctoral Dissertation submitted to the Faculty of Informatics of the Università della Svizzera Italiana in partial fulfillment

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

NP-Complete problems

NP-Complete problems NP-Complete problems NP-complete problems (NPC): A subset of NP. If any NP-complete problem can be solved in polynomial time, then every problem in NP has a polynomial time solution. NP-complete languages

More information

Interpolation. Seminar Slides. Betim Musa. 27 th June Albert-Ludwigs-Universität Freiburg

Interpolation. Seminar Slides. Betim Musa. 27 th June Albert-Ludwigs-Universität Freiburg Interpolation Seminar Slides Albert-Ludwigs-Universität Freiburg Betim Musa 27 th June 2015 Motivation program add(int a, int b) { var x,i : int; l 0 assume(b 0); l 1 x := a; l 2 i := 0; while(i < b) {

More information

Propositional logic. Programming and Modal Logic

Propositional logic. Programming and Modal Logic Propositional logic Programming and Modal Logic 2006-2007 4 Contents Syntax of propositional logic Semantics of propositional logic Semantic entailment Natural deduction proof system Soundness and completeness

More information

Foundations of Lazy SMT and DPLL(T)

Foundations of Lazy SMT and DPLL(T) Foundations of Lazy SMT and DPLL(T) Cesare Tinelli The University of Iowa Foundations of Lazy SMT and DPLL(T) p.1/86 Acknowledgments: Many thanks to Albert Oliveras for contributing some of the material

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

CSE507. Course Introduction. Computer-Aided Reasoning for Software. Emina Torlak

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

More information

Logic in AI Chapter 7. Mausam (Based on slides of Dan Weld, Stuart Russell, Dieter Fox, Henry Kautz )

Logic in AI Chapter 7. Mausam (Based on slides of Dan Weld, Stuart Russell, Dieter Fox, Henry Kautz ) Logic in AI Chapter 7 Mausam (Based on slides of Dan Weld, Stuart Russell, Dieter Fox, Henry Kautz ) Knowledge Representation represent knowledge in a manner that facilitates inferencing (i.e. drawing

More information

Notes for Lecture 2. Statement of the PCP Theorem and Constraint Satisfaction

Notes for Lecture 2. Statement of the PCP Theorem and Constraint Satisfaction U.C. Berkeley Handout N2 CS294: PCP and Hardness of Approximation January 23, 2006 Professor Luca Trevisan Scribe: Luca Trevisan Notes for Lecture 2 These notes are based on my survey paper [5]. L.T. Statement

More information

Satisfiability Checking of Non-clausal Formulas using General Matings

Satisfiability Checking of Non-clausal Formulas using General Matings Satisfiability Checking of Non-clausal Formulas using General Matings Himanshu Jain, Constantinos Bartzis, and Edmund Clarke School of Computer Science, Carnegie Mellon University, Pittsburgh, PA Abstract.

More information

NP Completeness. CS 374: Algorithms & Models of Computation, Spring Lecture 23. November 19, 2015

NP Completeness. CS 374: Algorithms & Models of Computation, Spring Lecture 23. November 19, 2015 CS 374: Algorithms & Models of Computation, Spring 2015 NP Completeness Lecture 23 November 19, 2015 Chandra & Lenny (UIUC) CS374 1 Spring 2015 1 / 37 Part I NP-Completeness Chandra & Lenny (UIUC) CS374

More information

NP-Complete Reductions 2

NP-Complete Reductions 2 x 1 x 1 x 2 x 2 x 3 x 3 x 4 x 4 12 22 32 CS 447 11 13 21 23 31 33 Algorithms NP-Complete Reductions 2 Prof. Gregory Provan Department of Computer Science University College Cork 1 Lecture Outline NP-Complete

More information

Satisfiability Modulo Theories (SMT)

Satisfiability Modulo Theories (SMT) CS510 Software Engineering Satisfiability Modulo Theories (SMT) Slides modified from those by Aarti Gupta Textbook: The Calculus of Computation by A. Bradley and Z. Manna 1 Satisfiability Modulo Theory

More information

Attacking AES via SAT

Attacking AES via SAT Computer Science Department Swansea University BCTCS Warwick, April 7, 2009 Introduction In the following talk, a general translation framework, based around SAT, is considered, with the aim of providing

More information

Integrating a SAT Solver with an LCF-style Theorem Prover

Integrating a SAT Solver with an LCF-style Theorem Prover Integrating a SAT Solver with an LCF-style Theorem Prover A Fast Decision Procedure for Propositional Logic for the System Tjark Weber webertj@in.tum.de PDPAR 05, July 12, 2005 Integrating a SAT Solver

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

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Discrete Systems Lecture: State-Space Exploration Stavros Tripakis University of California, Berkeley Stavros Tripakis:

More information

Automata Theory CS Complexity Theory I: Polynomial Time

Automata Theory CS Complexity Theory I: Polynomial Time Automata Theory CS411-2015-17 Complexity Theory I: Polynomial Time David Galles Department of Computer Science University of San Francisco 17-0: Tractable vs. Intractable If a problem is recursive, then

More information

Course An Introduction to SAT and SMT. Cap. 2: Satisfiability Modulo Theories

Course An Introduction to SAT and SMT. Cap. 2: Satisfiability Modulo Theories Course An Introduction to SAT and SMT Chapter 2: Satisfiability Modulo Theories Roberto Sebastiani DISI, Università di Trento, Italy roberto.sebastiani@unitn.it URL: http://disi.unitn.it/rseba/didattica/sat_based18/

More information

On the Relative Efficiency of DPLL and OBDDs with Axiom and Join

On the Relative Efficiency of DPLL and OBDDs with Axiom and Join On the Relative Efficiency of DPLL and OBDDs with Axiom and Join Matti Järvisalo University of Helsinki, Finland September 16, 2011 @ CP M. Järvisalo (U. Helsinki) DPLL and OBDDs September 16, 2011 @ CP

More information

Abstract DPLL and Abstract DPLL Modulo Theories

Abstract DPLL and Abstract DPLL Modulo Theories Abstract DPLL and Abstract DPLL Modulo Theories Robert Nieuwenhuis, Albert Oliveras, and Cesare Tinelli Abstract. We introduce Abstract DPLL, a general and simple abstract rule-based formulation of the

More information