ProCGroups.FoxDifferential.Completed.CoefficientRings.CompletedGroupAlgebraModN.CoeffMap
The principal declarations in this module are:
modNCompletedCoeffMapThe coefficient reduction map \(\mathbb{Z}/m\mathbb{Z} \to \mathbb{Z}/n\mathbb{Z}\) attached to a divisibility relation \(n \mid m\). -modNCompletedGroupRingCoeffMapThe coefficient reduction map on one residue-coefficient group ring. -modNCompletedCoeffMap_rflCoefficient reduction along reflexive divisibility is the identity map. -modNCompletedCoeffMap_compCoefficient change is performed stagewise: supports are unchanged and coefficients are transported by the given ring homomorphism.
imports
- ProCGroups.FoxDifferential.Completed.CoefficientRings.CompletedGroupAlgebraModN.InClass.Basic
- Mathlib.Algebra.Algebra.ZMod
- Mathlib.Algebra.MonoidAlgebra.Basic
Imported by
Definition
FoxDifferential.modNCompletedCoeffMap
omit [Fact (0 < n)] [Fact (0 < m)] in
def modNCompletedCoeffMap (hnm : n ∣ m) :
ModNCompletedCoeff m →+* ModNCompletedCoeff n :=
ZMod.castHom hnm (ModNCompletedCoeff n)The coefficient reduction map \(\mathbb{Z}/m\mathbb{Z} \to \mathbb{Z}/n\mathbb{Z}\) attached to a divisibility relation \(n \mid m\).
omit [Fact (0 < n)] in
@[simp]
theorem modNCompletedCoeffMap_rfl :
modNCompletedCoeffMap (n := n) (m := n) dvd_rfl = RingHom.id _Coefficient reduction along reflexive divisibility is the identity map.
Show Lean proof
by
ext x
rcases ZMod.intCast_surjective x with ⟨t, rfl⟩
simp only [modNCompletedCoeffMap, ZMod.castHom_self, map_intCast]
omit [Fact (0 < n)] [Fact (0 < m)] [Fact (0 < k)] in
@[simp]
theorem modNCompletedCoeffMap_comp (hnm : n ∣ m) (hmk : m ∣ k) :
(modNCompletedCoeffMap (n := n) (m := m) hnm).comp
(modNCompletedCoeffMap (n := m) (m := k) hmk) =
modNCompletedCoeffMap (n := n) (m := k) (dvd_trans hnm hmk)Coefficient change is performed stagewise: supports are unchanged and coefficients are transported by the given ring homomorphism.
Show Lean proof
by
ext x
rcases ZMod.intCast_surjective x with ⟨t, rfl⟩
simp only [modNCompletedCoeffMap, ZMod.castHom_comp, map_intCast]
omit [Fact (0 < n)] [Fact (0 < m)] in
def modNCompletedGroupRingCoeffMap (H : Type*) [Monoid H] (hnm : n ∣ m) :
ModNCompletedGroupRing m H →+* ModNCompletedGroupRing n H := by
letI : Algebra (ModNCompletedCoeff m) (ModNCompletedCoeff n) :=
ZMod.algebra' (R := ModNCompletedCoeff n) (m := n) (n := m) hnm
letI : Algebra (ModNCompletedCoeff m) (ModNCompletedGroupRing n H) := inferInstance
exact
(MonoidAlgebra.lift (ModNCompletedCoeff m) (ModNCompletedGroupRing n H) H
(MonoidAlgebra.of (ModNCompletedCoeff n) H)).toRingHomThe coefficient reduction map on one residue-coefficient group ring.
omit [Fact (0 < n)] [Fact (0 < m)] in
@[simp]
theorem modNCompletedGroupRingCoeffMap_of
(H : Type*) [Monoid H] (hnm : n ∣ m) (h : H) :
modNCompletedGroupRingCoeffMap (n := n) (m := m) H hnm
(MonoidAlgebra.of (ModNCompletedCoeff m) H h) =
MonoidAlgebra.of (ModNCompletedCoeff n) H hEvaluation of coefficient reduction on a group-like basis element.
Show Lean proof
by
letI : Algebra (ModNCompletedCoeff m) (ModNCompletedCoeff n) :=
ZMod.algebra' (R := ModNCompletedCoeff n) (m := n) (n := m) hnm
letI : Algebra (ModNCompletedCoeff m) (ModNCompletedGroupRing n H) := inferInstance
change
MonoidAlgebra.lift (ModNCompletedCoeff m) (ModNCompletedGroupRing n H) H
(MonoidAlgebra.of (ModNCompletedCoeff n) H)
(MonoidAlgebra.of (ModNCompletedCoeff m) H h) =
MonoidAlgebra.of (ModNCompletedCoeff n) H h
exact MonoidAlgebra.lift_of
(R := ModNCompletedCoeff m) (A := ModNCompletedGroupRing n H)
(M := H) (MonoidAlgebra.of (ModNCompletedCoeff n) H) h