theorem
Hex.GraphIso.Nauty.Sparse.classify_same
{n : Nat}
(g : Graph n)
(level numcells : Nat)
(st : State n)
:
theorem
Hex.GraphIso.Nauty.Sparse.leafExit_same
{n : Nat}
(leaf : Leaf)
(level : Nat)
(st : State n)
:
theorem
Hex.GraphIso.Nauty.Sparse.firstFloor
{n : Nat}
(g : Graph n)
(inf tcLevel bound : Nat)
:
Generic.BoundedPolicy g inf tcLevel bound fun (st : State n) => bound ≤ st.allsamelevel ∧ bound ≤ st.eqlevFirst
Native calls below an ancestor retain its lower bounds on first-code agreement and the all-same boundary, including cached target dispatch.
theorem
Hex.GraphIso.Nauty.Sparse.firstPath_floor
{n : Nat}
{g : Graph n}
{inf tcLevel fuel level numcells last : Nat}
{st leaf : State n}
(path : Generic.FirstPath g tcLevel fuel level numcells st last leaf)
:
level ≤ (Generic.node true g inf tcLevel fuel level numcells st).snd.allsamelevel ∧ level ≤ (Generic.node true g inf tcLevel fuel level numcells st).snd.eqlevFirst
The actual first terminal installs both boundaries at its depth; every enclosing first call retains the bounds at its own entry level.