Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Practical Automated Reasoning
   with the Polarized Inverse Method

                              Sean McLaughlin

       ...
Outline

   Proposed Contribution
   A proof-producing meta-theorem prover for Twelf.

    1. This is an important problem...
3 / 32
Twelf


        A proof assistant for deductive systems
            Programming languages
            Logics

        Exam...
Example




          5 / 32
Simply Typed λ-Calculus

   Language
    Terms e ::= λx. e | e1 e2
    Types τ ::= α | τ1 ⇒ τ2


   Typing rules
         ...
Theorem (Type Preservation)
If Γ   e : τ and e → e then Γ   e :τ




                                       7 / 32
Theorem (Type Preservation)
If Γ   e : τ and e → e then Γ   e :τ




                                       7 / 32
Twelf




        Support for variable binding
        Dependent types
        Many interesting applications
        Lack ...
Proposed Work


  Theory
  abc

  Implementation

        A proof-producing meta-theorem prover for Twelf.
        New the...
Outline
   Introduction
       Twelf
   The Polarized Inverse Method
      Example: Intutionistic Logic
      The Inverse ...
Outline
   Introduction
       Twelf
   The Polarized Inverse Method
      Example: Intutionistic Logic
      The Inverse ...
12 / 32
The Inverse Method




                     13 / 32
The Inverse Method


   Forward Search
       Why??
             Local quantification
             Saturation
             ...
The Inverse Method


   Forward Search
       Why??
             Local quantification
             Saturation
             ...
The Inverse Method


   Forward Search
         Why??
             Local quantification
             Saturation
           ...
The Inverse Method


   Forward Search
       Why??
             Local quantification
             Saturation
             ...
abc




      15 / 32
Focusing and Polarization




                            16 / 32
Focusing and Polarization

                             Polarized
                              atoms,
                   ...
Imogen




         18 / 32
abc




      19 / 32
Outline
   Introduction
       Twelf
   The Polarized Inverse Method
      Example: Intutionistic Logic
      The Inverse ...
Outline
   Introduction                                            Intuitionistic
                                        ...
Constraints




              22 / 32
abc




      23 / 32
Induction




            24 / 32
Inductive loop

                                         no
                   Proof Stack                 Q.E.D.


      ...
LF




     26 / 32
abc




      27 / 32
+
M2




     28 / 32
abc




      29 / 32
Outline
   Introduction
       Twelf
   The Polarized Inverse Method
      Example: Intutionistic Logic
      The Inverse ...
Related Work




               31 / 32
The End
Thanks for coming!




                     32 / 32
Upcoming SlideShare
Loading in …5
×

Main

340 views

Published on

