One test per point and generator suffices: a point's image must share a block with its representative's image. No pair table is allocated.
Equations
Instances For
def
Hex.PermGroup.Blocks.replay
{n : Nat}
(S : Array (Perm n))
(seeds : List (Fin n × Fin n))
(p : Partition n)
:
Replay only effective forced unions. An untrusted trace may not introduce an arbitrary merge, even if its final partition happens to be invariant.
Equations
- One or more equations did not get rendered due to their size.
- Hex.PermGroup.Blocks.replay S seeds p [] = some p
Instances For
def
Hex.PermGroup.Blocks.check
{n : Nat}
(S : Array (Perm n))
(seeds : List (Fin n × Fin n))
(p : Partition n)
(trace : List (Fin n × Fin n))
:
Completeness checks both the input seeds and terminal generator closure, in addition to replaying the forced unions from the discrete partition.
Equations
- One or more equations did not get rendered due to their size.