Model Based Theory Combination
|
|
- Lynn Long
- 5 years ago
- Views:
Transcription
1 Model Based Theory Combination SMT 2007 Leonardo de Moura and Nikolaj Bjørner {leonardo, Microsoft Research Model Based Theory Combination p.1/20
2 Combination of Theories In practice, we need a combination of theories. Examples: Given x+2 = y f(read(write(a,x, 3),y 2)) = f(y x+1) f(f(x) f(y)) f(z),x + z y x z < 0 Σ = Σ 1 Σ 2 T 1, T 2 : theories over Σ 1, Σ 2 T = DC(T 1 T 2 ) Is T consistent? Given satisfiability procedures for conjunction of literals of T 1 and T 2, how to decide the satisfiability of T? Model Based Theory Combination p.2/20
3 Nelson-Oppen Combination Let T 1 and T 2 be consistent, stably infinite theories over disjoint (countable) signatures. Assume satisfiability of conjunction of literals can decided in O(T 1 (n)) and O(T 2 (n)) time respectively. Then, 1. The combined theory T is consistent and stably infinite. 2. Non-deterministic NO: Satisfiability of quantifier free conjunction of literals in T can be decided in O(2 n2 (T 1 (n) + T 2 (n)). 3. Deterministic NO: If T 1 and T 2 are convex, then so is T and satisfiability in T is in O(n 4 (T 1 (n) + T 2 (n))). Model Based Theory Combination p.3/20
4 Nelson-Oppen Combination Procedure The combination procedure: Initial State: φ is a conjunction of literals over Σ 1 Σ 2. Purification: Preserving satisfiability transform φ into φ 1 φ 2, such that, φ i Σ i. Interaction: Guess a partition of V(φ 1 ) V(φ 2 ) into disjoint subsets. Express it as conjunction of literals ψ. Example. The partition {x 1 }, {x 2,x 3 }, {x 4 } is represented as x 1 x 2,x 1 x 4,x 2 x 4,x 2 = x 3. Component Procedures : Use individual procedures to decide whether φ i ψ is satisfiable. Return: If both return yes, return yes. No, otherwise. Model Based Theory Combination p.4/20
5 Convexity A theory T is convex iff for all finite sets Γ of literals and for all non-empty disjunctions i I x i = y i of variables, Γ = T i I x i = y i iff Γ = T x i = y i for some i I. For convex theories, instead of guessing, one can deduce the equalities to be shared. Key idea: propagate x y to Γ 2 whenever T 1 Γ 1 = x y, and vice-versa. Sharing equalities is sufficient: Theory T 1 can assume that x M2 y M 2 whenever x y is not implied by T 2 and vice versa. Model Based Theory Combination p.5/20
6 Combining theories in practice Propagate all implied equalities. Deterministic Nelson-Oppen. Complete only for convex theories. It may be expensive for some theories. Delayed Theory Combination. Nondeterministic Nelson-Oppen. Create set of interface equalities (x = y) between shared variables. Use SAT solver to guess the partition. Disadvantage: the number of additional equality literals is quadratic in the number of shared variables. Model Based Theory Combination p.6/20
7 Model based theory combination Common to these methods is that they are pessimistic about which equalities are propagated. Model-based Theory Combination Optimistic approach. Use a candidate model M i for one of the theories T i and propagate all equalities implied by the candidate model, hedging that other theories will agree. if M i = T i Γ i {u = v} then propagate u = v. If not, use backtracking to fix the model. It is cheaper to enumerate equalities that are implied in a particular model than of all models. Model Based Theory Combination p.7/20
8 Model based theory combination: Example Purifying x = f(y 1),f(x) f(y), 0 x 1, 0 y 1 Model Based Theory Combination p.8/20
9 Model based theory combination: Example x = f(z),f(x) f(y), 0 x 1, 0 y 1,z = y 1 Model Based Theory Combination p.8/20
10 Model based theory combination: Example T E T A Literals Eq. Classes Model Literals Model x = f(z) {x,f(z)} x E = 1 0 x 1 x A = 0 f(x) f(y) {y} y E = 2 0 y 1 y A = 0 {z} z E = 3 z = y 1 z A = 1 {f(x)} f E = { 1 4, {f(y)} 2 5, 3 1, else 6 } Assume x = y Model Based Theory Combination p.8/20
11 Model based theory combination: Example T E T A Literals Eq. Classes Model Literals Model x = f(z) {x,y,f(z)} x E = 1 0 x 1 x A = 0 f (x) f (y) {z} y E = 1 0 y 1 y A = 0 x = y {f (x),f (y)} z E = 2 z = y 1 z A = 1 f E = { 1 3, x = y 2 1, else 4 } Unsatisfiable Model Based Theory Combination p.8/20
12 Model based theory combination: Example T E T A Literals Eq. Classes Model Literals Model x = f(z) {x,f(z)} x E = 1 0 x 1 x A = 0 f(x) f(y) {y} y E = 2 0 y 1 y A = 0 x y {z} z E = 3 z = y 1 z A = 1 {f(x)} f E = { 1 4, x y {f(y)} 2 5, 3 1, else 6 } Backtrack, and assert x y. T A model need to be fixed. Model Based Theory Combination p.8/20
13 Model based theory combination: Example T E T A Literals Eq. Classes Model Literals Model x = f(z) {x,f(z)} x E = 1 0 x 1 x A = 0 f(x) f(y) {y} y E = 2 0 y 1 y A = 1 x y {z} z E = 3 z = y 1 z A = 0 {f(x)} f E = { 1 4, x y {f(y)} 2 5, 3 1, else 6 } Assume x = z Model Based Theory Combination p.8/20
14 Model based theory combination: Example T E T A Literals Eq. Classes Model Literals Model x = f(z) {x,z,f(x),f(z)} x E = 1 0 x 1 x A = 0 f(x) f(y) {y} y E = 2 0 y 1 y A = 1 x y {f(y)} z E = 1 z = y 1 z A = 0 x = z f E = { 1 1, x y 2 3, x = z else 4 } Satisfiable Model Based Theory Combination p.8/20
15 Model based theory combination: Example T E T A Literals Eq. Classes Model Literals Model x = f(z) {x,z,f(x),f(z)} x E = 1 0 x 1 x A = 0 f(x) f(y) {y} y E = 2 0 y 1 y A = 1 x y {f(y)} z E = 1 z = y 1 z A = 0 x = z f E = { 1 1, x y 2 3, x = z else 4 } Let h be the bijection between S E and S A. h = { 1 0, 2 1, 3 1, 4 2,...} Model Based Theory Combination p.8/20
16 Model based theory combination: Example T E T A Literals Model Literals Model x = f(z) x E = 1 0 x 1 x A = 0 f(x) f(y) y E = 2 0 y 1 y A = 1 x y z E = 1 z = y 1 z A = 0 x = z f E = { 1 1, x y f A = { , x = z 1 1 else 4 } else 2} Extending A using h. h = { 1 0, 2 1, 3 1, 4 2,...} Model Based Theory Combination p.8/20
17 Simplex: a model base theory solver Tableau: B and N denote the set of basic and nonbasic variables. x i = x j N a ij x j x i B, Solver stores upper and lower bounds l i and u i, and a mapping β that assigns a value β(x i ) to every variable. The bounds on nonbasic variables are always satisfied by β, that is, the following invariant is maintained x j N, l j β(x j ) u j. Bounds constraints for basic variables are not necessarily satisfied by β, but pivoting steps can be used to fix bounds violations. Model Based Theory Combination p.9/20
18 Simplex: a model based theory solver The current model for the simplex solver is given by β. Bound propagation Equations + Bounds can be used to derive new bounds. Example: x = y z, y 2, z 3 x 1. Model Based Theory Combination p.10/20
19 Opportunistic equality propagation Efficient (and incomplete) methods for propagating equalities. Notation A variable x i is fixed iff l i = u i. A linear polynomial x j V a ijx j is fixed iff x j is fixed or a ij = 0. Given a linear polynomial P = x j V a ijx j : β(p) denotes x j V a ijβ(x j ). Model Based Theory Combination p.11/20
20 Opportunistic equality propagation Equality propagation in arithmetic: FixedEq l i x i u i, l j x j u j = x i = x j if l i = u i = l j = u j EqRow x i = x j + P = x i = x j if P is fixed, and β(p) = 0 EqOffsetRows x i = x k + P 1 = x i = x j if x j = x k + P 2 P 1 and P 2 are fixed, and β(p 1 ) = β(p 2 ) EqRows x i = P + P 1 x j = P + P 2 = x i = x j if P 1 and P 2 are fixed, and β(p 1 ) = β(p 2 ) Model Based Theory Combination p.12/20
21 Opportunistic theory/equality propagation These rules can miss some implied equalities. Example: z = w is detected, but x = y is not because w is not a fixed variable. x = y + w + s z = w + s 0 z w 0 0 s 0 Remark: bound propagation can be used imply the bound 0 w, making w a fixed variable. Model Based Theory Combination p.13/20
22 Model mutation Sometimes x M = y M by accident. Model mutation: diversify the current model. For a Simplex based procedure, freedom intervals model mutation without pivoting. Model Based Theory Combination p.14/20
23 Ackermann s reduction Ackermann s reduction is used to remove uninterpreted functions. For each application f( a) in φ create a fresh variable f a. For each pair of applications f( a), f( c) in φ add the clause a c f a = f c. Replace f( a) with f a in φ. It is used in some SMT solvers to reduce T LA T E to T LA. Main problem: quadratic number of new clauses. It is also problematic to use this approach in the context of several theories and when combining SMT solvers with quantifier instantiation. Model Based Theory Combination p.15/20
24 Ackermann s reduction Congruence closure based algorithms miss the following inference rule f(n) f(m) = n i m i Following simple formula takes O(2 N ) time to be solved using SAT + Congruence closure. N (p i x i = v 0 ), ( p i x i = v 1 ), (p i y i = v 0 ), ( p i y i = v 1 ), i=1 f(x N,...,f(x 2,x 1 )...) f(y N,...,f(y 2,y 1 )...) It can be solved in polynomial time with Ackermann s reduction. A similar behavior is also observed in several pipeline verification problems. Model Based Theory Combination p.16/20
25 Dynamic Ackermann s reduction This performance problem reflects a limitation in the current congruence closure algorithms used in SMT solvers. It is not related with the theory combination problem. Dynamic Ackermannization: clauses corresponding to Ackermann s reduction are added when a congruence rule participates in a conflict. CC Ack Dyn Ack conflicts time (s) conflicts time (s) conflicts time (s) c10bi f10id > > Model Based Theory Combination p.17/20
26 Experimental Results # MathSAT MathSAT-dtc Yices Z3 EufLaArithmetic (11) (1) Hash Wisa (1) RandomCoupled (51) RandomDecoupled (1) (51) Simple (29) (53) 1.00 Ackermann (82) (82) Total (95) (112) (155) Model Based Theory Combination p.18/20
27 Experimental Results (cont.) Z3-dtc Z3-dtc* Z3-ack Z3-neq Z3-ndack Z3 EufLaArithmetic (11) (4) (1) Hash Wisa RandomCoupled (166) (103) RandomDecoupled (85) (71) Simple Ackermann (77) (77) (77) 1.72 Total (339) (255) (1) (77) Model Based Theory Combination p.19/20
28 Conclusion New theory combination method. Solves a number of practical deficiencies with other known solutions to integrating theories. Optimizations: Opportunistic equality propagation. Model mutation. Dynamic Ackermannization copes with limitations in the current congruence closure algorithms. We are experimenting with a model-based array theory. Model Based Theory Combination p.20/20
Model-based Theory Combination
Electronic Notes in Theoretical Computer Science 198 (2008) 37 49 www.elsevier.com/locate/entcs Model-based Theory Combination Leonardo de Moura 1 Nikolaj Bjørner 2 Microsoft Research, One Microsoft Way,
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 informationDeveloping Efficient SMT Solvers
Developing Efficient SMT Solvers CMU May 2007 Leonardo de Moura leonardo@microsoft.com Microsoft Research CMU May 2007 p.1/66 Credits Slides inspired by previous presentations by: Clark Barrett, Harald
More informationCombining Decision Procedures
Combining Decision Procedures Ashish Tiwari tiwari@csl.sri.com http://www.csl.sri.com/. Computer Science Laboratory SRI International 333 Ravenswood Menlo Park, CA 94025 Combining Decision Procedures (p.1
More informationTheory Combination. Clark Barrett. New York University. CS357, Stanford University, Nov 2, p. 1/24
CS357, Stanford University, Nov 2, 2015. p. 1/24 Theory Combination Clark Barrett barrett@cs.nyu.edu New York University CS357, Stanford University, Nov 2, 2015. p. 2/24 Combining Theory Solvers Given
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 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 informationTopics 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: Satisfiability Modulo Theories
SMT: Satisfiability Modulo Theories Ranjit Jhala, UC San Diego April 9, 2013 Decision Procedures Last Time Propositional Logic Today 1. Combining SAT and Theory Solvers 2. Theory Solvers Theory of Equality
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 informationSMT Solvers: Theory and Implementation
SMT Solvers: Theory and Implementation Summer School on Logic and Theorem Proving Leonardo de Moura leonardo@microsoft.com Microsoft Research Oregon 2008 p.1/168 Overview Satisfiability is the problem
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 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 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 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 informationCombined Satisfiability Modulo Parametric Theories
Intel 07 p.1/39 Combined Satisfiability Modulo Parametric Theories Sava Krstić*, Amit Goel*, Jim Grundy*, and Cesare Tinelli** *Strategic CAD Labs, Intel **The University of Iowa Intel 07 p.2/39 This Talk
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 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 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 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
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 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 informationCombining Decision Procedures: The Nelson-Oppen approach
Combining Decision Procedures: The Nelson-Oppen approach Albert Oliveras and Enric Rodríguez-Carbonell Deduction and Verification Techniques Session 4 Fall 2009, Barcelona Combining Decision Procedures:The
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 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 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 informationTo Ackermann-ize or not to Ackermann-ize? On Efficiently Handling Uninterpreted Function
To Ackermann-ize or not to Ackermann-ize? On Efficiently Handling Uninterpreted Function Symbols in SMT(EUF T ) Roberto Bruttomesso, Alessandro Cimatti, Anders Franzén,2, Alberto Griggio 2, Alessandro
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 informationThe Simplify Theorem Prover
The Simplify Theorem Prover Class Notes for Lecture No.8 by Mooly Sagiv Notes prepared by Daniel Deutch Introduction This lecture will present key aspects in the leading theorem proving systems existing
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 informationEfficient Theory Combination via Boolean Search
Efficient Theory Combination via Boolean Search Marco Bozzano a, Roberto Bruttomesso a, Alessandro Cimatti a, Tommi Junttila b, Silvio Ranise c, Peter van Rossum d, Roberto Sebastiani e a ITC-IRST, Via
More informationAn Introduction to Satisfiability Modulo Theories
ICCAD 2009 Tutorial p. 1/78 An Introduction to Satisfiability Modulo Theories Clark Barrett and Sanjit Seshia ICCAD 2009 Tutorial p. 2/78 Roadmap Theory Solvers Examples of Theory Solvers Combining Theory
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 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 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 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 informationComputing a Complete Basis for Equalities Implied by a System of LRA Constraints
Computing a Complete Basis for Equalities Implied by a System of LRA Constraints Martin Bromberger 1,2 and Christoph Weidenbach 1 1 Max Planck Institute for Informatics, Saarbrücken, Germany {mbromber,weidenb}@mpi-inf.mpg.de
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 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 informationThe Impact of Craig s Interpolation Theorem. in Computer Science
The Impact of Craig s Interpolation Theorem in Computer Science Cesare Tinelli tinelli@cs.uiowa.edu The University of Iowa Berkeley, May 2007 p.1/28 The Role of Logic in Computer Science Mathematical logic
More informationDecision Procedures. Jochen Hoenicke. Software Engineering Albert-Ludwigs-University Freiburg. Summer 2012
Decision Procedures Jochen Hoenicke Software Engineering Albert-Ludwigs-University Freiburg Summer 2012 Jochen Hoenicke (Software Engineering) Decision Procedures Summer 2012 1 / 28 Quantifier-free Rationals
More informationPolite Theories Revisited
Polite Theories Revisited Dejan Jovanović and Clark Barrett New York University dejan@cs.nyu.edu, barrett@cs.nyu.edu c Springer-Verlag Abstract. The classic method of Nelson and Oppen for combining decision
More informationTermination Analysis of Loops
Termination Analysis of Loops Zohar Manna with Aaron R. Bradley Computer Science Department Stanford University 1 Example: GCD Algorithm gcd(y 1, y 2 ) = gcd(y 1 y 2, y 2 ) if y 1 > y 2 gcd(y 1, y 2 y
More informationSAT/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 informationStrategies for Combining Decision Procedures
Strategies for Combining Decision Procedures Sylvain Conchon 1 and Sava Krstić 2 1 École des Mines de Nantes 2 OGI School of Science & Engineering at Oregon Health & Sciences University Abstract. Implementing
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 informationPropositional and Predicate Logic - V
Propositional and Predicate Logic - V Petr Gregor KTIML MFF UK WS 2016/2017 Petr Gregor (KTIML MFF UK) Propositional and Predicate Logic - V WS 2016/2017 1 / 21 Formal proof systems Hilbert s calculus
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 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 informationLecture 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 informationEssential facts about NP-completeness:
CMPSCI611: NP Completeness Lecture 17 Essential facts about NP-completeness: Any NP-complete problem can be solved by a simple, but exponentially slow algorithm. We don t have polynomial-time solutions
More informationA DPLL(T ) Theory Solver for a Theory of Strings and Regular Expressions
A DPLL(T ) Theory Solver for a Theory of Strings and Regular Expressions Tianyi Liang 1, Andrew Reynolds 1, Cesare Tinelli 1, Clark Barrett 2, and Morgan Deters 2 1 Department of Computer Science, The
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 informationAutomated Program Verification and Testing 15414/15614 Fall 2016 Lecture 7: Procedures for First-Order Theories, Part 1
Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 7: Procedures for First-Order Theories, Part 1 Matt Fredrikson mfredrik@cs.cmu.edu October 17, 2016 Matt Fredrikson Theory Procedures
More informationPredicate Abstraction via Symbolic Decision Procedures
Predicate Abstraction via Symbolic Decision Procedures Shuvendu K. Lahiri Thomas Ball Byron Cook May 26, 2005 Technical Report MSR-TR-2005-53 Microsoft Research Microsoft Corporation One Microsoft Way
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 informationSMT and Z3. Nikolaj Bjørner Microsoft Research ReRISE Winter School, Linz, Austria February 5, 2014
SMT and Z3 Nikolaj Bjørner Microsoft Research ReRISE Winter School, Linz, Austria February 5, 2014 Plan Mon An invitation to SMT with Z3 Tue Equalities and Theory Combination Wed Theories: Arithmetic,
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 informationGomory Cuts. Chapter 5. Linear Arithmetic. Decision Procedures. An Algorithmic Point of View. Revision 1.0
Chapter 5 Linear Arithmetic Decision Procedures An Algorithmic Point of View D.Kroening O.Strichman Revision 1.0 Cutting planes Recall that in Branch & Bound we first solve a relaxed problem (i.e., no
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 informationAutomated Program Verification and Testing 15414/15614 Fall 2016 Lecture 8: Procedures for First-Order Theories, Part 2
Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 8: Procedures for First-Order Theories, Part 2 Matt Fredrikson mfredrik@cs.cmu.edu October 17, 2016 Matt Fredrikson Theory Procedures
More informationECE473 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 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 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 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 informationExploiting symmetry in SMT problems
Exploiting symmetry in SMT problems David Déharbe, Pascal Fontaine 2, Stephan Merz 2, and Bruno Woltzenlogel Paleo 3 Universidade Federal do Rio Grande do Norte, Natal, RN, Brazil david@dimap.ufrn.br 2
More informationLRA Interpolants from No Man s Land. Leonardo Alt, Antti E. J. Hyvärinen, and Natasha Sharygina University of Lugano, Switzerland
LR Interpolants from No Man s Land Leonardo lt, ntti E. J. Hyvärinen, and Natasha Sharygina University of Lugano, Switzerland Motivation The goal: Finding the right proof The tool: Make interpolation
More informationDipartimento di Scienze dell Informazione
UNIVERSITÀ DEGLI STUDI DI MILANO Dipartimento di Scienze dell Informazione RAPPORTO INTERNO N 313-07 Combination Methods for Satisfiability and Model-Checking of Infinite-State Systems Silvio Ghilardi,
More information9. Quantifier-free Equality and Data Structures
9. Quantifier-free Equality and Data Structures The Theory of Equality T E Σ E : {=, a, b, c,..., f, g, h,..., p, q, r,...} uninterpreted symbols: constants a, b, c,... functions f, g, h,... predicates
More informationLinear Functional Fixed-points
Linear Functional Fixed-points Nikolaj Bjørner Microsoft Research nbjorner@microsoft.com Joe Hendrix Microsoft Corporation johendri@microsoft.com January 30, 2009 Technical Report MSR-TR-2009-8 Microsoft
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 informationSatisfiability 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 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 informationA two-tier technique for supporting quantifiers in a lazily proof-explicating theorem prover
A two-tier technique for supporting quantifiers in a lazily proof-explicating theorem prover K. Rustan M. Leino 0, Madan Musuvathi 0, and Xinming Ou 1 0 Microsoft Research, Redmond, WA, USA {leino,madanm@microsoft.com
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 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 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 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 informationOn 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 informationA Randomized Satisfiability Procedure for Arithmetic and Uninterpreted Function Symbols
A Randomized Satisfiability Procedure for Arithmetic and Uninterpreted Function Symbols Sumit Gulwani and George C. Necula University of California, Berkeley {gulwani,necula}@cs.berkeley.edu Abstract.
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 informationNikolaj Bjørner Microsoft Research Tractability Workshop MSR Cambridge July 5, FSE &
Nikolaj Bjørner Microsoft Research Tractability Workshop MSR Cambridge July 5,6 2010 FSE & Z3 An Efficient SMT solver: Overview and Applications. A hands on example of Engineering SMT solvers: Efficient
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 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 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 informationDipartimento di Scienze dell Informazione
UNIVERSITÀ DEGLI STUDI DI MILANO Dipartimento di Scienze dell Informazione RAPPORTO INTERNO N 309-06 Deciding Extensions of the Theory of Arrays by Integrating Decision Procedures and Instantiation Strategies
More informationAlgebraic Methods. Motivation: Systems like this: v 1 v 2 v 3 v 4 = 1 v 1 v 2 v 3 v 4 = 0 v 2 v 4 = 0
Motivation: Systems like this: v v 2 v 3 v 4 = v v 2 v 3 v 4 = 0 v 2 v 4 = 0 are very difficult for CNF SAT solvers although they can be solved using simple algebraic manipulations Let c 0, c,...,c 2 n
More informationA Reduction Approach to Decision Procedures
A Reduction Approach to Decision Procedures Deepak Kapur and Calogero G. Zarba University of New Mexico Abstract. We present an approach for designing decision procedures based on the reduction of complex
More informationAVACS Automatic Verification and Analysis of Complex Systems REPORTS. of SFB/TR 14 AVACS. Editors: Board of SFB/TR 14 AVACS
AVACS Automatic Verification and Analysis of Complex Systems REPORTS of SFB/TR 14 AVACS Editors: Board of SFB/TR 14 AVACS Constraint Solving for Interpolation Andrey Rybalchenko by Viorica Sofronie-Stokkermans
More informationDescription Logics. Deduction in Propositional Logic. franconi. Enrico Franconi
(1/20) Description Logics Deduction in Propositional Logic Enrico Franconi franconi@cs.man.ac.uk http://www.cs.man.ac.uk/ franconi Department of Computer Science, University of Manchester (2/20) Decision
More informationData Structures with Arithmetic Constraints: a Non-Disjoint Combination
Data Structures with Arithmetic Constraints: a Non-Disjoint Combination E. Nicolini, C. Ringeissen, and M. Rusinowitch LORIA & INRIA Nancy Grand Est FroCoS 09 E. Nicolini et al. (LORIA & INRIA) Data structures
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 informationEfficient E-matching for SMT Solvers. Leonardo de Moura, Nikolaj Bjørner Microsoft Research, Redmond
Efficient E-matching for SMT Solvers Leonardo de Moura, Nikolaj Bjørner Microsoft Research, Redmond The Z3tting Z3 is an inference engine tailored towards formulas arising from program verification tools
More informationPropositional 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 informationMATH 13 SAMPLE FINAL EXAM SOLUTIONS
MATH 13 SAMPLE FINAL EXAM SOLUTIONS WINTER 2014 Problem 1 (15 points). For each statement below, circle T or F according to whether the statement is true or false. You do NOT need to justify your answers.
More informationNP-completeness of small conflict set generation for congruence closure
NP-completeness of small conflict set generation for congruence closure Andreas Fellner 1,2, Pascal Fontaine 3, Georg Hofferek 4 and Bruno Woltzenlogel Paleo 2,5 1 IST-Austria, Klosterneuburg (Austria)
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 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 informationA Collection of Problems in Propositional Logic
A Collection of Problems in Propositional Logic Hans Kleine Büning SS 2016 Problem 1: SAT (respectively SAT) Instance: A propositional formula α (for SAT in CNF). Question: Is α satisfiable? The problems
More informationNon-linear Interpolant Generation and Its Application to Program Verification
Non-linear Interpolant Generation and Its Application to Program Verification Naijun Zhan State Key Laboratory of Computer Science, Institute of Software, CAS Joint work with Liyun Dai, Ting Gan, Bow-Yaw
More information