ProCGroups.CompletedGroupAlgebra.ProfiniteModules.FiniteGroupAlgebra.Functoriality

21 Theorems | 2 Definitions

This file studies group-algebra maps induced by homomorphisms of finite groups, including composition, basis formulas, continuity, and surjectivity. It also develops coefficient calculations for cyclic reductions used in later kernel arguments.

imports
Imported by

Declarations

theorem finiteGroupAlgebra_mapDomainRingHom_continuous
    (R : Type u) (G H : Type v) [CommRing R] [TopologicalSpace R] [IsTopologicalRing R]
    [Group G] [Group H] [Finite G] [Finite H] (φ : G →* H) :
    letI : TopologicalSpace (MonoidAlgebra R G) := finiteGroupAlgebraTopology R G
    letI : TopologicalSpace (MonoidAlgebra R H) := finiteGroupAlgebraTopology R H
    Continuous (MonoidAlgebra.mapDomainRingHom R φ : MonoidAlgebra R G → MonoidAlgebra R H)

Finite-stage group algebras are functorial by continuous ring homomorphisms.

Show Lean proof
theorem finiteGroupAlgebra_mapDomainRingHom_id
    (R : Type u) (G : Type v) [CommRing R] [Group G] :
    MonoidAlgebra.mapDomainRingHom R (MonoidHom.id G) = RingHom.id (MonoidAlgebra R G)

The finite-stage group algebra functor sends the identity homomorphism to the identity.

Show Lean proof
theorem finiteGroupAlgebra_mapDomainRingHom_comp
    (R : Type u) (G H K : Type v) [CommRing R] [Group G] [Group H] [Group K]
    (φ : G →* H) (ψ : H →* K) :
    (MonoidAlgebra.mapDomainRingHom R ψ).comp (MonoidAlgebra.mapDomainRingHom R φ) =
      MonoidAlgebra.mapDomainRingHom R (ψ.comp φ)

The finite-stage group algebra functor respects composition.

Show Lean proof
theorem finiteGroupAlgebra_mapDomainRingHom_of
    (R : Type u) (G H : Type v) [CommRing R] [Group G] [Group H]
    (φ : G →* H) (g : G) :
    MonoidAlgebra.mapDomainRingHom R φ (MonoidAlgebra.of R G g) =
      MonoidAlgebra.of R H (φ g)

Functoriality on the canonical group-like basis elements of a finite-stage group algebra.

Show Lean proof
theorem finiteGroupAlgebra_mapDomain_sub_one_mul_eq_zero
    {R G H : Type*} [Ring R] [Group G] [Group H]
    (f : G →* H) (g : G) (y : MonoidAlgebra R G)
    (hrel : (MonoidAlgebra.of R G g - 1) * y = 0) :
    (MonoidAlgebra.of R H (f g) - 1) *
        MonoidAlgebra.mapDomainRingHom R f y = 0

A finite group-algebra relation is preserved by pushing the group variable along a homomorphism.

Show Lean proof
theorem finiteGroupAlgebra_mapDomain_zpow_sub_one_mul_eq_zero
    {R G H : Type*} [Ring R] [Group G] [Group H]
    (f : G →* H) (g : G) (n : ℤ) (y : MonoidAlgebra R G)
    (hrel : (MonoidAlgebra.of R G (g ^ n) - 1) * y = 0) :
    (MonoidAlgebra.of R H ((f g) ^ n) - 1) *
    MonoidAlgebra.mapDomainRingHom R f y = 0

Integer-power version of finite group-algebra relation functoriality.

Show Lean proof
theorem finiteGroupAlgebra_coeff_eq_zpow_mul_of_sub_one_mul_eq_zero
    {R G : Type*} [Ring R] [Group G] (a : G) (y : MonoidAlgebra R G)
    (hrel : (MonoidAlgebra.of R G a - 1) * y = 0) :
    ∀ k : ℤ, ∀ t : G, y.coeff (a ^ k * t) = y.coeff t

A finite group-algebra relation \((a - 1)y = 0\) makes coefficients constant along the left \(a\)-orbits.

Show Lean proof
theorem finiteGroupAlgebra_zpow_sub_one_mul_eq_zero_of_sub_one_mul_eq_zero
    {R G : Type*} [Ring R] [Group G] (a : G) (k : ℤ) (y : MonoidAlgebra R G)
    (hrel : (MonoidAlgebra.of R G a - 1) * y = 0) :
    (MonoidAlgebra.of R G (a ^ k) - 1) * y = 0

A finite group-algebra relation \((a - 1)y = 0\) also gives \((a^k - 1)y = 0\) for every integer power \(k\).

Show Lean proof
def finiteCyclicReduction (M K : ℕ) :
    Multiplicative (ZMod (K * M)) →* Multiplicative (ZMod M) :=
  (ZMod.castHom (Nat.dvd_mul_left M K) (ZMod M)).toAddMonoidHom.toMultiplicative

