hereditary substitution for the calculus
play

Hereditary Substitution for the -Calculus Harley Eades and Aaron - PowerPoint PPT Presentation

Hereditary Substitution for the -Calculus Harley Eades and Aaron Stump Computer Science Saturday, June 22, 13 1 The Big Picture Goal: Prove weak normalization of the -calculus. Tool of choice: hereditary substitution. Novelty:


  1. Hereditary Substitution for the λ Δ -Calculus Harley Eades and Aaron Stump Computer Science Saturday, June 22, 13 1

  2. The Big Picture Goal: Prove weak normalization of the λ Δ -calculus. Tool of choice: hereditary substitution. Novelty: normalization by hereditary substitution has never been applied to any classical type theories. Saturday, June 22, 13 2

  3. Why Hereditary Substitution It provides a directly defined substitution which preserves normal forms. Saturday, June 22, 13 3

  4. Overview Hereditary substitution and STLC. The λ Δ -calculus. A naive extension of hereditary substitution to the λ Δ - calculus. The correct extension. Normalization of the λ Δ -calculus. Saturday, June 22, 13 4

  5. The Simply Typed λ -Calculus Syntax: Saturday, June 22, 13 5

  6. The Simply Typed λ -Calculus Typing: Reduction: Saturday, June 22, 13 6

  7. Hereditary Substitution [ t / x ] A t Syntax: Usual termination order: Like ordinary capture-avoiding substitution. Except, if the substitution introduces a redex, then that redex is recursively reduced. Example: Saturday, June 22, 13 7

  8. Hereditary Substitution Saturday, June 22, 13 8

  9. Hereditary Substitution Saturday, June 22, 13 9

  10. Properties of Hereditary Substitution Saturday, June 22, 13 10

  11. Properties of Hereditary Substitution Saturday, June 22, 13 11

  12. Properties of Hereditary Substitution Saturday, June 22, 13 12

  13. The λ Δ -Calculus Syntax Rehof:1994 Negation: Saturday, June 22, 13 13

  14. The λ Δ -Calculus Typing: Rehof:1994 Reduction: Saturday, June 22, 13 14

  15. Problems with a Naive Extension The naive extension is a simple extension to the hereditary substitution function for STLC: Saturday, June 22, 13 15

  16. Problems with a Naive Extension The naive extension is a simple extension to the hereditary substitution function for STLC: ctype tells us: A ≥ A 00 → A 0 < ¬ ( A 00 → A 0 ) Saturday, June 22, 13 16

  17. Problems with a Naive Extension The naive extension is a simple extension to the hereditary substitution function for STLC: ctype tells us: A ≥ A 00 → A 0 < ¬ ( A 00 → A 0 ) Saturday, June 22, 13 17

  18. How do we fix this? Consider the following example: Saturday, June 22, 13 18

  19. How do we fix this? Consider the following example: Saturday, June 22, 13 19

  20. How do we fix this? Consider the following example: Saturday, June 22, 13 20

  21. A Correct Extension of Hereditary Substitution Hereditary structural substitution: Is a multi-substitution defined by induction mutually with the hereditary substitution function. Syntax: , where New termination metric: Saturday, June 22, 13 21

  22. A Correct Extension of Hereditary Substitution New termination metric: (= , = , < ) ( <, − , − ) (= , <, − ) [ t / x ] A t (= , = , < ) ( <, − , − ) Saturday, June 22, 13 22

  23. A Correct Extension of Hereditary Substitution Variables: Saturday, June 22, 13 23

  24. A Correct Extension of Hereditary Substitution Abstractions: Saturday, June 22, 13 24

  25. A Correct Extension of Hereditary Substitution Applications: Saturday, June 22, 13 25

  26. A Correct Extension of Hereditary Substitution Applications: Saturday, June 22, 13 26

  27. A Correct Extension of Hereditary Substitution The hereditary substitution function: Saturday, June 22, 13 27

  28. A Correct Extension of Hereditary Substitution Saturday, June 22, 13 28

  29. A Correct Extension of Hereditary Substitution Saturday, June 22, 13 29

  30. A Correct Extension of Hereditary Substitution Saturday, June 22, 13 30

  31. Concluding Normalization Saturday, June 22, 13 31

  32. Concluding Normalization Saturday, June 22, 13 32

  33. Concluding Normalization Saturday, June 22, 13 33

  34. Related Work The key notion of using a lexicographic ordering on an ordering on types and the strict subexpression ordering on proofs dates all the way to Prawitz 1965. STLC: Lévy:1967, Girard:1989, and Amadio:1998. Hereditary substitution was first made explicit by Watkins: 2004 and Adams:2004. Saturday, June 22, 13 34

  35. Related Work Abel:2006 implemented a normalizer using sized heterogeneous types. Abel:2008 uses hereditary substitution as a normalization function at the kind level in the metatheory of higher order subtyping. Keller:2010 formalized the hereditary substitution for STLC in Agda. Saturday, June 22, 13 35

  36. Related Work David:2003 show strong normalization of the simply typed λ Δ -calculus using a lexicographic ordering. Saturday, June 22, 13 36

  37. Conclusion Hereditary substitution is a proof method which shows promise as an effective tool to prove normalization of typed λ -calculi. We showed how to adapt this proof method to a type theory with control. The key notion was to eliminate auxiliary redexes during reduction. Saturday, June 22, 13 37

  38. Thank you! Saturday, June 22, 13 38

Recommend


More recommend