HySAT. what you can use it for how it works example from application domain final remarks. Christian Herde /12
|
|
- Isabel Willis
- 5 years ago
- Views:
Transcription
1 CP2007: Presentation of recent CP solvers HySAT what you can use it for how it works example from application domain final remarks Christian Herde /2
2 What you can use it for Satisfiability checker for quantifier-free Boolean combinations of arithmetic constraints over the reals and integers Can deal with nonlinear constraints and thousands of variables ( b c) (b sin(x) y < 7.2) ( 2x y = 8 c) (i 2 = 3j 5) HySAT SAT UNSAT unknown Christian Herde /2
3 What you can use it for Satisfiability checker for quantifier-free Boolean combinations of arithmetic constraints over the reals and integers Can deal with nonlinear constraints and thousands of variables ( b c) (b sin(x) y < 7.2) ( 2x y = 8 c) (i 2 = 3j 5) HySAT SAT UNSAT unknown Allows mixing of Boolean, integer, and float variables in the same arithmetic constraint e.g. pseudo Boolean constraints possible Christian Herde /2
4 What you can use it for: Solving formulas ( b c) (b sin(x) y < 7.2) ( 2x y = 8 c) (i 2 = 3j 5) SOLUTION: b [, ] c [0, 0] DECL boole b, c; float [-00, 00] x, y; int [-00, 00] i, j; EXPR!b or!c; b -> sin(x) * y < 7.2; nrt(2*x - y, 2) = 8 or c; i^2 = 3*j - 5; HySAT i [-, -] j [42, 42] x [2.4357, ] y [ , ] Christian Herde /2
5 What you can use it for: Bounded Model Checking x := 2 DECL boole b; float [0.0, 000.0] x; b/ x := 3 x b/ x := x 2 + Safety property: There s no sequence of input values such that 3.4 x 3.5 SOLUTION: b [0, [, [, [0, [, [, [0, [, [0, [, [, [0, 0] COUNTEREXAMPLE INIT -- Characterization of initial state. x = 2.0; TRANS -- Transition relation. b -> x = x^2 + ;!b -> x = nrt(x, 3); TARGET -- State(s) to be reached. x >= 3.4 and x <= 3.5; HySAT x [2, [2.5874, [ , [ , [24.986, [ , [9.5467, [2.238, [ , [3.2526, [3.4989, ] Christian Herde /2
6 How it works HySAT is not a SAT-Modulo-Theory solver: DPLL SAT + conflict driven learning + non chronol. backtrack. arithmetic constraint system consistent: yes / no explanation Arithmetic reasoner (Linear Progr.) HySAT can be seen as a generalization of the DPLL procedure deduction rule for n-ary disjunctions ( clauses ): unit propagation deduction rules for arithmetic operators: adopted from interval constraint solving search engine / branch-and-deduce framework inherited from DPLL All acceleration techniques known for DPLL also apply to arithmetic constraints: conflict-driven learning backjumping lazy clause evaluation (watched literal scheme) Christian Herde /2
7 How it works: Example c : c 2 : c 3 : c 4 : ( a c d) ( a b c) ( c d) (b x 2) Use Tseitin-style (i.e. definitional) transformation to rewrite input formula into a conjunction of constraints: n-ary disjunctions of bounds arithmetic constraints having at most one operation symbol c 5 : c 6 : (x 4 y 0 h 3 6.2) h = x 2 Boolean variables are regarded as 0- integer variables. Allows identification of literals with bounds on Booleans: c 7 : c 8 : h 2 = 2 y h 3 = h + h 2 b b b b 0 Float variables h,h 2,h 3 are used for decomposition of complex constraint x 2 2y 6.2. Christian Herde /2
8 How it works: Example c : ( a c d) DL : c 2 : ( a b c) a c 3 : c 4 : ( c d) (b x 2) c 5 : (x 4 y 0 h 3 6.2) c 6 : c 7 : c 8 : h = x 2 h 2 = 2 y h 3 = h + h 2 Christian Herde /2
9 How it works: Example c : ( a c d) DL : c 2 : ( a b c) a c c 3 : c 4 : c 5 : ( c d) (b x 2) (x 4 y 0 h 3 6.2) DL 2: b c d c 2 c 3 d 0 c 6 : c 7 : c 8 : h = x 2 h 2 = 2 y h 3 = h + h 2 Christian Herde /2
10 How it works: Example c : ( a c d) DL : c 2 : ( a b c) a c c 3 : c 4 : c 5 : ( c d) (b x 2) (x 4 y 0 h 3 6.2) DL 2: b c 2 c c 3 d d 0 c 6 : c 7 : c 8 : h = x 2 h 2 = 2 y h 3 = h + h 2 c 9 : ( a c) Christian Herde /2
11 How it works: Example c : ( a c d) DL : c 2 : ( a b c) a c 0 b 0 x 2 c 9 c 2 c 4 c 3 : c 4 : ( c d) (b x 2) c 5 : (x 4 y 0 h 3 6.2) c 6 : c 7 : c 8 : h = x 2 h 2 = 2 y h 3 = h + h 2 c 9 : ( a c) Christian Herde /2
12 How it works: Example c : ( a c d) DL : c 2 : ( a b c) a c 0 b 0 c 9 c 2 c 4 x 2 c 3 : c 4 : ( c d) (b x 2) DL 2: y 4 c 7 h 2 8 c 5 : (x 4 y 0 h 3 6.2) c 6 : c 7 : c 8 : h = x 2 h 2 = 2 y h 3 = h + h 2 c 9 : ( a c) Christian Herde /2
13 How it works: Example c : ( a c d) DL : c 2 : ( a b c) a c 0 b 0 c 9 c 2 c 4 x 2 c 3 : c 4 : c 5 : ( c d) (b x 2) (x 4 y 0 h 3 6.2) DL 2: DL 3: y 4 x 3 h c 5 c 7 h 2 8 h c 6 : c 7 : h = x 2 h 2 = 2 y c 6 h 9 c 8 c 8 : h 3 = h + h 2 c 9 : ( a c) Christian Herde /2
14 How it works: Example c : ( a c d) DL : c 2 : ( a b c) a c 0 b 0 c 9 c 2 c 4 x 2 c 3 : c 4 : c 5 : ( c d) (b x 2) (x 4 y 0 h 3 6.2) DL 2: DL 3: y 4 x 3 h c 5 c 7 h 2 8 h c 6 : c 7 : h = x 2 h 2 = 2 y c 6 h 9 c 8 c 8 : h 3 = h + h 2 c 9 : c 0 : ( a c) (x < 2 y < 3 x > 3) conflict clause = symbolic description of a rectangular region of the search space which is excluded from future search Christian Herde /2
15 How it works: Example c : ( a c d) DL : c 2 : ( a b c) a c 0 b 0 c 9 c 2 c 4 x 2 c 3 : c 4 : c 5 : ( c d) (b x 2) (x 4 y 0 h 3 6.2) DL 2: y 4 c0 x > 3 c 7 c 6 h 2 8 h > 9 c 6 : c 7 : c 8 : h = x 2 h 2 = 2 y h 3 = h + h 2 c 9 : c 0 : ( a c) (x < 2 y < 3 x > 3) Christian Herde /2
16 How it works: Example c : ( a c d) DL : c 2 : ( a b c) a c 0 b 0 c 9 c 2 c 4 x 2 c 3 : c 4 : c 5 : ( c d) (b x 2) (x 4 y 0 h 3 6.2) DL 2: y 4 c0 x > 3 c 7 c 6 h 2 8 h > 9 c 6 : h = x 2 c 7 : c 8 : c 9 : c 0 : h 2 = 2 y h 3 = h + h 2 ( a c) (x < 2 y < 3 x > 3) Continue do split and deduce until either formula turns out to be UNSAT (unresolvable conflict) solver is left with sufficiently small portion of the search space for which it cannot derive any contradiction Avoid infinite splitting and deduction: minimal splitting width discard a deduced bound if it yields small progress only Christian Herde /2
17 Application: BMC of Matlab/Simulink Model Example: Train Separation in Absolute Braking Distance inf xr_init v_init a_free xr_l xr_init v_init a_free xr_l xr xh v a xr xh v a [xr2] [xh2] [v2] [a2] [xr] [xh] [v] [a] Minimal admissible distance d between two following trains equals braking distance d b of the second train plus a safety distance S. First train reports position of its end to the second train every 8 seconds. Controller in second train automatically initiates braking to maintain a safe distance. Christian Herde /2
18 Application: BMC of Matlab/Simulink Model Model of Controller & Train Dynamics 4 a i o i2 o2 i3 o3 timer 2 h brake a_brake a s x o v 200 len s x o 3 v 2 xh xr 4 xr_l 400 s 3 a_free 2 v_init xr_init Property to be checked: Does the controller guarantee that collisions don t occur in any possible scenario of use? Christian Herde /2
19 Application: BMC of Matlab/Simulink Model Translation to HySAT 4 a i o i2 o2 i3 o3 timer 2 h brake a_brake a s x o v 200 len s x o 3 v 2 xh xr 4 xr_l 400 s 3 a_free 2 v_init xr_init -- Switch block: Passes through the first input or the third input -- based on the value of the second input. brake -> a = a brake;!brake -> a = a free; Christian Herde /2
20 Application: BMC of Matlab/Simulink Model Translation to HySAT 4 a i o i2 o2 i3 o3 timer 2 h brake a_brake a s x o v 200 len s x o 3 v 2 xh xr 4 xr_l 400 s 3 a_free 2 v_init xr_init -- Euler approximation of integrator block xr = xr + dt * v; Christian Herde /2
21 Application: BMC of Matlab/Simulink Model Translation to HySAT 4 a i o i2 o2 i3 o3 timer 2 h brake a_brake a s x o v 200 len s x o 3 v 2 xh xr 4 xr_l 400 s 3 a_free 2 v_init xr_init -- Relay block: When the relay is on, it remains on until the input -- drops below the value of the switch off point parameter. When the -- relay is off, it remains off until the input exceeds the value of -- the switch on point parameter. (!is on and h >= param on ) -> ( is on and brake); (!is on and h < param on ) -> (!is on and!brake); ( is on and h <= param off) -> (!is on and!brake); ( is on and h > param off) -> ( is in and brake); Christian Herde /2
22 Application: BMC of Matlab/Simulink Model Simulation of the Model Error Trace found by HySAT pos pos v v2 a a2 66 unwindings dist 7809 variables decisions conflicts 5e8 assignments 20 minutes Christian Herde /2
23 Final Remarks Prototype implementation. Still missing: random restarts activity based splitting heuristics forgetting of learned clauses low level code optimizations (e.g. to improve caching) Future extensions: (SMT style) integration of Linear Programming native (ICP based) support for ODEs Tool & Papers available at Christian Herde /2
24 Thank you! Christian Herde /2
HySAT. HySAT Quick Start Guide. 1 Introduction. 2 Modes of operation. Christian Herde. December 20, Single formula mode
HySAT Quick Start Guide Christian Herde December 0, 009 HySAT 1 Introduction HySAT is a satisfiability checker for Boolean combinations of arithmetic constraints over real and integer valued variables.
More informationSAT Solvers. Ranjit Jhala, UC San Diego. April 9, 2013
SAT Solvers Ranjit Jhala, UC San Diego April 9, 2013 Decision Procedures We will look very closely at the following 1. Propositional Logic 2. Theory of Equality 3. Theory of Uninterpreted Functions 4.
More informationDeductive Methods, Bounded Model Checking
Deductive Methods, Bounded Model Checking http://d3s.mff.cuni.cz Pavel Parízek CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Deductive methods Pavel Parízek Deductive Methods, Bounded
More informationDPLL(Γ+T): a new style of reasoning for program checking
DPLL(Γ+T ): a new style of reasoning for program checking Dipartimento di Informatica Università degli Studi di Verona Verona, Italy June, 2011 Motivation: reasoning for program checking Program checking
More informationSMT-Style Program Analysis with Value-based Refinements
SMT-Style Program Analysis with Value-based Refinements Vijay D Silva Leopold Haller Daniel Kröning NSV-3 July 15, 2010 Outline Imprecision and Refinement in Abstract Interpretation SAT Style Abstract
More informationSatisfiability (SAT) Applications. Extensions/Related Problems. An Aside: Example Proof by Machine. Annual Competitions 12/3/2008
15 53:Algorithms in the Real World Satisfiability Solvers (Lectures 1 & 2) 1 Satisfiability (SAT) The original NP Complete Problem. Input: Variables V = {x 1, x 2,, x n }, Boolean Formula Φ (typically
More informationYices 1.0: An Efficient SMT Solver
Yices 1.0: An Efficient SMT Solver SMT-COMP 06 Leonardo de Moura (joint work with Bruno Dutertre) {demoura, bruno}@csl.sri.com. Computer Science Laboratory SRI International Menlo Park, CA Yices: An Efficient
More informationImproving Coq Propositional Reasoning Using a Lazy CNF Conversion
Using a Lazy CNF Conversion Stéphane Lescuyer Sylvain Conchon Université Paris-Sud / CNRS / INRIA Saclay Île-de-France FroCoS 09 Trento 18/09/2009 Outline 1 Motivation and background Verifying an SMT solver
More informationSymbolic and Concolic Execution of Programs
Symbolic and Concolic Execution of Programs Information Security, CS 526 Omar Chowdhury 10/7/2015 Information Security, CS 526 1 Reading for this lecture Symbolic execution and program testing - James
More informationFormally Certified Satisfiability Solving
SAT/SMT Proof Checking Verifying SAT Solver Code Future Work Computer Science, The University of Iowa, USA April 23, 2012 Seoul National University SAT/SMT Proof Checking Verifying SAT Solver Code Future
More informationCombining forces to solve Combinatorial Problems, a preliminary approach
Combining forces to solve Combinatorial Problems, a preliminary approach Mohamed Siala, Emmanuel Hebrard, and Christian Artigues Tarbes, France Mohamed SIALA April 2013 EDSYS Congress 1 / 19 Outline Context
More informationMinimum Satisfying Assignments for SMT. Işıl Dillig, Tom Dillig Ken McMillan Alex Aiken College of William & Mary Microsoft Research Stanford U.
Minimum Satisfying Assignments for SMT Işıl Dillig, Tom Dillig Ken McMillan Alex Aiken College of William & Mary Microsoft Research Stanford U. 1 / 20 Satisfiability Modulo Theories (SMT) Today, SMT solvers
More informationCS-E3220 Declarative Programming
CS-E3220 Declarative Programming Lecture 5: Premises for Modern SAT Solving Aalto University School of Science Department of Computer Science Spring 2018 Motivation The Davis-Putnam-Logemann-Loveland (DPLL)
More informationCAV Verification Mentoring Workshop 2017 SMT Solving
CAV Verification Mentoring Workshop 2017 SMT Solving Alberto Griggio Fondazione Bruno Kessler Trento, Italy The SMT problem Satisfiability Modulo Theories Given a (quantifier-free) FOL formula and a (decidable)
More informationSAT Solver. CS 680 Formal Methods Jeremy Johnson
SAT Solver CS 680 Formal Methods Jeremy Johnson Disjunctive Normal Form A Boolean expression is a Boolean function Any Boolean function can be written as a Boolean expression s x 0 x 1 f Disjunctive normal
More informationSAT, SMT and QBF Solving in a Multi-Core Environment
SAT, SMT and QBF Solving in a Multi-Core Environment Bernd Becker Tobias Schubert Faculty of Engineering, Albert-Ludwigs-University Freiburg, 79110 Freiburg im Breisgau, Germany {becker schubert}@informatik.uni-freiburg.de
More informationCourse Summary! What have we learned and what are we expected to know?
Course Summary! What have we learned and what are we expected to know? Overview! Introduction Modelling in MiniZinc Finite Domain Constraint Solving Search Linear Programming and Network Flow Mixed Integer
More informationYices 1.0: An Efficient SMT Solver
Yices 1.0: An Efficient SMT Solver AFM 06 Tutorial Leonardo de Moura (joint work with Bruno Dutertre) {demoura, bruno}@csl.sri.com. Computer Science Laboratory SRI International Menlo Park, CA Yices: An
More informationSAT/SMT Solvers and Applications
SAT/SMT Solvers and Applications University of Waterloo Winter 2013 Today s Lecture Lessons learnt so far Implementation-related attacks (control-hazard, malware,...) Program analysis techniques can detect
More informationMotivation. CS389L: Automated Logical Reasoning. Lecture 17: SMT Solvers and the DPPL(T ) Framework. SMT solvers. The Basic Idea.
Motivation Lecture 17: SMT rs and the DPPL(T ) Framework şıl Dillig n previous lectures, we looked at decision procedures for conjunctive formulas in various first-order theories This lecture: How to handle
More informationSeminar decision procedures: Certification of SAT and unsat proofs
Seminar decision procedures: Certification of SAT and unsat proofs Wolfgang Nicka Technische Universität München June 14, 2016 Boolean satisfiability problem Term The boolean satisfiability problem (SAT)
More informationGenerating Small Countermodels. Andrew Reynolds Intel August 30, 2012
Generating Small Countermodels using SMT Andrew Reynolds Intel August 30, 2012 Acknowledgements Intel Corporation AmitGoel, Sava Krstic University of Iowa Cesare Tinelli, Francois Bobot New York University
More informationSatisfiability Modulo Theories. DPLL solves Satisfiability fine on some problems but not others
DPLL solves Satisfiability fine on some problems but not others DPLL solves Satisfiability fine on some problems but not others Does not do well on proving multipliers correct pigeon hole formulas cardinality
More informationConstraint Programming
Constraint Programming Functional programming describes computation using functions f : A B Computation proceeds in one direction: from inputs (A) to outputs (B) e.g. f(x) = x / 2 is a function that maps
More informationSymbolic Methods. The finite-state case. Martin Fränzle. Carl von Ossietzky Universität FK II, Dpt. Informatik Abt.
Symbolic Methods The finite-state case Part I Martin Fränzle Carl von Ossietzky Universität FK II, Dpt. Informatik Abt. Hybride Systeme 02917: Symbolic Methods p.1/34 What you ll learn How to use and manipulate
More informationEECS 219C: Formal Methods Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley
EECS 219C: Formal Methods Boolean Satisfiability Solving Sanjit A. Seshia EECS, UC Berkeley The Boolean Satisfiability Problem (SAT) Given: A Boolean formula F(x 1, x 2, x 3,, x n ) Can F evaluate to 1
More informationBounded Model Checking with Parametric Data Structures
Bounded Model Checking with Marc Herbstritt (joint work with Erika Ábrahám, Bernd Becker, Martin Steffen) www.avacs.org August 15 2006 4th International Workshop on Bounded Model Checking Context Automated
More informationCDCL SAT Solvers. Joao Marques-Silva. Theory and Practice of SAT Solving Dagstuhl Workshop. April INESC-ID, IST, ULisbon, Portugal
CDCL SAT Solvers Joao Marques-Silva INESC-ID, IST, ULisbon, Portugal Theory and Practice of SAT Solving Dagstuhl Workshop April 2015 The Success of SAT Well-known NP-complete decision problem [C71] The
More informationXuandong Li. BACH: Path-oriented Reachability Checker of Linear Hybrid Automata
BACH: Path-oriented Reachability Checker of Linear Hybrid Automata Xuandong Li Department of Computer Science and Technology, Nanjing University, P.R.China Outline Preliminary Knowledge Path-oriented Reachability
More informationEXTENDING SAT SOLVER WITH PARITY CONSTRAINTS
TKK Reports in Information and Computer Science Espoo 2010 TKK-ICS-R32 EXTENDING SAT SOLVER WITH PARITY CONSTRAINTS Tero Laitinen TKK Reports in Information and Computer Science Espoo 2010 TKK-ICS-R32
More information4.1 Review - the DPLL procedure
Applied Logic Lecture 4: Efficient SAT solving CS 4860 Spring 2009 Thursday, January 29, 2009 The main purpose of these notes is to help me organize the material that I used to teach today s lecture. They
More informationBoolean Representations and Combinatorial Equivalence
Chapter 2 Boolean Representations and Combinatorial Equivalence This chapter introduces different representations of Boolean functions. It then discusses the applications of these representations for proving
More informationApplications of Logic in Software Engineering. CS402, Spring 2016 Shin Yoo
Applications of Logic in Software Engineering CS402, Spring 2016 Shin Yoo Acknowledgements I borrow slides from: Moonzoo Kim Theo C. Ruys (http://spinroot.com/spin/doc/ SpinTutorial.pdf) CBMC & Daniel
More informationEECS 219C: Computer-Aided Verification Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley
EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving Sanjit A. Seshia EECS, UC Berkeley Project Proposals Due Friday, February 13 on bcourses Will discuss project topics on Monday Instructions
More informationAn Introduction to Satisfiability Modulo Theories
An Introduction to Satisfiability Modulo Theories Philipp Rümmer Uppsala University Philipp.Ruemmer@it.uu.se February 13, 2019 1/28 Outline From theory... From DPLL to DPLL(T) Slides courtesy of Alberto
More informationExample: Map coloring
Today s s lecture Local Search Lecture 7: Search - 6 Heuristic Repair CSP and 3-SAT Solving CSPs using Systematic Search. Victor Lesser CMPSCI 683 Fall 2004 The relationship between problem structure and
More informationHECTOR: Formal System-Level to RTL Equivalence Checking
ATG SoC HECTOR: Formal System-Level to RTL Equivalence Checking Alfred Koelbl, Sergey Berezin, Reily Jacoby, Jerry Burch, William Nicholls, Carl Pixley Advanced Technology Group Synopsys, Inc. June 2008
More informationSolving Resource-Constrained Scheduling Problems with Exact Methods
Solving Resource-Constrained Scheduling Problems with Exact Methods Jordi Coll Caballero Advisor: Enric Rodríguez Carbonell Department of Computer Science Co-Advisor: Josep Suy Franch Departament d Informàtica,
More informationConstraint Satisfaction Problems
Constraint Satisfaction Problems Tuomas Sandholm Carnegie Mellon University Computer Science Department [Read Chapter 6 of Russell & Norvig] Constraint satisfaction problems (CSPs) Standard search problem:
More informationSoftware Model Checking. Xiangyu Zhang
Software Model Checking Xiangyu Zhang Symbolic Software Model Checking CS510 S o f t w a r e E n g i n e e r i n g Symbolic analysis explicitly explores individual paths, encodes and resolves path conditions
More informationversat: A Verified Modern SAT Solver
Computer Science, The University of Iowa, USA Satisfiability Problem (SAT) Is there a model for the given propositional formula? Model: assignments to the variables that makes the formula true. SAT if
More informationQuteSat. A Robust Circuit-Based SAT Solver for Complex Circuit Structure. Chung-Yang (Ric) Huang National Taiwan University
QuteSat A Robust Circuit-Based SAT Solver for Complex Circuit Structure Chung-Yang (Ric) Huang National Taiwan University To appear: DATE 27 2/1/27 Fact Sheet (Background) Boolean Satisfiability (SAT)
More informationA Satisfiability Modulo Theories (SMT) Solver for the Theory of Equality and Uninterpreted Functions (EUF)
THE UNIVERSITY OF MANCHESTER A Satisfiability Modulo Theories (SMT) Solver for the Theory of Equality and Uninterpreted Functions (EUF) Anmol Khurana May, 2016 Supervised by Dr. Renate Schmidt A third
More informationSAT Solver and its Application to Combinatorial Problems
SAT Solver and its Application to Combinatorial Problems Naoyuki Tamura Kobe University 2014 December 14th, 2014 1 / 46 Contents 1 SAT Problems and SAT Solvers SAT Problems SAT Solvers Don Knuth s TAOCP
More informationSMT-Based Bounded Model Checking for Embedded ANSI-C Software. Lucas Cordeiro, Bernd Fischer, Joao Marques-Silva
SMT-Based Bounded Model Checking for Embedded ANSI-C Software Lucas Cordeiro, Bernd Fischer, Joao Marques-Silva b.fischer@ecs.soton.ac.uk Bounded Model Checking (BMC) Basic Idea: check negation of given
More informationA Decision Procedure for (Co)datatypes in SMT Solvers. Andrew Reynolds Jasmin Christian Blanchette IJCAI sister conference track, July 12, 2016
A Decision Procedure for (Co)datatypes in SMT Solvers Andrew Reynolds Jasmin Christian Blanchette IJCAI sister conference track, July 12, 2016 Satisfiability Modulo Theories (SMT) Solvers Software Verification
More informationSAT Based Efficient Directed Test Generation Techniques
SAT Based Efficient Directed Test Generation Techniques Presented by Mingsong Chen Software Engineering Institute East China Normal University May 5, 2011 Outline Introduction Model Checking Based Test
More informationPractical Course: SMT Solving
Practical Course: SMT Solving Introductory Meeting Erika Ábrahám, Florian Corzilius, Gereon Kremer Summer term 2015 Theory of Hybrid Systems - Practical Course: SMT Solving 1 / 12 Satisfiability Checking
More informationSatisfiability Modulo Theories: ABsolver
Satisfiability Modulo Theories: ABsolver Michael Tautschnig Joint work with: Andreas Bauer Martin Leucker Christian Schallhart Michael Tautschnig 1 Outline 1. Introduction Michael Tautschnig 2 Outline
More informationPROPOSITIONAL LOGIC (2)
PROPOSITIONAL LOGIC (2) based on Huth & Ruan Logic in Computer Science: Modelling and Reasoning about Systems Cambridge University Press, 2004 Russell & Norvig Artificial Intelligence: A Modern Approach
More informationIntroduction to CBMC: Part 1
Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Arie Gurfinkel, Sagar Chaki October 2, 2007 Many slides are courtesy of Daniel Kroening Bug Catching with SAT Solvers Main
More informationImplication Graph Compression inside the SMT Solver isat3
Implication Graph Compression inside the SMT Solver isat3 Karsten Scheibler Albert Ludwigs Universität Freiburg scheibler@informatik.uni-freiburg.de Bernd Becker Albert Ludwigs Universität Freiburg becker@informatik.uni-freiburg.de
More informationOn Search Strategies for Constraint-Based Bounded Model Checking. Michel RUEHER
raft On Search Strategies for Constraint-Based Bounded Model Checking Michel RUEHER Joined work with Hélène Collavizza, Nguyen Le Vinh, Olivier Ponsini and Pascal Van Hentenryck University Nice Sophia-Antipolis
More informationPluggable SAT-Solvers for SMT-Solvers
Pluggable SAT-Solvers for SMT-Solvers Bas Schaafsma DISI, University of Trento & Fondazione Bruno Kessler May 29, 2013 http://mathsat.fbk.eu/ 1 The SAT/SMT problem Applications of SAT/SMT-Solvers Motivation
More informationZchaff: A fast SAT solver. Zchaff: A fast SAT solver
* We d like to build a complete decision procedure for SAT which is efficient. Generalized D-P-L algorithm: while (true) { if (! decide( )) /* no unassigned variables */ return (sat) while (! bcp ( ))
More informationSAT/SMT summer school 2015 Introduction to SMT
SAT/SMT summer school 2015 Introduction to SMT Alberto Griggio Fondazione Bruno Kessler Trento, Italy Some material courtesy of Roberto Sebastiani and Leonardo de Moura Outline Introduction The DPLL(T)
More informationSolving Constraint Satisfaction Problems by a SAT Solver
SAT Encodings Systems Summary Solving Constraint Satisfaction Problems by a SAT Solver Kobe University, JAPAN Osaka Workshop for Verification and Validation Feb 28, 2011 at AIST Amagasaki SAT Encodings
More informationUNIVERSITA DEGLI STUDI DI TRENTO Facoltà di Scienze Matematiche, Fisiche e Naturali. Master Degree in Computer Science
UNIVERSITA DEGLI STUDI DI TRENTO Facoltà di Scienze Matematiche, Fisiche e Naturali Master Degree in Computer Science Final Thesis Linear Integer Optimization with SMT Relatore/1st Reader: Prof. Roberto
More informationCS-E3200 Discrete Models and Search
Shahab Tasharrofi Department of Information and Computer Science, Aalto University Lecture 7: Complete and local search methods for SAT Outline Algorithms for solving Boolean satisfiability problems Complete
More informationTighter Integration of BDDs and SMT for Predicate Abstraction
Tighter Integration of BDDs and SMT for Predicate Abstraction A. Cimatti, A. Franzen, A. Griggio, K. Kalyanasundaram, M. Roveri FBK-irst, Trento, Italy {cimatti,franzen,krishnamani,roveri}@fbk.eu University
More informationDPLL(T ):Fast Decision Procedures
DPLL(T ):Fast Decision Procedures Harald Ganzinger George Hagen Robert Nieuwenhuis Cesare Tinelli Albert Oliveras MPI, Saarburcken The University of Iowa UPC, Barcelona Computer Aided-Verification (CAV)
More informationHybrid Constraint Solvers
Hybrid Constraint Solvers - An overview Why Hybrid Solvers CP and SAT: Lazy Clause Generation CP and LP: Reification of Linear Constraints Conclusions 9 November 2011 Pedro Barahona - EPCL - Hybrid Solvers
More informationBITCOIN MINING IN A SAT FRAMEWORK
BITCOIN MINING IN A SAT FRAMEWORK Jonathan Heusser @jonathanheusser DISCLAIMER JUST TO BE CLEAR.. This is research! Not saying ASICs suck I am not a cryptographer, nor SAT solver guy WTF REALISED PHD RESEARCH
More informationC Code Verification based on the Extended Labeled Transition System Model
C Code Verification based on the Extended Labeled Transition System Model Dexi Wang, Chao Zhang, Guang Chen, Ming Gu, and Jiaguang Sun School of Software, TNLIST, Tsinghua University, China {dx-wang12,zhang-chao13,chenguan14}@mails.tsinghua.edu.cn
More informationThe Barcelogic SMT Solver
The Barcelogic SMT Solver Tool Paper Miquel Bofill 1, Robert Nieuwenhuis 2, Albert Oliveras 2, Enric Rodríguez-Carbonell 2, and Albert Rubio 2 1 Universitat de Girona 2 Technical University of Catalonia,
More informationCSE507. Practical Applications of SAT. Computer-Aided Reasoning for Software. Emina Torlak
Computer-Aided Reasoning for Software CSE507 Practical Applications of SAT courses.cs.washington.edu/courses/cse507/18sp/ Emina Torlak emina@cs.washington.edu Today Past 2 lectures The theory and mechanics
More informationMegoSAT. A concurrent SAT solver in Go. Today: Search for directions. Lukas Prokop
MegoSAT A concurrent SAT solver in Go Today: Search for directions Lukas Prokop Advisor: Florian Mendel Lukas Prokop 22 nd of June 2015 slide number 1 Outline Goals Go-based concurrency Parallelized SAT
More informationMemory Hierarchy Utilization of a SAT Solver
Belegarbeit Memory Hierarchy Utilization of a SAT Solver Norbert Manthey March 31, 2010 Technische Universität Dresden Fakultät Informatik Betreuende Hochschullehrer: Prof. Dr. rer. nat. Hermann Härtig,
More informationPractical SAT Solving
Practical SAT Solving Lecture 5 Carsten Sinz, Tomáš Balyo May 23, 2016 INSTITUTE FOR THEORETICAL COMPUTER SCIENCE KIT University of the State of Baden-Wuerttemberg and National Laboratory of the Helmholtz
More informationComplete Instantiation of Quantified Formulas in Satisfiability Modulo Theories. ACSys Seminar
Complete Instantiation of Quantified Formulas in Satisfiability Modulo Theories Yeting Ge Leonardo de Moura ACSys Seminar 2008.12 Motivation SMT solvers have been successful Quantified smt formulas are
More informationView-based Propagator Derivation
View-based Propagator Derivation Christian Schulte SCALE, KTH & SICS, Sweden joint work with: Guido Tack NICTA & Monash University, Australia Based on:. Christian Schulte, Guido Tack. Constraints 18(1),
More informationA Pearl on SAT Solving in Prolog (extended abstract)
A Pearl on SAT Solving in Prolog (extended abstract) Jacob M. Howe and Andy King 1 Introduction The Boolean satisfiability problem, SAT, is of continuing interest because a variety of problems are naturally
More informationSAT and Termination. Nao Hirokawa. Japan Advanced Institute of Science and Technology. SAT and Termination 1/41
SAT and Termination Nao Hirokawa Japan Advanced Institute of Science and Technology SAT and Termination 1/41 given 9 9-grid like Sudoku Puzzle 1 8 7 3 2 7 7 1 6 4 3 4 5 3 2 8 6 fill out numbers from 1
More informationNotes on Non-Chronologic Backtracking, Implication Graphs, and Learning
Notes on Non-Chronologic Backtracking, Implication Graphs, and Learning Alan J. Hu for CpSc 5 Univ. of British Columbia 00 February 9 These are supplementary notes on these aspects of a modern DPLL-style
More informationSmall Formulas for Large Programs: On-line Constraint Simplification In Scalable Static Analysis
Small Formulas for Large Programs: On-line Constraint Simplification In Scalable Static Analysis Isil Dillig, Thomas Dillig, Alex Aiken Stanford University Scalability and Formula Size Many program analysis
More informationStudy of efficient techniques for implementing a Pseudo-Boolean solver based on cutting planes
DEGREE PROJECT IN COMPUTER ENGINEERING, FIRST CYCLE, 15 CREDITS STOCKHOLM, SWEDEN 2017 Study of efficient techniques for implementing a Pseudo-Boolean solver based on cutting planes ALEIX SACREST GASCON
More informationBoolean Satisfiability: From Theoretical Hardness to Practical Success. Sharad Malik Princeton University
Boolean Satisfiability: From Theoretical Hardness to Practical Success Sharad Malik Princeton University SAT in a Nutshell Given a Boolean formula, find a variable assignment such that the formula evaluates
More informationNormal Forms for Boolean Expressions
Normal Forms for Boolean Expressions A NORMAL FORM defines a class expressions s.t. a. Satisfy certain structural properties b. Are usually universal: able to express every boolean function 1. Disjunctive
More informationEncoding The Lexicographic Ordering Constraint in Satisfiability Modulo Theories
Encoding The Lexicographic Ordering Constraint in Satisfiability Modulo Theories Hani Abdalla Muftah Elgabou MSc by Research University of York Computer Science February 2015 Dedication To my Mother, my
More information[Draft. Please do not distribute] Online Proof-Producing Decision Procedure for Mixed-Integer Linear Arithmetic
[Draft Please do not distribute] Online Proof-Producing Decision Procedure for Mixed-Integer Linear Arithmetic Sergey Berezin, Vijay Ganesh, and David L Dill Stanford University {berezin,vganesh,dill}@stanfordedu
More informationMinion: Fast, Scalable Constraint Solving. Ian Gent, Chris Jefferson, Ian Miguel
Minion: Fast, Scalable Constraint Solving Ian Gent, Chris Jefferson, Ian Miguel 1 60 Second Introduction to CSPs Standard Definition A CSP is a tuple V: list of variables D: a domain for each
More informationCODE ANALYSIS CARPENTRY
SEAN HEELAN THE (IN)COMPLETE GUIDE TO CODE ANALYSIS CARPENTRY ( Or how to avoid braining yourself when handed an SMT solving hammer Immunity Inc. Part I: Down the Rabbit Hole Propositional Logic Mechanical
More informationSAT Solvers in the Context of Cryptography
SAT Solvers in the Context of Cryptography v2.0 Presentation at Montpellier Mate Soos UPMC LIP6, PLANETE team INRIA, SALSA Team INRIA 10th of June 2010 Mate Soos (UPMC LIP6, PLANETE team SAT INRIA, solvers
More informationChapter 2 PRELIMINARIES
8 Chapter 2 PRELIMINARIES Throughout this thesis, we work with propositional or Boolean variables, that is, variables that take value in the set {true, false}. A propositional formula F representing a
More informationMajorSat: A SAT Solver to Majority Logic
MajorSat: A SAT Solver to Majority Logic Speaker : Ching-Yi Huang Authors: Yu-Min Chou, Yung-Chih Chen *, Chun-Yao Wang, Ching-Yi Huang National Tsing Hua University, Taiwan * Yuan Ze University, Taiwan
More informationAn SMT-Based Approach to Motion Planning for Multiple Robots with Complex Constraints
1 An SMT-Based Approach to Motion Planning for Multiple Robots with Complex Constraints Frank Imeson, Student Member, IEEE, Stephen L. Smith, Senior Member, IEEE Abstract In this paper we propose a new
More informationLeonardo de Moura and Nikolaj Bjorner Microsoft Research
Leonardo de Moura and Nikolaj Bjorner Microsoft Research A Satisfiability Checker with built-in support for useful theories Z3 is a solver developed at Microsoft Research. Development/Research driven by
More informationCS 510/13. Predicate Abstraction
CS 50/3 Predicate Abstraction Predicate Abstraction Extract a finite state model from an infinite state system Used to prove assertions or safety properties Successfully applied for verification of C programs
More informationSAT Solvers: A Condensed History. Sharad Malik Princeton University COS 598d 3/1/2010
SAT Solvers: A Condensed History Sharad Malik Princeton University COS 598d 3/1/2010 Where are we today? Intractability of the problem no longer daunting Can regularly handle practical instances with millions
More informationDecision Procedures. An Algorithmic Point of View. Decision Procedures for Propositional Logic. D. Kroening O. Strichman.
Decision Procedures An Algorithmic Point of View Decision Procedures for Propositional Logic D. Kroening O. Strichman ETH/Technion Version 1.0, 2007 Part I Decision Procedures for Propositional Logic Outline
More informationSatisfiability. Michail G. Lagoudakis. Department of Computer Science Duke University Durham, NC SATISFIABILITY
Satisfiability Michail G. Lagoudakis Department of Computer Science Duke University Durham, NC 27708 COMPSCI 271 - Spring 2001 DUKE UNIVERSITY Page 1 Why SAT? Historical Reasons The first NP-COMPLETE problem
More informationOpenSMT2. A Parallel, Interpolating SMT Solver. Antti Hyvärinen, Matteo Marescotti, Leonardo Alt, Sepideh Asadi, and Natasha Sharygina
OpenSMT2 A Parallel, Interpolating SMT Solver Antti Hyvärinen, Matteo Marescotti, Leonardo Alt, Sepideh Asadi, and Natasha Sharygina Why another SMT solver? Model checking OpenSMT Interpolation Parallel
More informationMore on Verification and Model Checking
More on Verification and Model Checking Wednesday Oct 07, 2015 Philipp Rümmer Uppsala University Philipp.Ruemmer@it.uu.se 1/60 Course fair! 2/60 Exam st October 21, 8:00 13:00 If you want to participate,
More informationCSE Theory of Computing Fall 2017 Project 1-SAT Solving
CSE 30151 Theory of Computing Fall 2017 Project 1-SAT Solving Version 3: Sept. 21, 2017 The purpose of this project is to gain an understanding of one of the most central problems of computing: Boolean
More informationSMC: Satisfiability Modulo Convex Optimization
SMC: Satisfiability Modulo Convex Optimization Yasser Shoukry Pierluigi Nuzzo Alberto L. Sangiovanni-Vincentelli Sanjit A. Seshia George J. Pappas Paulo Tabuada Department of Electrical Engineering and
More informationSoftware Engineering using Formal Methods
Software Engineering using Formal Methods Introduction to Promela Wolfgang Ahrendt 03 September 2015 SEFM: Promela /GU 150903 1 / 36 Towards Model Checking System Model Promela Program byte n = 0; active
More informationDipartimento di Elettronica Informazione e Bioingegneria. Cognitive Robotics. SATplan. Act1. Pre1. Fact. G. Gini Act2
Dipartimento di Elettronica Informazione e Bioingegneria Cognitive Robotics SATplan Pre1 Pre2 @ 2015 Act1 Act2 Fact why SAT (satisfability)? 2 Classical planning has been observed as a form of logical
More informationInference methods for a pseudo-boolean satisfiability solver
Inference methods for a pseudo-boolean satisfiability solver Heidi E. Dixon and Matthew L. Ginsberg CIRL 1269 University of Oregon Eugene, OR 97403-1269 {dixon, ginsberg}@cirl.uoregon.edu Abstract We describe
More informationEmbedded Software Verification Challenges and Solutions. Static Program Analysis
Embedded Software Verification Challenges and Solutions Static Program Analysis Chao Wang chaowang@nec-labs.com NEC Labs America Princeton, NJ ICCAD Tutorial November 11, 2008 www.nec-labs.com 1 Outline
More informationExploring A Two-Solver Architecture for Clause Learning CSP Solvers. Ozan Erdem
Exploring A Two-Solver Architecture for Clause Learning CSP Solvers by Ozan Erdem A thesis submitted in conformity with the requirements for the degree of Doctor of Philosophy Graduate Department of Computer
More information