A join meets a cell but does not meet all of its vertices.
Equations
- Hex.GraphIso.Nauty.Sparse.Join.qualifies full size k = decide (0 < List.count k full ∧ List.count k full < size k)
Instances For
theorem
Hex.GraphIso.Nauty.Sparse.Join.Sweep.clear
{keys full done : List Nat}
{size : Nat → Nat}
{hits : Array Nat}
{count k : Nat}
(h : Sweep keys full done size hits count)
(hn : keys.Nodup)
(hk : k ∈ keys)
(hf : k ∈ full)
:
The actual test-and-clear operation counts only the first occurrence, including when a cell occurs several times in the adjacency row.
theorem
Hex.GraphIso.Nauty.Sparse.Join.Sweep.finish
{keys full : List Nat}
{size : Nat → Nat}
{hits : Array Nat}
{count : Nat}
(h : Sweep keys full full size hits count)
:
At completion the result is the number of nontrivial joins, and all used count entries are zero for the next representative vertex.