introduction dpll t as a transition system completeness
play

Introduction DPLL(+ T ) as a transition system Completeness: - PowerPoint PPT Presentation

Outline Introduction DPLL( + T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( + T ) with speculative inferences The theorem-proving method DPLL(+ T ) 1 Maria Paola Bonacina


  1. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences The theorem-proving method DPLL(Γ+ T ) 1 Maria Paola Bonacina Dipartimento di Informatica Universit` a degli Studi di Verona Verona, Italy, EU Formal Topics Series Computer Science Laboratory, SRI International, Menlo Park, California, USA February and March 2016 (It subsumes a talk given at the Annual Meeting of the IFIP Working Group 1.6 on Term Rewriting held at the Federated Logic Conference (FLoC), Edinburgh, Scotland, UK, 10 July 2010) 1 Joint work with Leo de Moura and Chris Lynch Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  2. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences Introduction DPLL(Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL(Γ+ T ) with speculative inferences Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  3. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences Introduction DPLL(Γ+ T ) is a theorem-proving method that ◮ Integrates SMT-solver DPLL( T ) and first-order inference system Γ ◮ Combines built-in and axiomatized theories ◮ Makes first-order inferences model-driven by the candidate model built by the SMT-solver ◮ Yields some decision procedures for satisfiability of first-order formulæ Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  4. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences Motivation ◮ Formulæ from applications (e.g., verification) involve ◮ Background theories (e.g., linear arithmetic, data structures) ◮ Quantifiers to write, e.g., ◮ Invariants ◮ Axioms of application-specific theories without decision procedure ◮ Objective: have both theory reasoning and reasoning about quantifiers ◮ Not even semi-decidable in general Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  5. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences Preliminary assumptions ◮ Background theory T ◮ T = � n i =1 T i ◮ Set of formulæ: R ∪ P ◮ R : set of non-ground clauses without T -symbols ◮ P : set of ground clauses typically with both T -symbols and R -symbols ◮ Determine whether R ∪ P is satisfiable modulo T Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  6. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences Some key state-of-the-art reasoning methods ◮ DPLL-CDCL procedure for SAT ◮ T i -solvers: Satisfiability procedures for the T i ’s ◮ Satisfiability procedure for T via combination by equality sharing (aka Nelson-Oppen) of the T i -satisfiability procedures ◮ DPLL( T )-based SMT-solver ◮ First-order engine Γ to handle R (additional theory): Resolution+Rewriting+Superposition: Superposition-based Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  7. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences Theory combination by equality sharing ◮ Theories T 1 , . . . , T n with T i -satisfiability procedures ◮ T = � n i =1 T i ◮ Disjoint: share only ≃ and uninterpreted constants ◮ Mixed terms separated by introducing new constants (e.g., f ( g ( a )) ≃ b becomes f ( c ) ≃ b ∧ g ( a ) ≃ c , with c new, if f and g belong to different theories) ◮ Need to agree on: ◮ Shared constants ◮ Cardinalities of shared sorts Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  8. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences Theory combination by equality sharing ◮ Compute arrangement: which shared constants are equal and which are not ◮ T i -solvers generate and propagate all entailed (disjunctions of) equalities between shared constants ◮ For cardinalities: assume stably infinite: every T i -satisfiable ground formula has T i -model with infinite cardinality Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  9. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences Superposition-based inference system Γ ◮ FOL+= clauses with universally quantified variables ◮ Axiomatized theories ◮ Deduce clauses from clauses (expansion) ◮ Remove redundant clauses (contraction) ◮ Well-founded ordering ≻ on terms and literals to restrict expansion and define contraction ◮ Semi-decision procedure for unsatisfiability ◮ No backtracking Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  10. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences Ordering-based inferences Ordering ≻ on terms and literals to ◮ restrict expansion inferences ◮ define contraction inferences Complete Simplification Ordering: ◮ stable: if s ≻ t then s σ ≻ t σ ◮ monotone: if s ≻ t then l [ s ] ≻ l [ t ] ◮ subterm property: l [ t ] � t ◮ total on ground terms and literals Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  11. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences Inference system Γ State of derivation: set of clauses S ◮ Expansion rules: ◮ Resolution: resolve maximal complementary literals ◮ Superposition: superpose maximal side of maximal equation into maximal side of maximal (in)equation ◮ Paramodulation: superpose maximal side of maximal equation into maximal literal ◮ Factoring rules ◮ Contraction rules: ◮ Simplification by well-founded rewriting ◮ Subsumption of less general clauses ( C σ ⊆ D as multisets) ◮ Deletion of trivial clauses Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  12. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences Combining strengths of different reasoning engines ◮ DPLL: SAT-problems; large clauses (also non-Horn) ◮ Theory solvers: e.g., ground equality, linear arithmetic ◮ DPLL( T )-based SMT-solver: efficient integration of the above ◮ Superposition-based inference system Γ: ◮ Horn clauses, equalities, universal quantifiers (automated instantiation) ◮ Satisfiability procedure for several theories of data structures Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  13. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences DPLL(Γ+ T ): integrate Γ in DPLL( T ) State of derivation M | | F ◮ Model-based deduction: literals in M as premises of Γ-inferences ◮ Stored as hypotheses in inferred clause ◮ Hypothetical clause: ( L 1 ∧ . . . ∧ L n ) ⊲ ( L ′ 1 ∨ . . . L ′ m ) interpreted as ¬ L 1 ∨ . . . ∨ ¬ L n ∨ L ′ 1 ∨ . . . ∨ L ′ m Predecessor: DPLL(Γ) [Leonardo de Moura and Nikolaj Bjørner, IJCAR 2008] Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  14. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences DPLL(Γ+ T ): integrate Γ in DPLL( T ) ◮ Inferred clauses inherit hypotheses from premises ◮ Backjump: remove hypothetical clauses depending on undone assignments Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  15. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences DPLL(Γ+ T ): division of labor Use each engine for what is best at: ◮ DPLL( T ) sees all and only ground clauses ◮ Γ sees all non-ground clauses and ground unit R -clauses taken from M : Γ works on R -satisfiability problem ◮ Both see the ground unit R -clauses Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

  16. Outline Introduction DPLL( Γ+ T ) as a transition system Completeness: variable-inactivity, iterative deepening Decision procedures by DPLL( Γ + T ) with speculative inferences DPLL(Γ+ T ): two modes ◮ Search mode: State of derivation M | | F ◮ M sequence of ground literals: partial model ◮ F set of hypothetical clauses clauses ( F ) is the set of clauses in F stripped of the hypotheses ◮ Conflict resolution mode: State of derivation M | | F | | C ◮ C ground conflict clause Initial state: M empty, F is {∅ ⊲ C | C ∈ R ∪ P } Maria Paola Bonacina The theorem-proving method DPLL( Γ+ T )

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