Documentation

HexGraphIso.Nauty.Invariant.RelCover

def Hex.GraphIso.Nauty.RelCover {α : Sort u} (R : ααProp) (rank : αNat) (all done live : αProp) :

Each original child is resolved or is related to a no-larger live child. The relation may retain a permutation witness rather than only equality of the children's values.

Equations
Instances For
    theorem Hex.GraphIso.Nauty.RelCover.init {α : Sort u} {R : ααProp} {rank : αNat} (hrefl : ∀ (x : α), R x x) (all : αProp) :
    RelCover R rank all (fun (x : α) => False) all
    theorem Hex.GraphIso.Nauty.RelCover.step {α : Sort u} {R : ααProp} {rank : αNat} {all done live done' live' : αProp} (htrans : ∀ {x y z : α}, R x yR y zR x z) (h : RelCover R rank all done live) (hs : ∀ (x : α), live x(∀ (z : α), R z xdone' z) (y : α), live' y R x y rank y rank x) (hd : ∀ (x : α), done xdone' x) :
    RelCover R rank all done' live'

    Compose the witnesses through one change of the live set.

    theorem Hex.GraphIso.Nauty.RelCover.resolve {α : Sort u} {R : ααProp} {rank : αNat} {all done live live' : αProp} (hrefl : ∀ (x : α), R x x) (htrans : ∀ {x y z : α}, R x yR y zR x z) (h : RelCover R rank all done live) (hdone : ∀ (x y : α), R x ydone ydone x) (hstep : ∀ (x : α), live xlive' x (y : α), all y R x y rank y < rank x) (x : α) :
    live xdone x (y : α), live' y R x y rank y rank x

    Resolve a removed child by strict rank descent, including when the carrier lands outside the set retained by an earlier filter.

    theorem Hex.GraphIso.Nauty.RelCover.filterDesc {α : Sort u} {R : ααProp} {rank : αNat} {all done live live' : αProp} (hrefl : ∀ (x : α), R x x) (htrans : ∀ {x y z : α}, R x yR y zR x z) (h : RelCover R rank all done live) (hdone : ∀ (x y : α), R x ydone ydone x) (hstep : ∀ (x : α), live xlive' x (y : α), all y R x y rank y < rank x) :
    RelCover R rank all done live'

    Apply a descending filter while retaining the relational witnesses.

    theorem Hex.GraphIso.Nauty.RelCover.finish {α : Sort u} {R : ααProp} {rank : αNat} {all done live : αProp} (h : RelCover R rank all done live) (hempty : ∀ (x : α), ¬live x) (x : α) :
    all xdone x

    Once the live suffix is empty, every original child is resolved.