sat modulo the theory of linear arithmetic exact inexact
play

SAT modulo the theory of linear arithmetic: Exact, inexact and - PowerPoint PPT Presentation

SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers Germain Faure, Robert Nieuwenhuis, Albert Oliveras and Enric Rodr guez-Carbonell 11th International Conference, SAT 2008 Guangzhou, China May 14th, 2008


  1. SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers Germain Faure, Robert Nieuwenhuis, Albert Oliveras and Enric Rodr´ ıguez-Carbonell 11th International Conference, SAT 2008 Guangzhou, China May 14th, 2008 ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 1

  2. Overview of the talk SAT Modulo Theories (SMT) DPLL( T ) = Boolean engine + T -Solver What is needed from T -Solver? Use of OR solvers for DPLL( LA ) Existing and non-existing functionalities Adapting OR solvers Experimental evaluation New prospects and conclusions ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 2

  3. Overview of the talk SAT Modulo Theories (SMT) DPLL( T ) = Boolean engine + T -Solver What is needed from T -Solver? Use of OR solvers for DPLL( LA ) Existing and non-existing functionalities Adapting OR solvers Experimental evaluation New prospects and conclusions ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 3

  4. SAT Modulo Theories (SMT) Some problems are more naturally expressed in other logics than propositional logic, e.g: Software verification needs reasoning about equality, arithmetic, data structures, ... SMT consists of deciding the satisfiability of a (ground) FO formula with respect to a background theory Example ( Equality with Uninterpreted Functions – EUF ): g ( a )= c ∧ ( f ( g ( a )) � = f ( c ) ∨ g ( a )= d ) c � = d ∧ Wide range of applications: Predicate abstraction Static analysis Model checking Scheduling Equivalence checking ... ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 4

  5. The Theory of Linear Arithmetic Plenty of applications: System verification Scheduling and planning ... ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 5

  6. The Theory of Linear Arithmetic Plenty of applications: System verification Scheduling and planning ... Several variants: R / Z / mixed linear arithmetic First-order quantifier free / quantified formulas Difference logic ( x − y ≤ 4 ) / UTVPI constraints ( x − y ≤ 2, x + y ≤ 7 ) / General linear constraints (e.g., 2 x + y − z ≤ 3 ) ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 5

  7. The Theory of Linear Arithmetic Plenty of applications: System verification Scheduling and planning ... Several variants: R / Z / mixed linear arithmetic First-order quantifier free / quantified formulas Difference logic ( x − y ≤ 4 ) / UTVPI constraints ( x − y ≤ 2, x + y ≤ 7 ) / General linear constraints (e.g., 2 x + y − z ≤ 3 ) THIS TALK: general quantifier-free formulas in R ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 5

  8. Solving SMT with DPLL( T ) Methodology: x ≤ 2 ∧ ( x + y ≥ 10 ∨ 2 x + 3 y ≥ 30 y ≤ 4 ) ∧ � �� � � �� � � �� � � �� � 1 2 3 4 SAT solver returns model [ 1, 2, 4 ] ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 6

  9. Solving SMT with DPLL( T ) Methodology: x ≤ 2 ∧ ( x + y ≥ 10 ∨ 2 x + 3 y ≥ 30 y ≤ 4 ) ∧ � �� � � �� � � �� � � �� � 1 2 3 4 SAT solver returns model [ 1, 2, 4 ] Theory solver says T -inconsistent ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 6

  10. Solving SMT with DPLL( T ) Methodology: x ≤ 2 ∧ ( x + y ≥ 10 ∨ 2 x + 3 y ≥ 30 y ≤ 4 ) ∧ � �� � � �� � � �� � � �� � 1 2 3 4 SAT solver returns model [ 1, 2, 4 ] Theory solver says T -inconsistent Send { 1, 2 ∨ 3, 4, 1 ∨ 2 ∨ 4 } to SAT solver ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 6

  11. Solving SMT with DPLL( T ) Methodology: x ≤ 2 ∧ ( x + y ≥ 10 ∨ 2 x + 3 y ≥ 30 y ≤ 4 ) ∧ � �� � � �� � � �� � � �� � 1 2 3 4 SAT solver returns model [ 1, 2, 4 ] Theory solver says T -inconsistent Send { 1, 2 ∨ 3, 4, 1 ∨ 2 ∨ 4 } to SAT solver SAT solver returns model [ 1, 2, 3, 4 ] ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 6

  12. Solving SMT with DPLL( T ) Methodology: x ≤ 2 ∧ ( x + y ≥ 10 ∨ 2 x + 3 y ≥ 30 y ≤ 4 ) ∧ � �� � � �� � � �� � � �� � 1 2 3 4 SAT solver returns model [ 1, 2, 4 ] Theory solver says T -inconsistent Send { 1, 2 ∨ 3, 4, 1 ∨ 2 ∨ 4 } to SAT solver SAT solver returns model [ 1, 2, 3, 4 ] Theory solver says T -inconsistent ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 6

  13. Solving SMT with DPLL( T ) Methodology: x ≤ 2 ∧ ( x + y ≥ 10 ∨ 2 x + 3 y ≥ 30 y ≤ 4 ) ∧ � �� � � �� � � �� � � �� � 1 2 3 4 SAT solver returns model [ 1, 2, 4 ] Theory solver says T -inconsistent Send { 1, 2 ∨ 3, 4, 1 ∨ 2 ∨ 4 } to SAT solver SAT solver returns model [ 1, 2, 3, 4 ] Theory solver says T -inconsistent SAT solver detects { 1, 2 ∨ 3, 4, 1 ∨ 2 ∨ 4, 1 ∨ 2 ∨ 3 ∨ 4 } UNSAT ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 6

  14. Solving SMT with DPLL( T ) Methodology: x ≤ 2 ∧ ( x + y ≥ 10 ∨ 2 x + 3 y ≥ 30 y ≤ 4 ) ∧ � �� � � �� � � �� � � �� � 1 2 3 4 SAT solver returns model [ 1, 2, 4 ] Theory solver says T -inconsistent Send { 1, 2 ∨ 3, 4, 1 ∨ 2 ∨ 4 } to SAT solver SAT solver returns model [ 1, 2, 3, 4 ] Theory solver says T -inconsistent SAT solver detects { 1, 2 ∨ 3, 4, 1 ∨ 2 ∨ 4, 1 ∨ 2 ∨ 3 ∨ 4 } UNSAT Two components: Boolean engine DPLL( X ) + T -Solver ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 6

  15. Solving SMT with DPLL( T ) (2) Several optimizations for enhancing efficiency: Check T -consistency only of full prop. models (at a leaf) ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 7

  16. Solving SMT with DPLL( T ) (2) Several optimizations for enhancing efficiency: Check T -consistency only of full prop. models (at a leaf) Check T -consistency of partial assignment while being built ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 7

  17. Solving SMT with DPLL( T ) (2) Several optimizations for enhancing efficiency: Check T -consistency only of full prop. models (at a leaf) Check T -consistency of partial assignment while being built Given a T -inconsistent assignment M , add ¬ M as a clause ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 7

  18. Solving SMT with DPLL( T ) (2) Several optimizations for enhancing efficiency: Check T -consistency only of full prop. models (at a leaf) Check T -consistency of partial assignment while being built Given a T -inconsistent assignment M , add ¬ M as a clause Given a T -inconsistent assignment M , identify a T -inconsistent subset M 0 ⊆ M and add ¬ M 0 as a clause ‘ Departament de Llenguatges i Sistemes Informatics ‘ UNIVERSITAT POLITECNICA DE CATALUNYA UPC SAT modulo the theory of linear arithmetic: Exact, inexact and commercial solvers – p. 7

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend