Normalization by evaluation for
- Thorsten Altenkirch
Tarmo Uustalu University of Nottingham Tallinn Technical University
Normalization by evaluationfor
✁ ✂ ✄– p.1/21
Normalization by evaluation for Thorsten Altenkirch Tarmo Uustalu - - PowerPoint PPT Presentation
Normalization by evaluation for Thorsten Altenkirch Tarmo Uustalu University of Nottingham Tallinn Technical University Normalization by evaluationfor p.1/21 Motivation Normalization by evaluationfor
Tarmo Uustalu University of Nottingham Tallinn Technical University
Normalization by evaluationfor
✁ ✂ ✄– p.1/21
Normalization by evaluationfor
✁ ✂ ✄– p.2/21
Normalization by evaluationfor
✁ ✂ ✄– p.2/21
Normalization by evaluationfor
✁ ✂ ✄– p.2/21
Normalization by evaluationfor
✁ ✂ ✄– p.2/21
Normalization by evaluationfor
✁ ✂ ✄– p.3/21
Normalization by evaluationfor
✁ ✂ ✄– p.3/21
Normalization by evaluationfor
✁ ✂ ✄– p.3/21
Normalization by evaluationfor
✁ ✂ ✄– p.3/21
Normalization by evaluationfor
✁ ✂ ✄– p.3/21
Normalization by evaluationfor
✁ ✂ ✄– p.3/21
Normalization by evaluationfor
✁ ✂ ✄– p.4/21
Normalization by evaluationfor
✁ ✂ ✄– p.4/21
Normalization by evaluationfor
✁ ✂ ✄– p.4/21
Normalization by evaluationfor
✁ ✂ ✄– p.4/21
Normalization by evaluationfor
✁ ✂ ✄– p.4/21
Normalization by evaluationfor
✁ ✂ ✄– p.4/21
Normalization by evaluationfor
✁ ✂ ✄– p.4/21
Normalization by evaluationfor
✁ ✂ ✄– p.5/21
Normalization by evaluationfor
✁ ✂ ✄– p.5/21
Normalization by evaluationfor
✁ ✂ ✄– p.5/21
Normalization by evaluationfor
✁ ✂ ✄– p.5/21
Normalization by evaluationfor
✁ ✂ ✄– p.6/21
Normalization by evaluationfor
✁ ✂ ✄– p.6/21
Normalization by evaluationfor
✁ ✂ ✄– p.6/21
Normalization by evaluationfor
✁ ✂ ✄– p.7/21
Symmetrically, we can show that
, and hence
✑ ✒ ✄ ✓✕✔ ✝ ✟ ✖Normalization by evaluationfor
✁ ✂ ✄– p.7/21
Normalization by evaluationfor
✁ ✂ ✄– p.8/21
Normalization by evaluationfor
✁ ✂ ✄– p.8/21
Normalization by evaluationfor
✁ ✂ ✄– p.8/21
– p.8/21
Normalization by evaluationfor
✁ ✂ ✄– p.8/21
Normalization by evaluationfor
✁ ✂ ✄– p.8/21
Main> once Lam (Bool :-> Bool) "f" (Lam Bool "x" (App (Var "f") (Var "x"))) Main> :t nf nf :: Ty -> Tm -> Tm Main> :t nf’ nf’ :: Tm -> Maybe (Ty,Tm) Main> nf’ once Just ((Bool :-> Bool) :-> (Bool :-> Bool),Lam (Bool :-> Bool) "x" (If (App (Var "x") TTrue) (If (App (Var "x") TFalse) (Lam Bool "x" TTrue) (Lam Bool "x" (Var "x"))) (If (App (Var "x") TFalse) (Lam Bool "x" (If (Var "x") TFalse TTrue)) (Lam Bool "x" TFalse)))) Main> nf’ thrice Just ((Bool :-> Bool) :-> (Bool :-> Bool),Lam (Bool :-> Bool) "x" (If (App (Var "x") TTrue) (If (App (Var "x") TFalse) (Lam Bool "x" TTrue) (Lam Bool "x" (Var "x"))) (If (App (Var "x") TFalse) (Lam Bool "x" (If (Var "x") TFalse TTrue)) (Lam Bool "x" TFalse))))
Normalization by evaluationfor
✁ ✂ ✄– p.9/21
Normalization by evaluationfor
✁ ✂ ✄– p.10/21
Normalization by evaluationfor
✁ ✂ ✄– p.10/21
Normalization by evaluationfor
✁ ✂ ✄– p.10/21
Normalization by evaluationfor
✁ ✂ ✄– p.10/21
Normalization by evaluationfor
✁ ✂ ✄– p.11/21
Normalization by evaluationfor
✁ ✂ ✄– p.11/21
Normalization by evaluationfor
✁ ✂ ✄– p.11/21
Normalization by evaluationfor
✁ ✂ ✄– p.12/21
Normalization by evaluationfor
✁ ✂ ✄– p.13/21
Normalization by evaluationfor
✁ ✂ ✄– p.14/21
– p.14/21
Normalization by evaluationfor
✁ ✂ ✄– p.14/21
Normalization by evaluationfor
✁ ✂ ✄– p.15/21
Normalization by evaluationfor
✁ ✂ ✄– p.16/21
Normalization by evaluationfor
✁ ✂ ✄– p.17/21
Normalization by evaluationfor
✁ ✂ ✄– p.17/21
Normalization by evaluationfor
✁ ✂ ✄– p.17/21
Normalization by evaluationfor
✁ ✂ ✄– p.17/21
Normalization by evaluationfor
✁ ✂ ✄– p.17/21
– p.18/21
Normalization by evaluationfor
✁ ✂ ✄– p.19/21
Normalization by evaluationfor
✁ ✂ ✄– p.19/21
Normalization by evaluationfor
✁ ✂ ✄– p.19/21
Normalization by evaluationfor
✁ ✂ ✄– p.19/21
Normalization by evaluationfor
✁ ✂ ✄– p.19/21
Normalization by evaluationfor
– p.20/21
Normalization by evaluationfor
– p.20/21
Normalization by evaluationfor
– p.20/21
Normalization by evaluationfor
– p.20/21
Normalization by evaluationfor
– p.20/21
Normalization by evaluationfor
– p.21/21