def
Hex.PermGroup.Action.Domain
{n : Nat}
{G : Group n}
{α : Type u}
(a : Action G α)
(objects : Array α)
:
A recorded enumeration of an invariant domain. Closure is checked on the signed original generators before any index permutation is constructed.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[instance_reducible]
instance
Hex.PermGroup.Action.instDecidableDomain
{n : Nat}
{G : Group n}
{α : Type u}
[DecidableEq α]
(a : Action G α)
(objects : Array α)
:
Equations
- One or more equations did not get rendered due to their size.
def
Hex.PermGroup.Action.Domain.index
{α : Type u}
[DecidableEq α]
{objects : Array α}
(x : α)
(hx : x ∈ objects)
:
Linear lookup uses decidable equality; no unchecked hash or ordering is used.
Equations
- Hex.PermGroup.Action.Domain.index x hx = ⟨Array.findIdx (fun (y : α) => decide (y = x)) objects, ⋯⟩
Instances For
@[simp]
theorem
Hex.PermGroup.Action.Domain.object_index
{α : Type u}
[DecidableEq α]
{objects : Array α}
(x : α)
(hx : x ∈ objects)
:
@[simp]
theorem
Hex.PermGroup.Action.Domain.act_id
{n : Nat}
{G : Group n}
{α : Type u}
[DecidableEq α]
{a : Action G α}
{objects : Array α}
(h : a.Domain objects)
(i : Fin objects.size)
:
def
Hex.PermGroup.Action.Domain.perm
{n : Nat}
{G : Group n}
{α : Type u}
[DecidableEq α]
{a : Action G α}
{objects : Array α}
(h : a.Domain objects)
(p : Element G)
:
Every group element induces an executable permutation of the domain.
Equations
- h.perm p = Hex.Perm.ofFn (h.act p) ⋯ ⋯
Instances For
@[simp]
theorem
Hex.PermGroup.Action.Domain.perm_id
{n : Nat}
{G : Group n}
{α : Type u}
[DecidableEq α]
{a : Action G α}
{objects : Array α}
(h : a.Domain objects)
:
theorem
Hex.PermGroup.Action.Domain.perm_eq_id
{n : Nat}
{G : Group n}
{α : Type u}
[DecidableEq α]
{a : Action G α}
{objects : Array α}
(h : a.Domain objects)
(p : Element G)
:
Identity in the image means every recorded object is fixed.