machine checked interpolation theorems for substructural
play

Machine-checked Interpolation Theorems for Substructural Logics - PowerPoint PPT Presentation

Machine-checked Interpolation Theorems for Substructural Logics using Display Calculi Jeremy E. Dawson James Brotherston Rajeev Gor e Research School of Computer Science, Australian National University University College London, UK IJCAR,


  1. Machine-checked Interpolation Theorems for Substructural Logics using Display Calculi Jeremy E. Dawson James Brotherston Rajeev Gor´ e Research School of Computer Science, Australian National University University College London, UK IJCAR, Coimbra, 28 June 2016 1/ 14

  2. Craig interpolation Definition A (propositional) logic satisfies Craig interpolation iff for any provable F ⊢ G there exists an interpolant I s.t.: F ⊢ I provable and I ⊢ G provable and V ( I ) ⊆ V ( F ) ∩ V ( G ) ( V ( X ) is the set of propositional variables occurring in X ) 2/ 14

  3. Craig interpolation Definition A (propositional) logic satisfies Craig interpolation iff for any provable F ⊢ G there exists an interpolant I s.t.: F ⊢ I provable and I ⊢ G provable and V ( I ) ⊆ V ( F ) ∩ V ( G ) ( V ( X ) is the set of propositional variables occurring in X ) Applications in: ◮ logic: consistency; compactness; definability 2/ 14

  4. Craig interpolation Definition A (propositional) logic satisfies Craig interpolation iff for any provable F ⊢ G there exists an interpolant I s.t.: F ⊢ I provable and I ⊢ G provable and V ( I ) ⊆ V ( F ) ∩ V ( G ) ( V ( X ) is the set of propositional variables occurring in X ) Applications in: ◮ logic: consistency; compactness; definability ◮ computer science: invariant generation; type inference; model checking; ontology decomposition 2/ 14

  5. Interpolation via sequent calculi Sequent Calculus: Γ ⊢ A , ∆ Γ ⊢ B , ∆ Γ , A , B ⊢ ∆ ( ⊢ ∧ ) ( ∧ ⊢ ) Γ , A ∧ B ⊢ ∆ Γ ⊢ A ∧ B , ∆ Cut Rule: usually eliminable Γ ⊢ A , ∆ Γ , A ⊢ ∆ Γ ⊢ ∆ Interpolation: constructive, by induction on cut-free proofs Γ ⊢ F A A , ∆ Γ ⊢ F B B , ∆ Γ , A , B ⊢ F A ∧ B ∆ ( ⊢ ∧ ) ( ∧ ⊢ ) Γ ⊢ F A ∧ F B A ∧ B , ∆ Γ , A ∧ B ⊢ F A ∧ B ∆ 3/ 14

  6. Display calculi: a modular sequent calculus framework Structures: extra structural connectives beyond Gentzen’s comma X :== A | ∅ | ♯ X | X ; X Display Postulates: extra rules to dis-/re- assemble structures e.g. X ; Y ⊢ Z X ⊢ ♯ Y ; Z Y ; X ⊢ Z ⇄ D ⇄ D Display Property: for any structure occurrence Z in X ⊢ Y , one has either X ⊢ Y ≡ D Z ⊢ W or X ⊢ Y ≡ D W ⊢ Z for some W Belnap: If rules meet 8 conditions then cut-elimination holds! Question: can we obtain modular interpolation from such calculi? 4/ 14

  7. Some proof rules Identity rules: X ′ ⊢ Y ′ X ⊢ Y ≡ D X ′ ⊢ Y ′ P ⊢ P X ⊢ Y Logical rules, e.g.: F ; G ⊢ X X ⊢ F Y ⊢ G F & G ⊢ X X ; Y ⊢ F & G 5/ 14

  8. Some proof rules Identity rules: X ′ ⊢ Y ′ X ⊢ Y ≡ D X ′ ⊢ Y ′ P ⊢ P X ⊢ Y Logical rules, e.g.: F ; G ⊢ X X ⊢ F Y ⊢ G F & G ⊢ X X ; Y ⊢ F & G Structural rules, e.g.: W ; ( X ; Y ) ⊢ Z ∅ ; X ⊢ Y X ⊢ Y ( W ; X ) ; Y ⊢ Z X ; X ⊢ Y X ⊢ Z X ; Y ⊢ Z X ⊢ Y 5/ 14

  9. Interpolation: our approach ◮ Proof-theoretic strategy: by induction on cut-free proofs; from interpolants for the premises of a rule, construct an interpolant for its conclusion. 6/ 14

  10. Interpolation: our approach ◮ Proof-theoretic strategy: by induction on cut-free proofs; from interpolants for the premises of a rule, construct an interpolant for its conclusion. ◮ But not enough info to do this for display steps, e.g.: X ; Y ⊢ Z X ⊢ ♯ Y ; Z 6/ 14

  11. Local AD-interpolation (LADI) property Let ≡ AD be the least equivalence closed under ≡ D and applications of associativity ( α ) (if present). 7/ 14

  12. Local AD-interpolation (LADI) property Let ≡ AD be the least equivalence closed under ≡ D and applications of associativity ( α ) (if present). Definition A proof rule with conclusion C has the LADI property if, given that for each premise of the rule C i we have interpolants for all i ≡ AD C i , we can construct interpolants for all C ′ ≡ AD C . C ′ 7/ 14

  13. Local AD-interpolation (LADI) property Let ≡ AD be the least equivalence closed under ≡ D and applications of associativity ( α ) (if present). Definition A proof rule with conclusion C has the LADI property if, given that for each premise of the rule C i we have interpolants for all i ≡ AD C i , we can construct interpolants for all C ′ ≡ AD C . C ′ Proposition If the proof rules of a display calculus D all have the LADI property then D enjoys Craig interpolation. Highly technical pen-and-paper proofs: so are they correct? 7/ 14

  14. Interactive Proof Assistants (Isabelle) Examples: Mizar, HOL4, Coq, LEGO, NuPrl, NqThm, Isabelle, λ -Prolog, HOL-Light, LF, ELF, Twelf · · · Meta-Logic: LCF or Kripke-Platek Set Theory or LF Type Theory or Calculus of Constructions or . . . Implementation: small core of trusted ML code Int Proof Develop Env User Object Logics HOL | IFOL | FOL | Sequents | . . . Proof Assistant Untrusted (ML) Code Meta-Logic (LCF) Trusted (ML) Code (ML) Compiler Machine Code Trust: rests on strong typing and small core of (ML) code which is open to public scrutiny by experts Proof Transcripts: can be cross-checked using other assistants 8/ 14

  15. Deeply embed formulae, structures, sequents and rules HOL Formula Type: datatype formula = Btimes formula formula | Bplus formula formula | Bneg formula | Btrue ("T") | Bfalse("F") | FV string (* formula variable *) | PP string (* prop variable *) HOL Structure Type: datatype structr = Comma structr structr | Star structr | I | Structform formula (* cast formula into structure *) | SV string (* structure variable *) HOL Sequent Type: seq = structr ⊢ structr HOL Rule Type: inf = ( seq list , seq ) (* ps / c *) Pretty Printing: term Sequent (SV ’’X’’) (Structform (FV ’’A’’)) is printed and entered as ($’’X’’ |- ’’A’’) . Inductively Define Set of Basic Rule Instances: rli :: inf set ( [ X ⊢ { A } , X ⊢ { B } ] , X ⊢ { A & B } ) ∈ rli Intuitions: horizontal line encoded by , and rules by set rli 9/ 14

  16. LADI: (& R ) X ⊢ F Y ⊢ G X ; Y ⊢ F & G Need interpolant for arbitrary W ⊢ Z ≡ AD X ; Y ⊢ F & G . 10/ 14

  17. LADI: (& R ) X ⊢ F Y ⊢ G X ; Y ⊢ F & G Need interpolant for arbitrary W ⊢ Z ≡ AD X ; Y ⊢ F & G . Case: F & G occurs in Z . 10/ 14

  18. LADI: (& R ) X ⊢ F Y ⊢ G X ; Y ⊢ F & G Need interpolant for arbitrary W ⊢ Z ≡ AD X ; Y ⊢ F & G . Case: F & G occurs in Z . Subcase: W built entirely from parts of X ( W ✁ X ). 10/ 14

  19. LADI: (& R ) X ⊢ F Y ⊢ G X ; Y ⊢ F & G Need interpolant for arbitrary W ⊢ Z ≡ AD X ; Y ⊢ F & G . Case: F & G occurs in Z . Subcase: W built entirely from parts of X ( W ✁ X ). By a LEMMA ∃ U . X ⊢ F ≡ AD W ⊢ U . 10/ 14

  20. LADI: (& R ) X ⊢ F Y ⊢ G X ; Y ⊢ F & G Need interpolant for arbitrary W ⊢ Z ≡ AD X ; Y ⊢ F & G . Case: F & G occurs in Z . Subcase: W built entirely from parts of X ( W ✁ X ). By a LEMMA ∃ U . X ⊢ F ≡ AD W ⊢ U . Claim: interpolant I for W ⊢ U is an interpolant for W ⊢ Z . 10/ 14

  21. LADI: (& R ) X ⊢ F Y ⊢ G X ; Y ⊢ F & G Need interpolant for arbitrary W ⊢ Z ≡ AD X ; Y ⊢ F & G . Case: F & G occurs in Z . Subcase: W built entirely from parts of X ( W ✁ X ). By a LEMMA ∃ U . X ⊢ F ≡ AD W ⊢ U . Claim: interpolant I for W ⊢ U is an interpolant for W ⊢ Z . Main issue: show I ⊢ Z provable given I ⊢ U provable. 10/ 14

  22. LADI: (& R ) By display property we have I ⊢ U ≡ D V ⊢ F . 11/ 14

  23. LADI: (& R ) By display property we have I ⊢ U ≡ D V ⊢ F . Next, we have: W ⊢ Z ≡ AD X ⊢ ♯ Y ; F & G 11/ 14

  24. LADI: (& R ) By display property we have I ⊢ U ≡ D V ⊢ F . Next, we have: W ⊢ Z ≡ AD X ⊢ ♯ Y ; F & G = X ⊢ F [( ♯ Y ; F & G ) / F ] 11/ 14

  25. LADI: (& R ) By display property we have I ⊢ U ≡ D V ⊢ F . Next, we have: W ⊢ Z ≡ AD X ⊢ ♯ Y ; F & G = X ⊢ F [( ♯ Y ; F & G ) / F ] ≡ AD W ⊢ U [( ♯ Y ; F & G ) / F ] by an easy LEMMA 11/ 14

  26. LADI: (& R ) By display property we have I ⊢ U ≡ D V ⊢ F . Next, we have: W ⊢ Z ≡ AD X ⊢ ♯ Y ; F & G = X ⊢ F [( ♯ Y ; F & G ) / F ] ≡ AD W ⊢ U [( ♯ Y ; F & G ) / F ] by an easy LEMMA Thus by a substitutivity LEMMA we obtain: I ⊢ Z ≡ AD I ⊢ U [( ♯ Y ; F & G ) / F ] 11/ 14

  27. LADI: (& R ) By display property we have I ⊢ U ≡ D V ⊢ F . Next, we have: W ⊢ Z ≡ AD X ⊢ ♯ Y ; F & G = X ⊢ F [( ♯ Y ; F & G ) / F ] ≡ AD W ⊢ U [( ♯ Y ; F & G ) / F ] by an easy LEMMA Thus by a substitutivity LEMMA we obtain: I ⊢ Z ≡ AD I ⊢ U [( ♯ Y ; F & G ) / F ] ≡ AD V ⊢ F [( ♯ Y ; F & G ) / F ] 11/ 14

  28. LADI: (& R ) By display property we have I ⊢ U ≡ D V ⊢ F . Next, we have: W ⊢ Z ≡ AD X ⊢ ♯ Y ; F & G = X ⊢ F [( ♯ Y ; F & G ) / F ] ≡ AD W ⊢ U [( ♯ Y ; F & G ) / F ] by an easy LEMMA Thus by a substitutivity LEMMA we obtain: I ⊢ Z ≡ AD I ⊢ U [( ♯ Y ; F & G ) / F ] ≡ AD V ⊢ F [( ♯ Y ; F & G ) / F ] ≡ AD V ; Y ⊢ F & G 11/ 14

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