theorem
Hex.GraphIso.Nauty.Sparse.NodeInv.visit_ready
{n k : Nat}
{G : Sparse.Colored n k}
{level numcells : Nat}
{st : State n}
(h : NodeInv G level numcells st)
(hn : 0 < n)
(hl : 1 ≤ level)
:
A production visit establishes the equitable parent invariant and a valid cache, retaining exact counts and original colour-cell boundaries.
theorem
Hex.GraphIso.Nauty.Sparse.NodeInv.visit_frame
{n k : Nat}
{G : Sparse.Colored n k}
{level numcells : Nat}
{st : State n}
(h : NodeInv G level numcells st)
(hl : 1 ≤ level)
{out : State n}
(hx : FrameOut G level level (visit (Graph.ofGraph G.graph) level numcells st).snd.snd out)
:
Compose an executed refinement with the rest of its node. New cuts are below the receiving ancestor, while labels and stored references stay within the caller's cells. This follows the sparse operation's actual write sites.