Stable closure for Gallier--Xu normalization chains #
Directed P1/P2 chains and common subdivisions preserve ordinary validity internally. The cross-cap rewrite additionally reads one refined face backwards, and the current orientation-sensitive validity predicate is not invariant under arbitrary face reversal.
ValidPresentation therefore bundles the ordinary-validity witness at every node of a
normalization chain. NormalizationStep has exactly two proof-producing seams:
- a common directed P1/P2/signed-isomorphism subdivision;
- an unoriented presentation isomorphism in either direction.
The equivalence closure composes these seams, and its realization theorem needs no extra intermediate validity arguments. This is the stable target for the remaining derived normalization chains.
An ordinary-valid finite cyclic presentation, used as a node in a normalization chain.
- presentation : FiniteCyclicPresentation
The
presentationdeclaration. - valid : self.presentation.IsSurfaceValid
Instances For
Equations
- One or more equations did not get rendered due to their size.
Package an ordinary-valid presentation.
Equations
- LeanEval.Topology.ClassificationOfSurfaces.FiniteCyclicPresentation.ValidPresentation.mk' P validP = { presentation := P, valid := validP }
Instances For
One validity-safe normalization comparison. Common subdivisions cover the P1/P2/signed closure; the second constructor covers an independent choice of face traversal in either direction.
- commonSubdivision {P Q : ValidPresentation} (h : P.presentation.HasCommonSubdivision Q.presentation) : NormalizationStep P Q
- unoriented {P Q : ValidPresentation} (h : Nonempty (P.presentation.UnorientedPresentationIso Q.presentation) ∨ Nonempty (Q.presentation.UnorientedPresentationIso P.presentation)) : NormalizationStep P Q
- oneSidedP2 {P : ValidPresentation} (cut : P.presentation.P2Cut) (honeSided : cut.left = [] ∧ 0 < cut.right.length ∨ 0 < cut.left.length ∧ cut.right = []) : NormalizationStep P { presentation := P2.split P.presentation cut, valid := ⋯ }
Instances For
A one-sided-degenerate P2 split is a normalization step.
Every normalization step preserves the faithful polygonal realization of its bundled valid endpoints.
Equivalence closure of validity-safe normalization comparisons.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A directed subdivision is a normalization equivalence, using its target as the common subdivision.
A signed presentation isomorphism is a normalization equivalence.
A P1 subdivision is a normalization equivalence.
A P2 subdivision is a normalization equivalence.
A one-sided-degenerate P2 split is a normalization equivalence.
A normalization chain yields a homeomorphism of the faithful polygonal realizations of its endpoints.
The generic Dyck rewrite as a node in the stable normalization closure.
The generic cross-cap rewrite as a three-step normalization chain: split the source, reverse the right refined face, and merge to the target.
Contract a canonical P1 expansion inside the normalization closure.
Merge the two children of a nondegenerate canonical P2 split inside the normalization closure.
Merge the two children of a one-sided-degenerate P2 split. This is the inverse form needed by cancellation chains, where one child is a monogon.
Merge any ordinary-valid canonical P2 split whose cut is either nondegenerate or one-sided-degenerate.