SAT/SMT/AR Introduction and Applications
|
|
- Brittney Underwood
- 6 years ago
- Views:
Transcription
1 SAT/SMT/AR Introduction and Applications Ákos Hajdu Budapest University of Technology and Economics Department of Measurement and Information Systems 1
2 Ákos Hajdu About me o PhD student at BME MIT (2016 ) o Supervisor: Dr. Zoltán Micskei o Topic: Applying counterexample-guided abstraction refinement in model checking hajdua@mit.bme.hu inf.mit.bme.hu/members/hajdua 2
3 References This presentation is based on the talks presented at the SAT/SMT/AR Summer School 2016 Some content (text, figures, examples) of this presentation is copied from the presentations of the school, available at 3
4 SAT/SMT ( ) History of the school o 2011: MIT, USA o 2012: Trento, Italy o 2013: Espoo, Finland o 2014: Semmering, Austria o 2015: Stanford, USA SAT/SMT/AR (2016 ) o 2016: Lisbon, Portugal 4
5 Overview SAT AR o Boolean satisfiability o Boolean variables and operators o Problem: is the formula satisfiable? o Automated Reasoning o First order logic o Problem: theorem proving SMT o Satisfiability Modulo Theories o First order logic, but interpreted symbols o Problem: is the formula satisfiable? p (p q) x, y z: p(f x, y, g z ) (x y + 1) (y 3) 5
6 Building blocks o Boolean variables SAT basics o Literals (variable or negation) o Clauses (disjunction of literals) o Formulas (conjunction of clauses) SAT problem o Decide if a variable assignment exists that evaluates the formula to true o In theory: NP-complete o In practice: efficient solvers Annual SAT competition: 6 x, y, z, x, x, y, y, z, z, (x y z) (x y) ( x z) SAT Formula SAT solver UNSAT
7 SAT in practice 7
8 SAT in practice Randomly generated problem Real world problem (bounded model checking) 8
9 SAT in practice Wide range of applications 9
10 SAT modeling Graph G = (V, E), coloring with k colors o x i,j = 1 if vertex v i has jth color o Guarantee valid coloring ( x i,j x l,j ) for all v i, v l E and j 1,, k o All vertices should have some color x i,1 x i,2 x i,k for all v i V Valid 10 Invalid
11 SAT modeling Sudoku o v i,j,k = 1 if the value in row i and cell j is k o Each cell has exactly one value 9 k=1 v i,j,k = 1 for all i, j {1,, 9} o Each value used exactly once in each row 9 j=1 v i,j,k = 1 for all i, k {1,, 9} o Each value used exactly once in each column 9 i=1 v i,j,k = 1 for all j, k {1,, 9} o Each value used exactly once in each 3x3 sub-grid 3 3 r=1 s=1 v 3i+r,3j+s,k = 1 for all i, j {0,, 2} and k {1,, 9} o Fixed cells v 1,1,5 = 1, v 1,2,3 = 1, v 1,5,7 = 1, v 2,1,6 = 1, 11
12 Modeling challenges Non-conjunctive formulas o Introduce auxiliary variables (Tseitin transformation) o Linear increase of the formula size Cardinality constraints n o j=1 n o j=1 x j 1: x 1 x 2 x n x j 1: Pairwise: O(n 2 ) clauses Sequential counter: O(n) clauses + O(n) new variables Bitwise: O(n log n) clauses + O(log n) new variables o Can be generalized from 1 to k (p q) (p q r) 12
13 Modeling challenges Pseudo-Boolean constraints n o j=1 a j x j b o Binary Decision Diagram (BDD): exponential clauses o Watchdog encoding: O(n 3 log(n) log(a max )) clauses + O(n 2 log n log(a max )) new variables CSP constraints o Direct encoding x i variable with domain D i, m i = D i m x i,1,, x i,mi variables, i xi,k = 1 k=1 If x i = v i x j = v j is not valid, add a clause: ( x i,vi x j,vj ) o There are other, more efficient encodings 13
14 SAT solver algorithms DP-60 o Eliminate variables step by step with resolution x 1 x 4 x 1 x 4 x 14 x 1 x 3 x 8 x 1 x 8 x 12 x 1 x 5 x 9 x 2 x 11 x 3 x 7 x 13 x 3 x 7 x 13 x 9 x 8 x 7 x 9 x 1 x 1 x 4 x 8 x 12 x 5 x 9 x 4 x 8 x 12 x 5 x 9 x 4 x 14 x 3 x 8 x 4 x 14 x 3 x 8 x 4 x 4 x 14 x 4 x 3 x 8 x 8 x 12 x 4 x 14 x 8 x 12 x 3 x 8 x 5 x 9 x 4 x 14 x 5 x 9 x 3 x 8 14
15 SAT solver algorithms DPLL-62 o Backtrack search Pick a literal Search for solution by setting the literal to true If conflicting, set literal to false x 1 x 4 x 1 x 4 x 14 x 1 x 3 x 8 x 1 x 8 x 12 x 2 x 12 x 3 x 12 x 13 x 3 x 7 x 13 x 8 x 7 x 12 Conflict, backtrack Level Literal Backtrack 1 x 1 X x 4 2 x 3 X x 8 x 12 x 13 x 7 15
16 DPLL-62 problems o Selecting the literal SAT solver algorithms Bad decisions at the beginning can have a high cost o Only chronological backtracking CDCL algorithms (2001 ) o Conflict Driven Clause Learning o Learn new clause from conflict o Non-chronological backtrack and restart is possible 16
17 SAT extensions MUS: Minimal Unsatisfiable Subset o Minimal explanation of inconsistency MCS: Minimal Correction Subset o Minimal relaxation to recover consistency Application: analysis of over-constrained systems o Software/hardware model checking o Model-based diagnosis o Maximum feasible subsystem o Timetable/scheduling o 17
18 MaxSAT SAT extensions o Maximize the number of satisfied clauses o Weighted MaxSAT: assign weights to clauses o Partial MaxSAT: hard clauses that must be satisfied o Application: optimization problems QBF (Quantified Boolean Formulas) o Quantified formulas (, ) o Application: e.g. bounded model checking o Harder than SAT if NP PSPACE This is reflected in the complexity of solvers But allows for exponentially more succinct encodings than SAT 18
19 Overview SAT AR o Boolean satisfiability o Boolean variables and operators o Problem: is the formula satisfiable? o Automated Reasoning o First order logic o Problem: theorem proving SMT o Satisfiability Modulo Theories o First order logic, but interpreted symbols o Problem: is the formula satisfiable? p (p q) x, y z: p(f x, y, g z ) (x y + 1) (y 3) 19
20 AR basics Expressiveness of SAT is not always enough First Order Logic (FOL) o Symbolic knowledge representation and reasoning o Building blocks Simple terms: constants, variables Complex terms: functions Atoms: predicates Literals: atom or negation Formulas: connectives and quantifiers Partial order between elements a, b, c, x, y, z, f a, b, g(z) p x, y, a = b p x, y, p(x, y) x y: p(f x, y) x y f x, g x g(x) 20
21 Theorem proving AR basics o H set of formulas: assumptions, hypotheses o φ formula: conjecture o Theorem proving problem: H φ? o Drawback: infinitely many interpretations on infinitely many domains In theory o Gödel: completeness o Turing: undecidability o Herbrand: semi-decidability 21
22 AR basics Applications o Software and hardware verification o Static analysis o Reasoning in knowledge bases o Mathematical theorem proving Example: arrays o Axioms a, i, j: i = j a i = a j a, v, i, j: i = j store a, i, v a, v, i, j: i j store a, i, v o Theorem j = v j = a[j] a, i, j: store store a, i, a j, j, a i = store(store a, j, a i, i, a j ) 22
23 Inference system Theorem provers o Set of inference rules o Expansion or contraction of a set of formulas Expansion Contraction o Resolution o Subsumption p x q x, p(f(a)) r(a) q(f(a)) r(a) p x, y q z, p(a, a) q(b) r(a) p x, y q z o Superposition f z, e = z, f l x, y, y = x l x, e = x o Simplification f x = x, p(f(a)) q(a) f x = x, p(a) q(a) 23
24 Search plan Theorem provers o Which rule to use? o Fairness: use all rules that are needed o Redundancy: avoid redundant clauses Strategy = inference system + search plan Algorithms o Ordering-based o Subgoal-reduction o Semantically-Guided Goal-sensitive 24
25 AR in practice Tools o Otter, EQP, Prover9 o SNARK o SPASS o E o Vampire o leancop o iprover o Meris, MetiTarski CASC o The CADE ATP System Competition 25
26 Overview SAT AR o Boolean satisfiability o Boolean variables and operators o Problem: is the formula satisfiable? o Automated Reasoning o First order logic o Problem: theorem proving SMT o Satisfiability Modulo Theories o First order logic, but interpreted symbols o Problem: is the formula satisfiable? p (p q) x, y z: p(f x, y, g z ) (x y + 1) (y 3) 26
27 SMT basics First order logic is undecidable In practice, symbols often have an interpretation in some theory o Integers, reals, arrays, o Decidable theories (or fragments) SMT problem o Check if a FOL formula is satisfiable modulo the background theories SAT Formula SMT solver o Example (QF_UFLRA) z = 1 z = 0 x y + z = 1 f x > f y UNSAT Theories 27
28 SMT modeling Example: schedule 3 jobs, each composed of 2 consecutive tasks, on 2 machines in 8 time units Machine1 Machine2 Job1 2 1 Job2 3 1 Job3 2 3 t 1,1 = 5 t 1,2 = 7 t 2,1 = 2 t 2,2 = 6 t 3,1 = 0 t 3,2 = 3 t 1,1 0 t 1,2 t 1,1 + 2 t 1, t 2,1 0 t 2,2 t 2,1 + 3 (t 2, ) t 3,1 0 t 3,2 t 3,1 + 2 t 3, ((t 1,1 t 2,1 + 3) (t 2,1 t 1,1 + 2) ((t 1,1 t 3,1 + 2) (t 3,1 t 1,1 + 2) ((t 2,1 t 3,1 + 2) (t 3,1 t 2,1 + 3) ((t 1,2 t 2,2 + 1) (t 2,2 t 1,2 + 1) ((t 1,2 t 3,2 + 3) (t 3,2 t 1,2 + 1) ((t 2,2 t 3,2 + 3) (t 3,2 t 2,2 + 1) 28
29 SMT modeling Example: is the code correct? void swap(int* a, int* b) { *a = *a + *b; *b = *a - *b; *a = *a - *b; } h 1 = store(h 0, a, h 0 a + 32 h 0 [b]) h 2 = store(h 1, b, h 1 a 32 h 1 [b]) h 3 = store(h 2, a, h 2 a 32 h 2 [b]) h 3 a = h 0 [b] h 3 b = h 0 [a] a = 0, b = 0 h 0 0 = 1, h 1 0 = 2 h 2 0 = 0 h 3 0 = 0 29
30 SMT theories Uninterpreted functions and equality Arrays Arithmetic (integer/ real) o Difference logic o Linear arithmetic o Nonlinear arithmetic Bitvectors Quantifiers Combinations are also possible f g x store a, i, e = x i = e x y 1 2x 3y + 4z 5 x 2 + 3xy + y 2 > 0 ~a & a > a x y 30
31 SMT logics 31
32 SMT algorithms Theory solver: decision procedure for a conjunction of literals in a theory o Example: linear real arithmetic Literals: linear (in)equalities Conjunction: system of linear (in)equalities simplex algorithm Basic algorithm o Convert formula to disjunctive normal form l 0 l 1 l 2 l 3 l 4 (l 5 l 6 ) o Check if any of the disjuncts is satisfiable Lazy algorithm o Introduce Boolean variables for SMT literals o Apply SAT solver, check literals selected by the solver If not satisfiable add a blocking clause 32
33 Lazy SMT Example Theory solver SAT solver a 3 (a 3 a 5) x (x y) a 3 (a 5) x = 0, y = 1 UNSAT a 3 (a 5) Blocking clause x y x y x (x y) UNSAT 33
34 DPLL(T) algorithm SMT algorithms o Lazy SMT + tight integration with SAT solver Incremental Backtrack Propagation Conflicts 34
35 Theory solvers Uninterpreted functions o Congruence closure Difference logic o Map to a graph and search for negative cycle Linear arithmetic o Reals: variant of simplex algorithm o Integers: branch & bound algorithm Arrays o Use uninterpreted functions and refine if needed Bitvectors o Map to SAT (bit blasting) 35
36 SMT in practice SMT-LIB: international initiative o Standard descriptions of theories o Common input/output language o Connect the community o Large benchmark library o Related software tools Actively developed solvers (as of 2015) o Alt-Ergo, AProVE, Boolector, CVC4, MathSAT 5, OpenSMT 2, rasat, SMTInterpol, SMT-RAT, STP, verit, Yices 2, Z3 36
37 SMT in practice > (set-option :print-success false) > (set-option :produce-models true) > (set-option :interactive-mode true) > (set-logic QF_LIA) > (declare-fun x () Int) > (declare-fun y () Int) > (assert (= (+ x (* 2 y)) 20)) > (assert (= (- x y) 2)) > (check-sat) sat > (get-value (x y)) ((x 8)(y 6)) x = 8 y = 6 37 Constant: function with no parameter x + 2y = 20 x y = 2
38 SAT AR Summary o Success story, engine of the engines, low level o High level, undecidable in general SMT p (p q) x, y z: p(f x, y, g z ) (x y + 1) (y 3) o High level, but decidable theories and fragments Questions? hajdua@mit.bme.hu inf.mit.bme.hu/members/hajdua 38
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 informationSMT BASICS WS 2017/2018 ( ) LOGIC SATISFIABILITY MODULO THEORIES. Institute for Formal Models and Verification Johannes Kepler Universität Linz
LOGIC SATISFIABILITY MODULO THEORIES SMT BASICS 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
More informationSatisfiability 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 informationSatisfiability 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 informationInternals of SMT Solvers. Leonardo de Moura Microsoft Research
Internals of SMT Solvers Leonardo de Moura Microsoft Research Acknowledgements Dejan Jovanovic (SRI International, NYU) Grant Passmore (Univ. Edinburgh) Herbrand Award 2013 Greg Nelson What is a SMT Solver?
More informationSatisfiability 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 informationTutorial 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 informationThe 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 informationWHAT 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 informationFirst-Order Logic First-Order Theories. Roopsha Samanta. Partly based on slides by Aaron Bradley and Isil Dillig
First-Order Logic First-Order Theories Roopsha Samanta Partly based on slides by Aaron Bradley and Isil Dillig Roadmap Review: propositional logic Syntax and semantics of first-order logic (FOL) Semantic
More informationSolving 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 informationQuantifiers. Leonardo de Moura Microsoft Research
Quantifiers 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 + 10, 5 + ( 3) 1000 Quantifiers x y x > 0 f x, y = 0
More informationCSE507. Satisfiability Modulo Theories. Computer-Aided Reasoning for Software. Emina Torlak
Computer-Aided Reasoning for Software CSE507 Satisfiability Modulo Theories courses.cs.washington.edu/courses/cse507/18sp/ Emina Torlak emina@cs.washington.edu Today Last lecture Practical applications
More informationRewriting 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 informationSolving Quantified Verification Conditions using Satisfiability Modulo Theories
Solving Quantified Verification Conditions using Satisfiability Modulo Theories Yeting Ge, Clark Barrett, Cesare Tinelli Solving Quantified Verification Conditions using Satisfiability Modulo Theories
More informationFirst-Order Theorem Proving and Vampire. Laura Kovács (Chalmers University of Technology) Andrei Voronkov (The University of Manchester)
First-Order Theorem Proving and Vampire Laura Kovács (Chalmers University of Technology) Andrei Voronkov (The University of Manchester) Outline Introduction First-Order Logic and TPTP Inference Systems
More informationLOGIC 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 informationFirst-Order Theorem Proving and Vampire
First-Order Theorem Proving and Vampire Laura Kovács 1,2 and Martin Suda 2 1 TU Wien 2 Chalmers Outline Introduction First-Order Logic and TPTP Inference Systems Saturation Algorithms Redundancy Elimination
More informationSatisfiability 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 informationLeonardo de Moura Microsoft Research
Leonardo de Moura Microsoft Research Logic is The Calculus of Computer Science (Z. Manna). High computational complexity Naïve solutions will not scale Is formula F satisfiable modulo theory T? SMT solvers
More informationSatisfiability Modulo Theories
Satisfiability Modulo Theories Clark Barrett and Cesare Tinelli Abstract Satisfiability Modulo Theories (SMT) refers to the problem of determining whether a first-order formula is satisfiable with respect
More informationMotivation. CS389L: Automated Logical Reasoning. Lecture 10: Overview of First-Order Theories. Signature and Axioms of First-Order Theory
Motivation CS389L: Automated Logical Reasoning Lecture 10: Overview of First-Order Theories Işıl Dillig Last few lectures: Full first-order logic In FOL, functions/predicates are uninterpreted (i.e., structure
More informationInterpolation. 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 informationCourse 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 informationFoundations 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 informationCombinations of Theories for Decidable Fragments of First-order Logic
Combinations of Theories for Decidable Fragments of First-order Logic Pascal Fontaine Loria, INRIA, Université de Nancy (France) Montreal August 2, 2009 Montreal, August 2, 2009 1 / 15 Context / Motivation
More informationFormal methods in analysis
Formal methods in analysis Jeremy Avigad Department of Philosophy and Department of Mathematical Sciences Carnegie Mellon University May 2015 Sequence of lectures 1. Formal methods in mathematics 2. Automated
More informationAutomated 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 informationPropositional 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 informationFormal 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 informationan efficient procedure for the decision problem. We illustrate this phenomenon for the Satisfiability problem.
1 More on NP In this set of lecture notes, we examine the class NP in more detail. We give a characterization of NP which justifies the guess and verify paradigm, and study the complexity of solving search
More informationFrom 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 informationa > 3, (a = b a = b + 1), f(a) = 0, f(b) = 1
Yeting Ge New York University Leonardo de Moura Microsoft Research a > 3, (a = b a = b + 1), f(a) = 0, f(b) = 1 Dynamic symbolic execution (DART) Extended static checking Test-case generation Bounded model
More informationOverview, 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 informationFinding Conflicting Instances of Quantified Formulas in SMT. Andrew Reynolds Cesare Tinelli Leonardo De Moura July 18, 2014
Finding Conflicting Instances of Quantified Formulas in SMT Andrew Reynolds Cesare Tinelli Leonardo De Moura July 18, 2014 Outline of Talk SMT solvers: Efficient methods for ground constraints Heuristic
More informationCS156: 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 informationSolvers 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 informationIntegrating Simplex with DPLL(T )
CSL Technical Report SRI-CSL-06-01 May 23, 2006 Integrating Simplex with DPLL(T ) Bruno Dutertre and Leonardo de Moura This report is based upon work supported by the Defense Advanced Research Projects
More informationIntSat: From SAT to Integer Linear Programming
IntSat: From SAT to Integer Linear Programming CPAIOR 2015 (invited talk) Robert Nieuwenhuis Barcelogic.com - Computer Science Department BarcelonaTech (UPC) 1 Proposed travel arrangements (next time):
More informationAn Introduction to Z3
An Introduction to Z3 Huixing Fang National Trusted Embedded Software Engineering Technology Research Center April 12, 2017 Outline 1 SMT 2 Z3 Huixing Fang (ECNU) An Introduction to Z3 April 12, 2017 2
More informationSymbolic Analysis. Xiangyu Zhang
Symbolic Analysis Xiangyu Zhang What is Symbolic Analysis CS510 S o f t w a r e E n g i n e e r i n g Static analysis considers all paths are feasible Dynamic considers one path or a number of paths Symbolic
More informationUCLID: Deciding Combinations of Theories via Eager Translation to SAT. SAT-based Decision Procedures
UCLID: Deciding Combinations of Theories via Eager Translation to SAT Sanjit A. Seshia SAT-based Decision Procedures Input Formula Input Formula Satisfiability-preserving Boolean Encoder Boolean Formula
More informationThe Potential and Challenges of CAD with Equational Constraints for SC-Square
The Potential and Challenges of with Equational Constraints for SC-Square Matthew England (Coventry University) Joint work with: James H. Davenport (University of Bath) 7th International Conference on
More informationConstraint Solving for Finite Model Finding in SMT Solvers
myjournal manuscript No. (will be inserted by the editor) Constraint Solving for Finite Model Finding in SMT Solvers Andrew Reynolds Cesare Tinelli Clark Barrett Received: date / Accepted: date Abstract
More informationAn 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 informationBounded Model Checking with SAT/SMT. Edmund M. Clarke School of Computer Science Carnegie Mellon University 1/39
Bounded Model Checking with SAT/SMT Edmund M. Clarke School of Computer Science Carnegie Mellon University 1/39 Recap: Symbolic Model Checking with BDDs Method used by most industrial strength model checkers:
More informationPretending to be an SMT Solver with Vampire (and How We Do Instantiation)
Pretending to be an SMT Solver with Vampire (and How We Do Instantiation) Giles Reger 1, Martin Suda 2, and Andrei Voronkov 1,2 1 School of Computer Science, University of Manchester, UK 2 TU Wien, Vienna,
More informationQuantifier Instantiation Techniques for Finite Model Finding in SMT
Quantifier Instantiation Techniques for Finite Model Finding in SMT Andrew Reynolds, Cesare Tinelli Amit Goel, Sava Krstic Morgan Deters, Clark Barrett Satisfiability Modulo Theories (SMT) SMT solvers
More informationComplexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler
Complexity Theory Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 15 May, 2018 Reinhard
More informationOutline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181.
Complexity Theory Complexity Theory Outline Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität
More informationIntroduction 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 informationOn Solving Boolean Combinations of UTVPI Constraints
Journal on Satisfiability, Boolean Modeling and Computation N (007) xx-yy On Solving Boolean Combinations of UTVPI Constraints Sanjit A. Seshia Department of Electrical Engineering and Computer Sciences
More information1 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 informationAn 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 informationConstraint Logic Programming and Integrating Simplex with DPLL(T )
Constraint Logic Programming and Integrating Simplex with DPLL(T ) Ali Sinan Köksal December 3, 2010 Constraint Logic Programming Underlying concepts The CLP(X ) framework Comparison of CLP with LP Integrating
More informationVerification 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 informationVinter: A Vampire-Based Tool for Interpolation
Vinter: A Vampire-Based Tool for Interpolation Kryštof Hoder 1, Andreas Holzer 2, Laura Kovács 2, and Andrei Voronkov 1 1 University of Manchester 2 TU Vienna Abstract. This paper describes the Vinter
More information8. INTRACTABILITY I. Lecture slides by Kevin Wayne Copyright 2005 Pearson-Addison Wesley. Last updated on 2/6/18 2:16 AM
8. INTRACTABILITY I poly-time reductions packing and covering problems constraint satisfaction problems sequencing problems partitioning problems graph coloring numerical problems Lecture slides by Kevin
More informationTowards Lightweight Integration of SMT Solvers
Towards Lightweight Integration of SMT Solvers Andrei Lapets Boston University Boston, USA lapets@bu.edu Saber Mirzaei Boston University Boston, USA smirzaei@bu.edu 1 Introduction A large variety of SMT
More informationIntegrating Answer Set Programming and Satisfiability Modulo Theories
Integrating Answer Set Programming and Satisfiability Modulo Theories Ilkka Niemelä Helsinki University of Technology (TKK) Department of Information and Computer Science http://www.tcs.tkk.fi/ ini/ References:
More informationCS156: 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 informationClassical 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 informationSAT-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 informationIntroduction Algorithms Applications MINISAT. Niklas Sörensson Chalmers University of Technology and Göteborg University
SAT ALGORITHMS AND APPLICATIONS nik@cschalmersse Chalmers University of Technology and Göteborg University Empirically Successful Classical Automated Reasoning a CADE-20 Workshop 22nd - 23th July, 2005
More informationFinite model finding in satisfiability modulo theories
University of Iowa Iowa Research Online Theses and Dissertations Fall 2013 Finite model finding in satisfiability modulo theories Andrew Joseph Reynolds University of Iowa Copyright 2013 Andrew J. Reynolds
More informationChapter 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 informationSoftware Verification with Abstraction-Based Methods
Software Verification with Abstraction-Based Methods Ákos Hajdu PhD student Department of Measurement and Information Systems, Budapest University of Technology and Economics MTA-BME Lendület Cyber-Physical
More informationLeonardo de Moura Microsoft Research
Leonardo de Moura Microsoft Research Is formula F satisfiable modulo theory T? SMT solvers have specialized algorithms for T b + 2 = c and f(read(write(a,b,3), c-2)) f(c-b+1) b + 2 = c and f(read(write(a,b,3),
More informationNotes. Corneliu Popeea. May 3, 2013
Notes Corneliu Popeea May 3, 2013 1 Propositional logic Syntax We rely on a set of atomic propositions, AP, containing atoms like p, q. A propositional logic formula φ Formula is then defined by the following
More informationPropositional 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 informationArgoCaLyPso 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 informationLecture 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 informationLinear Algebra, Boolean Rings and Resolution? Armin Biere. Institute for Formal Models and Verification Johannes Kepler University Linz, Austria
Linear Algebra, Boolean Rings and Resolution? Armin Biere Institute for Formal Models and Verification Johannes Kepler University Linz, Austria ACA 08 Applications of Computer Algebra Symbolic Computation
More informationInterpolation and Symbol Elimination in Vampire
Interpolation and Symbol Elimination in Vampire Kryštof Hoder 1, Laura Kovács 2, and Andrei Voronkov 1 1 University of Manchester 2 TU Vienna Abstract. It has recently been shown that proofs in which some
More informationComputational 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 informationIntroduction to Z3. Bow-Yaw Wang. December 19, Institute of Information Science Academia Sinica, Taiwan
Introduction to Z3 Bow-Yaw Wang Institute of Information Science Academia Sinica, Taiwan December 19, 2017 Bow-Yaw Wang (Academia Sinica) Introduction to Z3 December 19, 2017 1 / 26 Outline 1 Introduction
More informationAlgorithms 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 informationSatisifiability 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 informationUSING FOURIER-MOTZKIN VARIABLE ELIMINATION FOR MCSAT EXPLANATIONS IN SMT-RAT
The present work was submitted to the LuFG Theory of Hybrid Systems BACHELOR OF COMPUTER SCIENCE USING FOURIER-MOTZKIN VARIABLE ELIMINATION FOR MCSAT EXPLANATIONS IN SMT-RAT Lorena Calvo Bartolomé Prüfer:
More informationA Concurrency Problem with Exponential DPLL(T ) Proofs
A Concurrency Problem with Exponential DPLL(T ) Proofs Liana Hadarean 1 Alex Horn 1 Tim King 2 1 University of Oxford 2 Verimag June 5, 2015 2 / 27 Outline SAT/SMT-based Verification Techniques for Concurrency
More informationOverview. CS389L: Automated Logical Reasoning. Lecture 7: Validity Proofs and Properties of FOL. Motivation for semantic argument method
Overview CS389L: Automated Logical Reasoning Lecture 7: Validity Proofs and Properties of FOL Agenda for today: Semantic argument method for proving FOL validity Işıl Dillig Important properties of FOL
More informationValidating 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 informationOn Theorem Proving for Program Checking
On Theorem Proving for Program Checking Historical perspective and recent developments Maria Paola Bonacina Dipartimento di Informatica Università degli Studi di Verona Strada Le Grazie 15, I-37134 Verona,
More informationSAT, CSP, and proofs. Ofer Strichman Technion, Haifa. Tutorial HVC 13
SAT, CSP, and proofs Ofer Strichman Technion, Haifa Tutorial HVC 13 1 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 -
More informationFirst Order Logic (FOL)
First Order Logic (FOL) Testing, Quality Assurance, and Maintenance Winter 2018 Prof. Arie Gurfinkel based on slides by Prof. Ruzica Piskac, Nikolaj Bjorner, and others References Chpater 2 of Logic for
More informationSolving Quantified Linear Arithmetic by Counterexample- Guided Instantiation
Noname manuscript No. (will be inserted by the editor) Solving Quantified Linear Arithmetic by Counterexample- Guided Instantiation Andrew Reynolds Tim King Viktor Kuncak Received: date / Accepted: date
More informationSymbolic Computation Techniques in SMT Solving
Symbolic Computation Techniques in SMT Solving Erika Ábrahám RWTH Aachen University, Germany BCS-FACS Evening Seminar Joint event with the London Mathematical Society London /11/017 Photo: https://de.wikipedia.org/wiki/greater_london
More informationLecture 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 informationPrice: $25 (incl. T-Shirt, morning tea and lunch) Visit:
Three days of interesting talks & workshops from industry experts across Australia Explore new computing topics Network with students & employers in Brisbane Price: $25 (incl. T-Shirt, morning tea and
More informationCSE507. 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 informationCOMP219: 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 informationLecture 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 informationRound 9: Satisfiability Modulo Theories, Part II
Round 9: Satisfiability Modulo Theories, Part II Tommi Junttila Aalto University School of Science Department of Computer Science CS-E322 Declarative Programming Spring 218 Tommi Junttila (Aalto University)
More informationPROPOSITIONAL 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 informationDeductive Verification
Deductive Verification Mooly Sagiv Slides from Zvonimir Rakamaric First-Order Logic A formal notation for mathematics, with expressions involving Propositional symbols Predicates Functions and constant
More informationIntroduction 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 informationFoundations of Artificial Intelligence
Foundations of Artificial Intelligence 32. Propositional Logic: Local Search and Outlook Martin Wehrle Universität Basel April 29, 2016 Propositional Logic: Overview Chapter overview: propositional logic
More informationInteger vs. constraint programming. IP vs. CP: Language
Discrete Math for Bioinformatics WS 0/, by A. Bockmayr/K. Reinert,. Januar 0, 0:6 00 Integer vs. constraint programming Practical Problem Solving Model building: Language Model solving: Algorithms IP vs.
More informationImproving Unsatisfiability-based Algorithms for Boolean Optimization
Improving Unsatisfiability-based Algorithms for Boolean Optimization Vasco Manquinho Ruben Martins Inês Lynce IST/INESC-ID, Technical University of Lisbon, Portugal SAT 2010, Edinburgh 1 / 27 Motivation
More informationSAT 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