The Church–Rosser theorem states that if there are two distinct reductions starting from the same lambda calculus term, then there exists a term that is reachable from each reduct via a (possibly empty) sequence of reductions. This is symbolized by the diagram at right: 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, the Church–Rosser theorem is a theorem of confluence. As a consequence of the theorem, a term in the lambda calculus has at most one normal form, justifying reference to "the normal form" of a certain term. The theorem was proved in 1936 by Alonzo Church and J. Barkley Rosser.
The Church–Rosser theorem also holds for many variants of the lambda calculus, such as the simply-typed lambda calculus, many calculi with advanced type systems, and Gordon Plotkin's beta-value calculus. Plotkin also used a Church–Rosser theorem to prove that the evaluation of functional programs (for both lazy evaluation and eager evaluation) is a function from programs to values (a subset of the lambda terms).