Choose all auxiliary bound variables fresh for the free variables of ; alpha equivalence permits this. The operation is composition of lambda terms, so expand its definition and use beta reduction:The two lambda terms have the same reduct, up to alpha equivalence, hence they are related by beta equivalence:No eta conversion is needed for this associativity calculation.
Write for the I combinator, and choose outside the free variables of . Both orders of composition of lambda terms first give the same lambda abstraction by beta reduction:The freshness condition is exactly the side condition for eta conversion, which contracts to . ThereforeHere eta conversion matters: a free variable is already in beta-normal form, as is , and beta equivalence alone does not equate them.
The argument order in is a cyclic permutation. Undo it by rotating in the other direction. For , choose the lambda termUse fresh bound variables throughout. Substituting for the first argument of and then performing beta reduction givesIndeed, the arguments received by are , so its last argument moves back to the front. Apply eta conversion successively, starting with the innermost lambda abstraction. At each step the bound variable being removed is absent from the preceding expression. Thus the last expression is related to by beta-eta equivalence, and consequentlyFor the induction needed in the next part, also compute the reverse composition of lambda terms:So this is a two-sided inverse. The empty argument list at means ; choose . For , both displayed rotations give , which is also related to by eta conversion. These boundary cases require no exceptional inverse construction.
Use structural induction on the construction of , with the stronger induction claim that is an invertible lambda term: there is a lambda term satisfying bothThe base constructor has exactly the two-sided inverse proved in part (c). Strengthening the claim is useful because the inductive construction needs inverses of its constituent lambda terms in both orders.
For the inductive constructor, let be the two-sided inverse supplied for . Thus, for a fresh variable , beta-eta equivalence givesFor , defineThis lambda term reverses the cyclic permutation and applies the appropriate inverse to each argument. First use beta reduction to expand one order of composition of lambda terms:For the other order, beta reduction givesThese computations close the stronger induction. For , each formula has the single argument involving and ; for , the constructor is and its inverse is . Every construction is finite, so the inverse is a finite lambda term. There is no requirement that this inverse itself belong to .
Articles by others on the same topic
There are currently no matching articles.