From: jim Date: Mon, 23 Feb 2015 19:22:23 +0000 (-0500) Subject: add note about generalization X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=commitdiff_plain;h=fd6b36c3552b1b3c7d0d2eb497b3c925cab9418f;ds=sidebyside add note about generalization --- diff --git a/exercises/assignment3_answers.mdwn b/exercises/assignment3_answers.mdwn index 6aa5d750..ea0256da 100644 --- a/exercises/assignment3_answers.mdwn +++ b/exercises/assignment3_answers.mdwn @@ -267,6 +267,12 @@ S (S (KS) (S (KK) (S (KS) K))) (KI); this is the B combinator, whi 25. For each of the above translations, how many `I`s are there? Give a rule for describing what each `I` corresponds to in the original lambda term. + This generalization depends on you omitting the translation rule: + + 6. @a(Xa) = X if a is not in X + + > With that shortcut rule omitted, then there turn out to be one `I` in the result corresponding to each occurrence of a bound variable in the original term. + Evaluation strategies in Combinatory Logic ------------------------------------------