Church–Rosser Theorem
   HOME

TheInfoList



OR:

In
lambda calculus Lambda calculus (also written as ''λ''-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution. It is a universal model of computation ...
, the Church–Rosser theorem states that, when applying reduction rules to
term Term may refer to: * Terminology, or term, a noun or compound word used in a specific context, in particular: **Technical term, part of the specialized vocabulary of a particular field, specifically: ***Scientific terminology, terms used by scient ...
s, the ordering in which the reductions are chosen does not make a difference to the eventual result. More precisely, if there are two distinct reductions or sequences of reductions that can be applied to the same term, then there exists a term that is reachable from both results, by applying (possibly empty) sequences of additional reductions. The theorem was proved in 1936 by
Alonzo Church Alonzo Church (June 14, 1903 – August 11, 1995) was an American mathematician, computer scientist, logician, philosopher, professor and editor who made major contributions to mathematical logic and the foundations of theoretical computer scien ...
and
J. Barkley Rosser John Barkley Rosser Sr. (December 6, 1907 – September 5, 1989) was an American logician, a student of Alonzo Church, and known for his part in the Church–Rosser theorem, in lambda calculus. He also developed what is now called the "Rosser siev ...
, after whom it is named. The theorem is symbolized by the adjacent diagram: If term ''a'' can be reduced to both ''b'' and ''c'', then there must be a further term ''d'' (possibly equal to either ''b'' or ''c'') to which both ''b'' and ''c'' can be reduced. Viewing the lambda calculus as an
abstract rewriting system In mathematical logic and theoretical computer science, an abstract rewriting system (also (abstract) reduction system or abstract rewrite system; abbreviated ARS) is a formalism that captures the quintessential notion and properties of rewriting s ...
, the Church–Rosser theorem states that the reduction rules of the lambda calculus are
confluent In geography, a confluence (also: ''conflux'') occurs where two or more flowing bodies of water join to form a single channel. A confluence can occur in several configurations: at the point where a tributary joins a larger river (main stem); o ...
. As a consequence of the theorem, a term in the
lambda calculus Lambda calculus (also written as ''λ''-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution. It is a universal model of computation ...
has at most one normal form, justifying reference to "''the'' normal form" of a given normalizable term.


History

In 1936,
Alonzo Church Alonzo Church (June 14, 1903 – August 11, 1995) was an American mathematician, computer scientist, logician, philosopher, professor and editor who made major contributions to mathematical logic and the foundations of theoretical computer scien ...
and
J. Barkley Rosser John Barkley Rosser Sr. (December 6, 1907 – September 5, 1989) was an American logician, a student of Alonzo Church, and known for his part in the Church–Rosser theorem, in lambda calculus. He also developed what is now called the "Rosser siev ...
proved that the theorem holds for β-reduction in the λI-calculus (in which every abstracted variable must appear in the term's body). The proof method is known as "finiteness of developments", and it has additional consequences such as the Standardization Theorem, which relates to a method in which reductions can be performed from left to right to reach a normal form (if one exists). The result for the pure untyped lambda calculus was proved by D. E. Shroer in 1965.


Pure untyped lambda calculus

One type of reduction in the pure untyped lambda calculus for which the Church–Rosser theorem applies is β-reduction, in which a subterm of the form ( \lambda x . t) s is contracted by the substitution t x := s/math>. If β-reduction is denoted by \rightarrow_\beta and its reflexive, transitive closure by \twoheadrightarrow_\beta then the Church–Rosser theorem is that: :\forall M, N_1, N_2 \in \Lambda: \text\ M\twoheadrightarrow_\beta N_1 \ \text\ M\twoheadrightarrow_\beta N_2 \ \text\ \exists X\in \Lambda: N_1\twoheadrightarrow_\beta X \ \text\ N_2\twoheadrightarrow_\beta X A consequence of this property is that two terms equal in \lambda\beta must reduce to a common term: :\forall M, N\in \Lambda: \text\ \lambda\beta \vdash M=N \ \text\ \exists X: M \twoheadrightarrow_\beta X \ \text\ N\twoheadrightarrow_\beta X The theorem also applies to η-reduction, in which a subterm \lambda x.Sx is replaced by S. It also applies to βη-reduction, the union of the two reduction rules.


Proof

For β-reduction, one proof method originates from
William W. Tait William Walker Tait (born 1929) is an emeritus professor of philosophy at the University of Chicago, where he served as a faculty member from 1972 to 1996, and as department chair from 1981 to 1987. Education and career Tait received his B.A. f ...
and
Per Martin-Löf Per Erik Rutger Martin-Löf (; ; born 8 May 1942) is a Swedish logician, philosopher, and mathematical statistician. He is internationally renowned for his work on the foundations of probability, statistics, mathematical logic, and computer scie ...
. Say that a binary relation \rightarrow satisfies the diamond property if: :\forall M, N_1, N_2 \in \Lambda: \text\ M\rightarrow N_1 \ \text\ M\rightarrow N_2 \ \text\ \exists X\in \Lambda: N_1\rightarrow X \ \text\ N_2\rightarrow X Then the Church–Rosser property is the statement that \twoheadrightarrow_\beta satisfies the diamond property. We introduce a new reduction \rightarrow_ whose reflexive transitive closure is \twoheadrightarrow_\beta and which satisfies the diamond property. By induction on the number of steps in the reduction, it thus follows that \twoheadrightarrow_\beta satisfies the diamond property. The relation \rightarrow_ has the formation rules: *M \rightarrow_ M *If M \rightarrow_ M' and N \rightarrow_ N' then \lambda x.M \rightarrow_ \lambda x.M' and MN \rightarrow_ M'N' and (\lambda x. M)N \rightarrow_ M' :=N'/math> The η-reduction rule can be proved to be Church–Rosser directly. Then, it can be proved that β-reduction and η-reduction commute in the sense that: :If M \rightarrow_\beta N_1 and M \rightarrow_\eta N_2 then there exists a term X such that N_1 \rightarrow_\eta X and N_2\rightarrow_\beta X. Hence we can conclude that βη-reduction is Church–Rosser.


Normalisation

A reduction rule that satisfies the Church–Rosser property has the property that every term ''M'' can have at most one distinct normal form, as follows: if ''X'' and ''Y'' are normal forms of ''M'' then by the Church–Rosser property, they both reduce to an equal term ''Z''. Both terms are already normal forms so X=Z=Y. If a reduction is strongly normalising (there are no infinite reduction paths) then a weak form of the Church–Rosser property implies the full property (see
Newman's lemma In mathematics, in the theory of rewriting systems, Newman's lemma, also commonly called the diamond lemma, states that a terminating (or strongly normalizing) abstract rewriting system (ARS), that is, one in which there are no infinite reduction ...
). The weak property, for a relation \rightarrow, is: :\forall M, N_1, N_2\in \Lambda: if M\rightarrow N_1 and M\rightarrow N_2 then there exists a term X such that N_1\twoheadrightarrow X and N_2 \twoheadrightarrow X.


Variants

The Church–Rosser theorem also holds for many variants of the lambda calculus, such as the
simply-typed lambda calculus The simply typed lambda calculus (\lambda^\to), a form of type theory, is a typed interpretation of the lambda calculus with only one type constructor (\to) that builds function types. It is the canonical and simplest example of a typed lambda ca ...
, many calculi with advanced
type system In computer programming, a type system is a logical system comprising a set of rules that assigns a property called a type to every "term" (a word, phrase, or other set of symbols). Usually the terms are various constructs of a computer progra ...
s, and
Gordon Plotkin Gordon David Plotkin, (born 9 September 1946) is a theoretical computer scientist in the School of Informatics at the University of Edinburgh. Plotkin is probably best known for his introduction of structural operational semantics (SOS) and h ...
's beta-value calculus. Plotkin also used a Church–Rosser theorem to prove that the evaluation of
functional program In computer science, functional programming is a programming paradigm where programs are constructed by Function application, applying and Function composition (computer science), composing Function (computer science), functions. It is a declar ...
s (for both
lazy evaluation In programming language theory, lazy evaluation, or call-by-need, is an evaluation strategy which delays the evaluation of an expression until its value is needed (non-strict evaluation) and which also avoids repeated evaluations (sharing). The b ...
and
eager evaluation In a programming language, an evaluation strategy is a set of rules for evaluating expressions. The term is often used to refer to the more specific notion of a ''parameter-passing strategy'' that defines the kind of value that is passed to the f ...
) is a function from programs to values (a
subset In mathematics, Set (mathematics), set ''A'' is a subset of a set ''B'' if all Element (mathematics), elements of ''A'' are also elements of ''B''; ''B'' is then a superset of ''A''. It is possible for ''A'' and ''B'' to be equal; if they are ...
of the lambda terms). In older research papers, a rewriting system is said to be Church–Rosser, or to have the Church–Rosser property, when it is
confluent In geography, a confluence (also: ''conflux'') occurs where two or more flowing bodies of water join to form a single channel. A confluence can occur in several configurations: at the point where a tributary joins a larger river (main stem); o ...
.


Notes


References

* *. * . tp://ftp.cs.ru.nl/pub/CompMath.Found/ErrataLCalculus.pdf Errata {{DEFAULTSORT:Church-Rosser theorem Lambda calculus Theorems in the foundations of mathematics Rewriting systems