Church-Rosser Theorem
If reduces to both and , then there exists a for which both terms reduce to (but not necessarily in one step).
Every binary relationship has the diamond property if this holds:
reduction doesn’t have the diamond property.
Graphically, this is the diamond property, because the relationship above the diamond and below is not the same (one step beta reduction vs many step beta reduction).
#todo continue
Combinatory Logic
#todo: describe combinatory logic
An abstraction algorithm is an ordered sequence of rules that allow us to convert a term from lambda calculus to combinatory logic. We start from the beginning and we see which is the first rule that we can apply, apply it, and then start again from the beginning. In general this ordered sequence of rule is called Markov Algorithm. The algorithm stops when no further rule can be applied.
We start from the inside most term, to the outside.
Example
Let’s convert the term .
The abstraction algorithm in this case is defined as:
and the conversion as:
If there are multiple variables in the lambda term (for example , we first abstract form , then we abstract the result from and then the result from .
The following is another example in order to convert the term
Once converted, we can verify that we are correct by giving 3 inputs to the combinatory term that we obtained, and see if the combination matches the one from the lambda term.
tags:#lambda-calculus