theorem
Hex.PermGroup.Blocks.Invariant.generated
{n : Nat}
{S : Array (Perm n)}
{R : Fin n → Fin n → Prop}
(hS : ∀ (s : Perm n), s ∈ S → s.inv ∈ S)
(hR : Invariant S R)
{g : Perm n}
(hg : Generated S g)
(x y : Fin n)
:
Preservation by symmetric generators extends to the entire group, in both directions. This applies to arbitrary relations, not only partitions.
Every represented group element permutes the blocks.
Equations
- p.IsInvariant G = ∀ (g : Hex.Perm n), Hex.PermGroup.Generated G.generators g → ∀ (x y : Fin n), p.Same x y ↔ p.Same (g.get x) (g.get y)
Instances For
Check the complete chain's symmetric generators on block representatives.
Equations
Instances For
def
Hex.PermGroup.Group.blocksCert
{n : Nat}
(G : Group n)
(pairs : List (Fin n × Fin n))
:
Blocks.Solution G.chain.generators pairs
A seeded minimal block system and its forced-union certificate. The checked chain supplies symmetric generators without recomputing normalization.
Equations
- G.blocksCert pairs = Hex.PermGroup.Blocks.solve G.chain.generators pairs
Instances For
theorem
Hex.PermGroup.Group.blocks_invariant
{n : Nat}
(G : Group n)
(pairs : List (Fin n × Fin n))
:
(G.blocks pairs).IsInvariant G
theorem
Hex.PermGroup.Group.blocks_least
{n : Nat}
(G : Group n)
(pairs : List (Fin n × Fin n))
(R : Fin n → Fin n → Prop)
(hR : Equivalence R)
(hG : ∀ (g : Perm n), Generated G.generators g → ∀ (x y : Fin n), R x y → R (g.get x) (g.get y))
(hs : ∀ (q : Fin n × Fin n), q ∈ pairs → R q.fst q.snd)
:
Minimality among all invariant equivalence relations, including relations not supplied as a canonical partition.
@[simp]
Joining every point to one point forces the indiscrete partition.