Published in: Technology, Education
  • Hi there! Get Your Professional Job-Winning Resume Here - Check our website! http://bit.ly/resumpro
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Main

  1. 1. Practical Automated Reasoning with the Polarized Inverse Method Sean McLaughlin Thesis Proposal Carnegie Mellon University School of Computer Science Thesis Committee: Jeremy Avigad CMU Philosophy Robert Harper SCS Dale Miller ´ Ecole Polytechnique Frank Pfenning SCS Andr´ Platzer e SCS 1 / 32
  2. 2. Outline Proposed Contribution A proof-producing meta-theorem prover for Twelf. 1. This is an important problem! Twelf is the strongest proof assistant in its domain Many applications, in theory and practice Requires more work than it should 2. We can (hopefully) solve it! The inverse method Focusing Polarization 3. We can solve other interesting problems along the way! First-order logic Constraints LF 2 / 32
  3. 3. 3 / 32
  4. 4. Twelf A proof assistant for deductive systems Programming languages Logics Examples Type safety for Standard ML (Lee, Crary, Harper) Trusted computing/typed assembly language (Crary, Sarkar) Certified compilers (Murphy, Crary) Proof carrying code (Necula, et al.) Security Proof-carrying authentication (Appel, Felten) Proof-carrying file system (Garg, Pfenning) 4 / 32
  5. 5. Example 5 / 32
  6. 6. Simply Typed λ-Calculus Language Terms e ::= λx. e | e1 e2 Types τ ::= α | τ1 ⇒ τ2 Typing rules Γ, x : τ1 e : τ2 Γ e1 : τ2 ⇒ τ Γ e2 : τ2 Γ, x : τ x :τ Γ λx. e : τ1 ⇒ τ2 Γ e1 e2 : τ Evaluation rules e1 → λx. e3 [e2 /x]e3 → e x →x λx. e → λx. e e1 e2 → e 6 / 32
  7. 7. Theorem (Type Preservation) If Γ e : τ and e → e then Γ e :τ 7 / 32
  8. 8. Theorem (Type Preservation) If Γ e : τ and e → e then Γ e :τ 7 / 32
  9. 9. Twelf Support for variable binding Dependent types Many interesting applications Lack of automation (i.e. proof search) Proofs account for %80 to %95 of code in the SML type preservation theorem. (22 KLOC total) 8 / 32
  10. 10. Proposed Work Theory abc Implementation A proof-producing meta-theorem prover for Twelf. New theorem provers for First-order propositional logic Intuitionistic first-order logic Intuitionistic first-order logic with constraints LF 9 / 32
  11. 11. Outline Introduction Twelf The Polarized Inverse Method Example: Intutionistic Logic The Inverse Method Focusing and Polarization Imogen Applications Constraints Induction LF + M2 Conclusion Related Work 10 / 32
  12. 12. Outline Introduction Twelf The Polarized Inverse Method Example: Intutionistic Logic The Inverse Method Focusing and Polarization Imogen Applications Constraints Induction LF + M2 Conclusion Related Work 11 / 32
  13. 13. 12 / 32
  14. 14. The Inverse Method 13 / 32
  15. 15. The Inverse Method Forward Search Why?? Local quantification Saturation Redundancy elimination Example 14 / 32
  16. 16. The Inverse Method Forward Search Why?? Local quantification Saturation Redundancy elimination Example . . . . . . . . Γ −→ A Γ −→ B . . . 14 / 32
  17. 17. The Inverse Method Forward Search Why?? Local quantification Saturation Redundancy elimination Example abc 14 / 32
  18. 18. The Inverse Method Forward Search Why?? Local quantification Saturation Redundancy elimination Example Γ, A −→ B Γ −→ B 14 / 32
  19. 19. abc 15 / 32
  20. 20. Focusing and Polarization 16 / 32
  21. 21. Focusing and Polarization Polarized atoms, conjunction Focused proofs Inversion proofs All proofs 17 / 32
  22. 22. Imogen 18 / 32
  23. 23. abc 19 / 32
  24. 24. Outline Introduction Twelf The Polarized Inverse Method Example: Intutionistic Logic The Inverse Method Focusing and Polarization Imogen Applications Constraints Induction LF + M2 Conclusion Related Work 20 / 32
  25. 25. Outline Introduction Intuitionistic Propositional Logic Twelf The Polarized Inverse Method Intuitionistic Example: Intutionistic Logic First-Order Logic The Inverse Method Focusing and Polarization Imogen Intuitionistic Logic with Constraints Applications Intuitionistic Logic with Induction Constraints LF Induction LF + M2 + M2 (Twelf) Conclusion Related Work 21 / 32
  26. 26. Constraints 22 / 32
  27. 27. abc 23 / 32
  28. 28. Induction 24 / 32
  29. 29. Inductive loop no Proof Stack Q.E.D. yes yes Filling no no Splitting Unprovable yes Recursion 25 / 32
  30. 30. LF 26 / 32
  31. 31. abc 27 / 32
  32. 32. + M2 28 / 32
  33. 33. abc 29 / 32
  34. 34. Outline Introduction Twelf The Polarized Inverse Method Example: Intutionistic Logic The Inverse Method Focusing and Polarization Imogen Applications Constraints Induction LF + M2 Conclusion Related Work 30 / 32
  35. 35. Related Work 31 / 32
  36. 36. The End Thanks for coming! 32 / 32

×