The standard finite cyclic reduction from \(\mathbb{Z}/(K M)\mathbb{Z}\) to \(\mathbb{Z}/M\mathbb{Z}\).

def finiteProductCyclicReduction (Q : Type*) [Group Q] (M K : ℕ) :
    Q × Multiplicative (ZMod (K * M)) →*
      Q × Multiplicative (ZMod M) where
  toFun x := (x.1, finiteCyclicReduction M K x.2)
  map_one' := by
    ext <;> simp [finiteCyclicReduction]
  map_mul' x y := by
    ext <;> simp [finiteCyclicReduction]

The finite product cyclic reduction keeps an auxiliary finite quotient coordinate while reducing only the cyclic coordinate.

theorem int_cast_eq_natAbs_or_neg_natAbs_zmod_of_modulus (L : ℕ) (n : ℤ) :
    (n : ZMod L) = (n.natAbs : ZMod L) ∨
      (n : ZMod L) = -(n.natAbs : ZMod L)

An integer cast to \(\mathbb{Z}/n\mathbb{Z}\) is represented by either its absolute value or the negative of its absolute value, depending on its sign.

Show Lean proof
theorem zmod_natCast_mem_zmultiples_intCast_of_gcd_dvd
    {L M : ℕ} (n : ℤ) (hdiv : Nat.gcd n.natAbs L ∣ M) :
    ∃ q : ℤ, (M : ZMod L) = q • (n : ZMod L)

A natural number cast into \(\mathbb{Z}/n\mathbb{Z}\) lies in the subgroup generated by an integer cast whenever the required gcd divisibility condition holds.

Show Lean proof
theorem exists_zsmul_natCast_of_zmod_castHom_eq
    {M K : ℕ} [NeZero (K * M)] {a b : ZMod (K * M)}
    (h :
      (ZMod.castHom (Nat.dvd_mul_left M K) (ZMod M)) a =
        (ZMod.castHom (Nat.dvd_mul_left M K) (ZMod M)) b) :
    ∃ q : ℤ, a = b + q • (M : ZMod (K * M))

The kernel direction of the map from \(\mathbb{Z}/(K M)\mathbb{Z}\) to \(\mathbb{Z}/M\mathbb{Z}\) is described by integer multiples of \(M\).

Show Lean proof
theorem finiteCyclicReduction_fiber_card
    {M K : ℕ} [NeZero (K * M)] (i : Multiplicative (ZMod M)) :
    Fintype.card {t : Multiplicative (ZMod (K * M)) //
      finiteCyclicReduction M K t = i} = K

Every fiber of \(\mathbb{Z}/(K M)\mathbb{Z} \to \mathbb{Z}/M\mathbb{Z}\) has \(K\) elements.

Show Lean proof
theorem finiteProductCyclicReduction_fiber_card
    {Q : Type*} [Group Q] [Fintype Q] [DecidableEq Q]
    {M K : ℕ} [NeZero (K * M)] (i : Q × Multiplicative (ZMod M)) :
    Fintype.card {t : Q × Multiplicative (ZMod (K * M)) //
      finiteProductCyclicReduction Q M K t = i} = K

The product-with-other-coordinates fiber over \((q,i)\) has the same size as the cyclic fiber, namely \(K\).

Show Lean proof
theorem finiteProductCyclicGroupAlgebra_coeff_eq_of_same_reduction_of_int_sub_one_mul_eq_zero
    {R Q : Type*} [Ring R] [Group Q] {M K : ℕ} [NeZero (K * M)] (n : ℤ)
    (hgcd : Nat.gcd n.natAbs (K * M) ∣ M)
    (y : MonoidAlgebra R (Q × Multiplicative (ZMod (K * M))))
    (hrel :
      (MonoidAlgebra.of R (Q × Multiplicative (ZMod (K * M)))
          (1, Multiplicative.ofAdd (n : ZMod (K * M))) - 1) * y = 0)
    {s t : Q × Multiplicative (ZMod (K * M))}
    (hst : finiteProductCyclicReduction Q M K s = finiteProductCyclicReduction Q M K t) :
    y.coeff s = y.coeff t

Product-coordinate version of the GCD-conditioned fiber constancy.

