Core automorphisms on the closed row-proof orthant #
CoreOrbitReduction transports positive subdivisions. An RPF AUTO node
also acts on boundary faces, where zero slots have identified core vertices.
This file supplies that missing closed-face transport. The proof deliberately
uses reachability, rather than the literal output of compFold: canonical
union-find representatives need not commute definitionally with a vertex
permutation, but their fibres do.
Fail-closed raw automorphism data #
PTree is not indexed by a core, so an auto node stores lists. The checker
decodes them only after verifying two-sided inverses and the endpoint laws.
The inverse lists are emitted mechanically from the row's permutations.
Raw vertex and slot permutation data checked before use as a graph automorphism.
Proposed images of core vertices, decoded modulo the number of vertices.
Proposed inverse images of core vertices; the checker verifies both inverse identities after decoding.
Proposed images of slot occurrences, decoded modulo the number of slots.
Proposed inverse images of slot occurrences; the checker verifies both inverse identities after decoding.
Orientation-reversal flags indexed by source slot, with missing flags interpreted as false.
Instances For
Check nonempty vertex and slot sets, both inverse identities, and the two endpoint laws for the decoded automorphism data.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Construct a core symmetry from decoded vertex and slot permutations after their inverse and endpoint checks succeed.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Pull a form back exactly as rpfcheck: the old coefficient at e moves
to slotMap e, equivalently the new coefficient at j is read at
slotInvMap j. RPF row proofs have exactly p coordinates.
Equations
- d.pullbackForm hp g = List.getD g 0 0 :: List.ofFn fun (e : Fin p) => List.getD g (↑(d.slotInvMap hp e)).succ 0
Instances For
Pull back every inequality and equality form in the context through the decoded inverse slot map.
Equations
- d.pullbackContext hp Γ = { ge := List.map (d.pullbackForm hp) Γ.ge, eq := List.map (d.pullbackForm hp) Γ.eq }
Instances For
The symmetry-reindexed length vector used to transport the zero-slot contraction and its surviving subdivision.
Equations
- Utilities.Subdivision.ClosedRowProof.ClosedAuto.targetLength symmetry length = symmetry.reindexLength length