About Church-Rosser Theorem

About Church-Rosser Theorem
We consider a set T with a binary relation →.
The transitive reflexive closure →∗ of the relation → is defined by the rules
a→b
a →∗ b
a →∗ b b →∗ c
a →∗ c
a →∗ a
This is the least reflexive and transitive relation that contains →.
The equivalence relation ≡ generated by → is defined by the rules
a→b
a≡b
a≡a
a≡b b≡c
a≡c
a≡b
b≡a
This is the least reflexive, symmetric and transitive relation that contains →.
Clearly, we have a ≡ b if a →∗ b (exercise).
We say that the relation → has the Church-Rosser property iff whenever a →∗ b and a →∗ c
then there exists d such that both b →∗ d and c →∗ d.
Theorem 0.1 If → has the Church-Rosser property then a ≡ b iff there exists c such that
a →∗ c and b →∗ c.
Proof. Clearly if a →∗ c and b →∗ c then we have a ≡ c and b ≡ c and so, since ≡ is transitive
and symmetric, we get a ≡ b.
Conversely, we define the relation R a b as there exists c such that a →∗ c and b →∗ c. We
have to show that a ≡ b implies R a b. Since ≡ is the least reflexive, symmetric and transitive
relation that contains →, it is enough to show that the relation R is reflexive, symmetric,
transitive and contains →.
R is reflexive since we have a →∗ a.
R is clearly symmetric.
R is transitive: assume R a a1 and R a1 a2 . There exists b and c such that a →∗ b and
a1 →∗ b and a1 →∗ c and a2 →∗ c. Since a1 →∗ b and a1 →∗ c and → has the Church-Rosser
property, there exists d such that b →∗ d and c →∗ d. We have then, by transitivity of →∗ both
a →∗ d and a2 →∗ d and so R a a2 , as desired.
R contains → since if a → b we have a →∗ b and b →∗ b.
It can be shown that if T is the set of lambda-terms and → is the one-step β-reduction
relation, then → has the Church-Rosser property. In this case the relation ≡ is also known as
β-conversion =β . The motivation of Church and Rosser was the following application of the
previous Theorem.
Corollary 0.2 β-conversion is not trivial: two distinct variables x and y are not β-convertible.
Proof. Indeed, if we have x ≡ y then by the Theorem, we should have a term c such that x →∗ c
and y →∗ c. But x →∗ c implies c = x since x is a variable and similarly, y →∗ c implies c = y.
This is a contradiction if x and y are distinct variables.
1
As I said in the lecture, this is a strong result since β-conversion is a complex relation with
terms such as (λx.x x) (λx.x x).
This can be interpreted as the consistency of the equational theory of λ-calculus, and this
is a good example of a consistency proof of a non trivial theory.
A good reference is the Wikipedia entry on the Church-Rosser Theorem and the entry on
Abstract rewriting system, with the reference to the fundamental paper of Gérard Huet
Confluent Reductions: Abstract Properties and Applications to Term Rewriting Systems,
Journal of the ACM (JACM), October 1980, Volume 27, Issue 4, pp. 797 - 821.
2