X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=blobdiff_plain;f=week1.mdwn;h=8484b17f975b74344e233ed94868b6e2a65c3b6e;hp=e8154e3cdcf1fbe6c21828c266662113bc7f9971;hb=6885a008cfcbb9fed72b19db62a6046665860c44;hpb=1f97960ab1bdd7a1328fe64714e8b36b38bd7a1e diff --git a/week1.mdwn b/week1.mdwn index e8154e3c..8484b17f 100644 --- a/week1.mdwn +++ b/week1.mdwn @@ -61,18 +61,22 @@ Some authors reserve the term "term" for just variables and abstracts. We won't Examples of expressions: - x - (y x) - (x x) - (\x y) - (\x x) - (\x (\y x)) - (x (\x x)) - ((\x (x x)) (\x (x x))) - -The lambda calculus has an associated proof theory. For now, we can regard the proof theory as having just one rule, called the rule of **beta-reduction** or "beta-contraction". Suppose you have some expression of the form: - - ((\a M) N) +
+x +(y x) +(x x) +(\x y) +(\x x) +(\x (\y x)) +(x (\x x)) +((\x (x x)) (\x (x x))) +
+ +The lambda calculus has an associated proof theory. For now, we can regard the +proof theory as having just one rule, called the rule of **beta-reduction** or +"beta-contraction". Suppose you have some expression of the form: + + ((lambda a M) N) that is, an application of an abstract to some other expression. This compound form is called a **redex**, meaning it's a "beta-reducible expression." `(\a M)` is called the **head** of the redex; `N` is called the **argument**, and `M` is called the **body**.