The row checker supplies a typed permutation with exactly the array's entries. Colour preservation is a separate obligation.
A row-checked array preserving the initial colours passes the public admission filter.
A scatter between two reached labellings preserves the initial colouring, so its row-check certificate passes the public filter.
A root-ledger carrier preserves colours because it stabilizes every initial colour cell. This includes carriers of implicit pruning pairs.
Every array in the executable trace is admitted, including redundant code-two automorphisms. The proof uses the search invariant; it adds no work to the traversal.
A checked automorphism recorded in the raw trace belongs to the public generator list. This also admits code-two generators that leave the orbit partition unchanged.
A recorded leaf carrier supplies a generated permutation with the same pointwise action on the entire reference labelling.
Agreement on a reference permutation labelling identifies the whole permutation. No orbit-count inference is needed for this final step.
Every recorded array passes the public colour-preserving checker.
Equations
- Hex.GraphIso.Nauty.Generation.TraceOk G st = ∀ (γ : Array Nat), γ ∈ st.genTrace → ∃ (p : Hex.GraphIso.Perm n), Hex.GraphIso.autom? G γ = some p
Instances For
Admitting a generator preserves the complete public admission check: its scatter endpoints are both reached from the initial colour partition.