Upcoming SlideShare
×

# Main

268 views
234 views

Published on

Published in: Technology, Education
0 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

• Be the first to like this

Views
Total views
268
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
2
0
Likes
0
Embeds 0
No embeds

No notes for slide

### 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) Certiﬁed compilers (Murphy, Crary) Proof carrying code (Necula, et al.) Security Proof-carrying authentication (Appel, Felten) Proof-carrying ﬁle 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 ﬁrst-order logic Intuitionistic ﬁrst-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 quantiﬁcation Saturation Redundancy elimination Example 14 / 32
16. 16. The Inverse Method Forward Search Why?? Local quantiﬁcation Saturation Redundancy elimination Example . . . . . . . . Γ −→ A Γ −→ B . . . 14 / 32
17. 17. The Inverse Method Forward Search Why?? Local quantiﬁcation Saturation Redundancy elimination Example abc 14 / 32
18. 18. The Inverse Method Forward Search Why?? Local quantiﬁcation 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