A proof projection exposing shared partition and bookkeeping fields. Its empty unused storage is never passed to an executable search or adjacency operation.
Equations
- One or more equations did not get rendered due to their size.
Instances For
structure
Hex.GraphIso.Nauty.Sparse.NodeInv
{n k : Nat}
(G : Sparse.Colored n k)
(level numcells : Nat)
(st : State n)
:
Entry to an actual sparse node: valid partition, exact depth/count, ordered-colour reachability, reference-label frame and bounded scratch.
- scratch : Scratch.Bounded n st.canong.scratch
Instances For
structure
Hex.GraphIso.Nauty.Sparse.Ready
{n k : Nat}
(G : Sparse.Colored n k)
(level numcells : Nat)
(st : State n)
:
A refined or recovered parent is equitable. Its active set need not be reused: the next child installs its own singleton active splitter.
- equitable : Equitable (Graph.context G.graph) level st.lab st.ptn
- scratch : Scratch.Valid n st.lab st.ptn level st.canong.scratch
Instances For
structure
Hex.GraphIso.Nauty.Sparse.FrameOut
{n k : Nat}
(G : Sparse.Colored n k)
(base level : Nat)
(st out : State n)
:
The persistent result of a call, retaining the exact frame effect and scratch bounds also when the call unwinds past its caller.
- scratch : Scratch.Bounded n out.canong.scratch
Instances For
theorem
Hex.GraphIso.Nauty.Sparse.FrameOut.refl
{n k : Nat}
{G : Sparse.Colored n k}
{base level numcells : Nat}
{st : State n}
(h : NodeInv G level numcells st)
:
FrameOut G base level st st
theorem
Hex.GraphIso.Nauty.Sparse.FrameOut.trans
{n k : Nat}
{G : Sparse.Colored n k}
{level : Nat}
{st mid out : State n}
(h : FrameOut G level level st mid)
(h' : FrameOut G level level mid out)
:
FrameOut G level level st out