The implicit pair at every strictly older cheap boundary is valid at the original ordered-colour partition. The logical level determines when the saved pair is available to pruning.
Equations
- Hex.GraphIso.Nauty.Sparse.CheapBoundary G level st = Hex.GraphIso.Nauty.Boundary G.toDense (Hex.GraphIso.Nauty.Sparse.Graph.context G.graph) level st.frame
Instances For
An equitable native partition passing the cheap guard supplies the implicit root pair used by the actual pruning workspace.
Native refinement preserves every strictly older saved pair by its proved caller-frame effect; the root's strict pair condition is empty.
A passing native guard establishes the implicit pair, while a failing guard parks the pair condition at the next child's depth.
Native individualization and cache invalidation preserve every pair frozen above the child.
Every completed off-path call preserves still-active saved pairs; only a new boundary at or below that call may replace the old boundary.
Recovery revives an older pair, including equality at the next child's logical level, using the literal native cache-invalidating operation.
Initialization starts at boundary one with no active implicit pair.