Documentation

HexGraphIso.Nauty.Sparse.CountActive

theorem Hex.GraphIso.Nauty.Sparse.splitCounts_active {n : Nat} (level first : Nat) (distance : Bool) (s : RefineSt n) (hl : s.lab.size = n) (hb : s.cellend[first]! < n) (hc : IsCell s.ptn level first (s.cellend[first]! + 1 - first)) (hk : ∀ (q : Nat), first ≤ q → q ≤ s.cellend[first]! → s.hits[s.lab[q]!]! < n + 2) :
have t := splitCounts level first distance s; CellActive level first (s.cellend[first]! + 1) s.active t.active t.ptn ∧ ∀ (u : Nat), u < first ∨ s.cellend[first]! + 1 ≤ u → t.active.mem u = s.active.mem u

The executed count splitter activates all fragments of an active cell and leaves at most one inactive fragment otherwise. Its largest-fragment replacement changes no active membership outside the cell.