Documentation

HexGraphIso.Nauty.Sparse.ReferenceVisit

theorem Hex.GraphIso.Nauty.Sparse.Max.SweepInput.reference_visit {n k : Nat} {G : Sparse.Colored n k} {tcLevel fuel boundary tv : Nat} {l : Loop n} {bs fs : List Nat} {cell : VSet n} {st out : State n} {parents : Parents n} {targets : List Nat} {key : Key n} {previous : Option Nat} {short : Bool} (h : SweepInput G tcLevel l bs fs (some tv) cell st parents) (hfirst : l.first = false) :
have c := Loop.cell G.graph tcLevel l; have R := State.refined (Graph.ofGraph G.graph) l.node.level l.node.numcells l.node.entry; Generation.PathCover G.graph tcLevel boundary l.node.level R c.tc c.len targets key cell previous → Generation.CanonPast l.node.level c.tc previous st → cell.nextElem previous = some tv → Generic.node false (Graph.ofGraph G.graph) (n + 2) tcLevel fuel (l.node.level + 1) (c.numcells + 1) (Generic.Policy.child l.first l.node.level c.tc tv st) = (Generic.Exit.unwind l.node.level short, out) → (∀ (o : Nat), o < c.len → R.lab[c.tc + o]! = tv → Generation.ChildPath G.graph tcLevel boundary l.node.level R c.tc targets key o → RefReturn (Graph.context G.graph) l.node.level out) → Generation.PathCover G.graph tcLevel boundary l.node.level R c.tc c.len targets key cell (some tv)

Receiving a native off-path child advances reference coverage. A canonical carrier comes from an earlier child; the other carrier kinds return above this receiver. The child-reference implication is the local premise supplied by the recursive reference-completion induction.