Module

PowerQuotientAction.lean

Nyll.ProCGroups.Abelian.PowerQuotientAction
3 declarations indexed from sourceView source ↗

Automorphism actions on quotients by powers

Multiplicative automorphisms preserve the subgroup of powers and induce automorphisms of the corresponding quotient, with explicit evaluation.

Declarations

ProCGroups.Abelian.map_powerRange

Multiplicative automorphisms preserve the subgroup of nth powers.

Source context 2 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace ProCGroups.Abelian
variable {A : Type*} [CommGroup A]
theorem map_powerRange (n : ℕ) (e : MulAut A) :
    ((powMonoidHom (α := A) n).range).map e.toMonoidHom =
      (powMonoidHom (α := A) n).range
ProCGroups.Abelian.powerQuotientAction

The action of automorphisms on the quotient by nth powers.

Source context 2 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace ProCGroups.Abelian
variable {A : Type*} [CommGroup A]
def powerQuotientAction (n : ℕ) :
    MulAut A →* MulAut (A ⧸ (powMonoidHom (α := A) n).range) where
  toFun e := QuotientGroup.congr _ _ e (map_powerRange n e)
  map_one' := by
    apply MulEquiv.ext
    intro x
    obtain ⟨a, rfl⟩ := QuotientGroup.mk'_surjective (powMonoidHom (α := A) n).range x
    rfl
  map_mul' e f := by
    apply MulEquiv.ext
    intro x
    obtain ⟨a, rfl⟩ := QuotientGroup.mk'_surjective (powMonoidHom (α := A) n).range x
    rfl
ProCGroups.Abelian.powerQuotientAction_mk

The quotient automorphism evaluates by applying the original automorphism.

Source context 2 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace ProCGroups.Abelian
variable {A : Type*} [CommGroup A]
theorem powerQuotientAction_mk (n : ℕ) (e : MulAut A) (a : A) :
    powerQuotientAction n e (QuotientGroup.mk' (powMonoidHom (α := A) n).range a) =
      QuotientGroup.mk' (powMonoidHom (α := A) n).range (e a)