on interpolation in local theory extensions
play

On Interpolation in Local Theory Extensions Viorica - PowerPoint PPT Presentation

On Interpolation in Local Theory Extensions Viorica Sofronie-Stokkermans Max-Planck-Institut f ur Informatik Saarbr ucken IJCAR 2006, August 17-20, 2006, Seattle 1 Motivation VERIFICATION DATA BASES MATHEMATICS Tasks Tasks Tasks


  1. On Interpolation in Local Theory Extensions Viorica Sofronie-Stokkermans Max-Planck-Institut f¨ ur Informatik Saarbr¨ ucken IJCAR 2006, August 17-20, 2006, Seattle 1

  2. Motivation VERIFICATION DATA BASES MATHEMATICS Tasks Tasks Tasks − test consistency programs − construct proofs − answer queries − correctness − check proofs − termination − limit search reactive/hybrid Theories systems Theories − safety / lifeness − First−order logic − numbers − Datalog Theories − polynomials − ... − numbers − Kripke structures − functions over − data types − Lattice−ordered numeric domains − functions over structures numeric domains − algebras (BAO, DLO, SM) Method: test entailment / satisfiability w.r.t. background theory 2

  3. Motivation VERIFICATION DATA BASES MATHEMATICS Tasks Tasks Tasks − test consistency programs − construct proofs − answer queries − correctness − check proofs − termination − limit search reactive/hybrid Theories systems Theories − safety / lifeness − First−order logic − numbers − Datalog Theories − polynomials − ... − numbers Also very important: - detect local causes − Kripke structures − functions over − data types − Lattice−ordered of inconsistency numeric domains − functions over structures numeric domains − algebras (BAO, DLO, SM) 3

  4. Motivation: Modular reasoning T 0 : Σ 0 -theory. T 1 T 0 T 2 T i : Σ i -theory; T 0 ⊆ T i Σ i extension of Σ 0 . Can use provers for T 1 , T 2 as black-boxes to prove theorems in T 1 ∪ T 2 ? G 1 ∧ G 2 | = T 1 ∪T 2 ⊥ Which information needs to be exchanged between the provers? G 1 | = T 1 I I ∧ G 2 | = T 2 ⊥ Example Reason about lists of integers and monotone functions over integers 4

  5. Motivation: Distributed databases Chem Primitive concepts (C 0 ): process, reaction, subst, organic, anorganic Constraints (Γ 0 ): organic ⊓ anorganic = ∅ organic ⊑ subst, anorganic ⊑ subst AnorgChem BioChem C 1 : cat-oxydation, oxydation R 1 : catalyses C 2 : enzyme R 2 : produces, catalyses E E T 1 : cat-oxydation = subst ⊓ catalyzes.oxydation T 2 : reaction = process ⊓ produces.subst E Γ 1 : reaction ⊑ oxydation enzyme = organic ⊓ catalyzes.reaction ∅ � = cat-oxydation ⊑ anorganic Γ 2 : enzyme � = ∅ Chem + AnorgChem + BioChem inconsistent Find mistake: local explanation for inconsistency (in the common language) 5

  6. Motivation: Abstraction-based Verification Concrete program Abstract program feasible path feasible path location unreachable location unreachable check feasibility location reachable ⇓ conjunction of constraints: φ (1) ∧ Tr (1, 2) ∧ · · · ∧ Tr ( n − 1, n ) ∧ ¬ safe( n ) - satisfiable: feasible path - unsatisfiable: refine abstract program s.t. the path is not feasible [McMillan 2003-2006] use ‘local causes of inconsistency’ �→ compute interpolants 6

  7. Interpolation T theory; A , B formulae such that A | = T B Does there exist a formula I , containing only symbols occurring in both A and B such that A | = T I and I | = T B ? If so, I is an interpolant for φ and ψ . Theorem [Craig 1957] First order logic has the interpolation property. (but even if A and B are ground clauses, I may contain quantifiers) 7

  8. Interpolation T theory; A , B formulae such that A ∧ B | = T ⊥ Does there exist a formula I , containing only symbols occurring in both A and B such that A | = T I and I ∧ B | = T ⊥ ? If so, I is an interpolant for φ and ψ . Theorem [Craig 1957] First order logic has the interpolation property. (but even if A and B are ground clauses, I may contain quantifiers) 8

  9. Ground Interpolation T theory; A , B sets of ground (unit) clauses in the language of T such that A ∧ B | = T ⊥ ��������� ��������� I ��������� ��������� ��������� ��������� ��������� ��������� ���������� ���������� ��������� ��������� �������������� �������������� ��������� ��������� ���������� ���������� �������������� �������������� ��������� ��������� ��������� ��������� A ��������� ��������� ���������� ���������� B �������������� �������������� ��������� ��������� ���������� ���������� ��������� ��������� �������������� �������������� ��������� ��������� ��������� ��������� ���������� ���������� �������������� �������������� ��������� ��������� ���������� ���������� ��������� ��������� �������������� �������������� ��������� ��������� ���������� ���������� �������������� �������������� ��������� ��������� ��������� ��������� ��������� ��������� ���������� ���������� �������������� �������������� ��������� ��������� ���������� ���������� ��������� ��������� �������������� �������������� ��������� ��������� ��������� ��������� ���������� ���������� �������������� �������������� ��������� ��������� ���������� ���������� ��������� ��������� �������������� �������������� ��������� ��������� ���������� ���������� �������������� �������������� ��������� ��������� ��������� ��������� ��������� ��������� ���������� ���������� ��������� ��������� ��������� ��������� ��������� ��������� ��������� ��������� Question: Can we construct a ground formula I , containing only constants (and function symbols) common to A and B such that A | = T I and I ∧ B | = T ⊥ ? If so, I is a ground interpolant of A and B ’local’ explanation for the inconsistency of A ∧ B 9

  10. Ground Interpolation Links with amalgamation, injection transfer property - in universal algebra [J´ onsson’65, Bacsich’75, Wr´ onski’85] Ground interpolants exist and can be found fast: - propositional logic [Pudlak’97, Krajicek’97] used to SAT-based model checking [McMillan’03] - linear arithmetic (+ free function symbols) [McMillan’03,’04,’05] - difference constraints (+ free function symbols) [Jhala, McMillan’06] - combinations of theories [Yorsh,Musuvathi’05] (stably infinite, disjoint signatures) 10

  11. Our contributions Method for computing interpolants in extensions of a base theory with a set of functions satisfying a set K of clauses • The method is general It can be used if: – T 0 has some properties of linear arithmetic – clauses K have a special form – hierarchical reasoning possible for T 0 ∪ K �→ local extensions (test satisfiability of ground clauses �→ test satisfiability in T 0 ) 11

  12. Our contributions Method for computing interpolants in extensions of a base theory with a set of functions satisfying a set K of clauses • The method is general • Interpolants are computed in a hierarchical way - reduction to constructing interpolants in the base theory 12

  13. Our contributions Method for computing interpolants in local extensions of a base theory with a set of functions satisfying a set K of clauses • The method is general • Interpolants are computed in a hierarchical way • We identify classes of theory extensions for which this is possible 13

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