LEM0003canonicalv1NF-Confluence
Normalization of programs is confluent: any two reduction paths yield the same normal form. Proved via termination + local confluence + Newman's Lemma.
Payload
NF-Confluence
Normalization of programs is confluent: any two reduction paths yield the same normal form. Proved via termination + local confluence + Newman’s Lemma.
NF-Confluence
Summary
Normalization of programs is confluent: any two reduction paths yield the same normal form. Proved via termination + local confluence + Newman’s Lemma.
Statement
%
\label{lem:nf-confluence}
If $P$ reduces to normal form $N_1$ by one reduction sequence
and to $N_2$ by another, then $N_1 = N_2$.
Proof / Justification
[Proof sketch]
The reduction rules are:
\begin{enumerate}
\item $\sigma_{s,s} \to \varepsilon$ (cancel identity swaps).
\item $\sigma_{t,s} \circ \sigma_{s,t} \to \varepsilon$
(cancel inverse swaps).
\item $\sigma_{s,t} \circ \sigma_{r,s} \to \sigma_{r,t}$
(compose transitive swaps).
\item $\sigma_{s,t} \circ \rho \to \rho \circ \sigma_{s,t}$
(commute swaps past $\rho$).
\end{enumerate}
These rules are terminating (each application reduces
the total instruction count or moves swaps leftward)
and locally confluent (any two overlapping reductions
can be completed to a common result).
By Newman's Lemma (termination $+$ local confluence $\implies$
global confluence), the normal form is unique.
Source Context
- Registry source:
book-01.jsonlline 48 - Manuscript source:
2nd-edition/book-i-categorical-foundations/02_mainmatter/part03/ch13-program-monoid.texlines 101-106
Lean / Formalization Notes
- Formalization:
formalized - Module:
TauLib.BookI.Denotation.ProgramMonoid - Name:
Tau.Denotation.nf_confluence
Dependencies
- Canonical: I.D14, I.T01
Related Results
Generated by later projection phases.
Related Publications
Generated by later projection phases.
Revision Notes
- 2026-04-24: Initial pilot migration.
Identifiers
Aliases & legacy IDs
I.L02nf-confluencelem:nf-confluenceRelease lines
corpus_v3_workingcorpus_v2Relations
Formalized by (2)
Appears in (1)
Downstream uses (computed) (4)
Items in the corpus that reference this one via load-bearing relations. Computed from the full corpus-v3 graph at build time.
Sources
Version & History
Status disclaimer
A Corpus Item page reports the program's current internal record for this item. It does not imply external verification, scientific consensus, or final proof unless explicitly stated. Read it together with its dependencies, formalization status, and the program's overall stance.