Show Lean proof
theorem mapDomain_coeff_eq_nsmul_of_fiber_const
    {R G H : Type*} [Semiring R] [Monoid G] [Monoid H] [Fintype G] [DecidableEq H]
    (f : G →* H) (y : MonoidAlgebra R G) (h : H) (c : R)
    (hconst : ∀ g : G, f g = h → y.coeff g = c) :
    (MonoidAlgebra.mapDomainRingHom R f y).coeff h =
      Fintype.card {g : G // f g = h} • c

In a finite-stage group algebra projection, coefficients that are constant on a fiber aggregate to the fiber cardinality times the common coefficient.

Show Lean proof
theorem
  finiteProductCyclicGroupAlgebra_projection_coeff_eq_K_nsmul_of_int_sub_one_mul_eq_zero_of_gcd
    {R Q : Type*} [Ring R] [Group Q] [Finite Q]
    {M K : ℕ} [NeZero (K * M)] (n : ℤ)
    (hgcd : Nat.gcd n.natAbs (K * M) ∣ M)
    (y : MonoidAlgebra R (Q × Multiplicative (ZMod (K * M))))
    (i : Q × Multiplicative (ZMod M)) (t0 : Q × Multiplicative (ZMod (K * M)))
    (ht0 : finiteProductCyclicReduction Q M K t0 = i)
    (hrel :
      (MonoidAlgebra.of R (Q × Multiplicative (ZMod (K * M)))
          (1, Multiplicative.ofAdd (n : ZMod (K * M))) - 1) * y = 0) :
    (MonoidAlgebra.mapDomainRingHom R
      (finiteProductCyclicReduction Q M K) y).coeff i =
      K • y.coeff t0

Product-coordinate coefficient aggregation with the GCD-conditioned cyclic depth.

Show Lean proof
theorem finiteProductCyclicGroupAlgebra_projection_eq_zero_of_int_sub_one_mul_eq_zero_of_gcd
    {Q : Type*} [Group Q] [Finite Q]
    {M K : ℕ} [NeZero (K * M)] (n : ℤ)
    (hgcd : Nat.gcd n.natAbs (K * M) ∣ M)
    (y : MonoidAlgebra (ZMod K) (Q × Multiplicative (ZMod (K * M))))
    (hrel :
      (MonoidAlgebra.of (ZMod K) (Q × Multiplicative (ZMod (K * M)))
          (1, Multiplicative.ofAdd (n : ZMod (K * M))) - 1) * y = 0) :
    MonoidAlgebra.mapDomainRingHom (ZMod K) (finiteProductCyclicReduction Q M K) y = 0

With \(\mathbb{Z}/K\mathbb{Z}\) coefficients, the product-coordinate projection vanishes under the stated gcd-conditioned multiple of \(g-1\).

Show Lean proof
theorem finiteProductCyclicGroupAlgebra_projection_eq_zero_of_pair_relation_of_order
    {Q : Type*} [Group Q] [Finite Q]
    {M K : ℕ} [NeZero (K * M)] (a : Q) (n : ℤ) (d : ℕ)
    (had : a ^ d = 1)
    (hgcd : Nat.gcd (((d : ℤ) * n).natAbs) (K * M) ∣ M)
    (y : MonoidAlgebra (ZMod K) (Q × Multiplicative (ZMod (K * M))))
    (hrel :
      (MonoidAlgebra.of (ZMod K) (Q × Multiplicative (ZMod (K * M)))
          (a, Multiplicative.ofAdd (n : ZMod (K * M))) - 1) * y = 0) :
    MonoidAlgebra.mapDomainRingHom (ZMod K) (finiteProductCyclicReduction Q M K) y = 0

Product-coordinate vanishing when the first coordinate is killed by taking a finite integer power of the relation element.

Show Lean proof
theorem finiteGroupAlgebra_mapDomainRingHom_of_preimage
    (R : Type u) (G H : Type v) [CommRing R] [Group G] [Group H]
    (φ : MonoidHom G H) (hφ : Function.Surjective φ) (h : H) :
    ∃ g : G, φ g = h ∧
      MonoidAlgebra.mapDomainRingHom R φ (MonoidAlgebra.of R G g) =
        MonoidAlgebra.of R H h

A surjective group homomorphism lets each group-like basis element be lifted through the induced group-algebra map.

Show Lean proof
theorem finiteGroupAlgebra_mapDomainRingHom_single_preimage
    (R : Type u) (G H : Type v) [CommRing R] [Group G] [Group H]
    (φ : MonoidHom G H) (hφ : Function.Surjective φ) (h : H) (r : R) :
    ∃ g : G, φ g = h ∧
      MonoidAlgebra.mapDomainRingHom R φ (MonoidAlgebra.single g r) =
        MonoidAlgebra.single h r

A coefficient supported at a target group element has a coefficient-supported lift along a surjective group homomorphism.

Show Lean proof
theorem finiteGroupAlgebra_mapDomainRingHom_surjective
    (R : Type u) (G H : Type v) [CommRing R] [Group G] [Group H]
    (φ : MonoidHom G H) (hφ : Function.Surjective φ) :
    Function.Surjective (MonoidAlgebra.mapDomainRingHom R φ)

A surjective group homomorphism induces a surjective map on group algebras.

Show Lean proof