At 12:44 +0100 1999/06/02, Peter Hancock wrote:
>    > One reason flip(.) might be given a symbol similar to multiplication and
>    > flip($) a symbol similar to exponentiation is that on the Church integer
>    > functionals, these two operations are just the multiplication and
>    > exponentiation of those integer functionals.
>
>It would seem to follow that \lambda abstraction is a kind of
>logarithm operator (with the bound variable as ``base''..)!

I don't know anything about that. The integers are (in quasi TeX notation)
     \bar n = lambda a b. a(...a(b)...)
where the a is repeated n times. It is fun to play with these in a
functional language. If inc is increment by 1, then then f(inc)(0) = n if f
= \bar n. For expressions M, N, Church defines
    M + N = lambda a b. M(a)(N(a)(b))
    M * N = lambda a. M(N(a))          -- Function composition.
    M ^ N = N(M)
I would prefer to reverse the M and N in the right hand expressions of M
and N, though, which I think makes expressions become more logical.

Then together with the identity I, +, * and ^ can be written out to be a
primitive set for the lambda theory. That is, all lambda expressions can be
generated from these symbols.

  Hans Aberg
                  * Email: Hans Aberg <mailto:[EMAIL PROTECTED]>
                  * Home Page: <http://www.matematik.su.se/~haberg/>
                  * AMS member listing: <http://www.ams.org/cml/>




Reply via email to