Notes:Lambda calculus
From Maths
This is a NOTES page, so it isn't an actual page in the wiki yet!
Contents
Lambda terms
We define [ilmath]\lambda[/ilmath]-terms as follows:[1]
Let the following be given:
- Variables: an infinite sequence of expressions, [ilmath]v_1,\cdots,v_n\cdots[/ilmath] [Note 1]
- Atomic constants: a sequence of expressions again, that may also be finite or empty
The set of expressions called [ilmath]\lambda[/ilmath]-terms is defined inductively as follows:
- All variables and atomic constants are [ilmath]\lambda[/ilmath]-terms
- These are known as atoms
- If [ilmath]M[/ilmath] and [ilmath]N[/ilmath] are [ilmath]\lambda[/ilmath]-terms then [ilmath](MN)[/ilmath] is a [ilmath]\lambda[/ilmath]-term
- Known as applications
- this is a short hand for [ilmath]M(N)[/ilmath] in our modern terminology[1]
- If [ilmath]M[/ilmath] is any [ilmath]\lambda[/ilmath]-term and [ilmath]x[/ilmath] any variable then [ilmath](\lambda x.M)[/ilmath] is a [ilmath]\lambda[/ilmath]-term
- Any such expression is called an abstraction
Examples
- [ilmath](\lambda v_0.(v_0v_{00}))[/ilmath] - a function that [ilmath]x\mapsto x(v_{00})[/ilmath] I think
Notes
- ↑ The book uses [ilmath]v_0,v_{00},v_{000},\cdots[/ilmath] for some yet unknown reason