From: Jim Pryor Date: Wed, 15 Sep 2010 21:16:34 +0000 (-0400) Subject: week1 tweaks X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=commitdiff_plain;h=f146774aed497f4e8b776bacafa82d130ae24dc1 week1 tweaks Signed-off-by: Jim Pryor --- diff --git a/week1.mdwn b/week1.mdwn index e49724d9..5c880fbb 100644 --- a/week1.mdwn +++ b/week1.mdwn @@ -191,27 +191,27 @@ When M and N are such that there's some P that M reduces to by zero or more step M <~~> N -This is what plays the role of equality in the lambda calculus. Hankin uses the symbol `=` for this. So too do Hindley and Seldin. +This is what plays the role of equality in the lambda calculus. Hankin uses the symbol `=` for this. So too do Hindley and Seldin. Personally, I keep confusing that with the relation to be described next, so let's use this notation instead. Note that `M <~~> N` doesn't mean that each of `M` and `N` are reducible to each other; that only holds when `M` and `N` are the same expression. (Or, with our convention of only saying "reducible" for one or more reduction steps, it never holds.) -In the metatheory, it's also sometimes useful to talk about formulas that are syntactically equivalent *before any reductions take place*. Hankin uses the symbol ≡ for this. So too do Hindley and Seldin. We'll use that too, and will avoid using `=` when discussing metatheory for the lambda calculus. Instead we'll use `<~~>` as we said above. When we want to introduce a stipulative definition, we'll write it out longhand, as in: +In the metatheory, it's also sometimes useful to talk about formulas that are syntactically equivalent *before any reductions take place*. Hankin uses the symbol for this. So too do Hindley and Seldin. We'll use that too, and will avoid using `=` when discussing metatheory for the lambda calculus. Instead we'll use `<~~>` as we said above. When we want to introduce a stipulative definition, we'll write it out longhand, as in: > T is defined to be `(M N)`. We'll regard the following two expressions: - (\x x y) + (\x (x y)) - (\z z y) + (\z (z y)) as syntactically equivalent, since they only involve a typographic change of a bound variable. Read Hankin section 2.3 for discussion of different attitudes one can take about this. Note that neither of those expressions are identical to: - (\x x w) + (\x (x w)) because here it's a free variable that's been changed. Nor are they identical to: - (\y y y) + (\y (y y)) because here the second occurrence of `y` is no longer free.