Coefficient change on an explicit cocycle class
ProvedgroupCohomology.map_id_pi_cocyclesMk_applyLet be a commutative ring and a group, and let , be -linear representations of (objects of Rep k G in the zeroth universe). Let be a morphism of such representations, let be a natural number, and let be a function on -tuples of group elements, i.e. an inhomogeneous -cochain with values in . Assume is a cocycle, that is, the -th differential of the inhomogeneous cochain complex of sends to , and assume likewise that the composite cochain is killed by the -th differential of the inhomogeneous cochain complex of . Then the map on -th group cohomology induced by the identity homomorphism of together with sends the class of the cocycle determined by to the class of the cocycle determined by ; here classes are taken via the canonical projection from cocycles to cohomology, and cocyclesMk packages a cochain with a proof that it is a cocycle into an element of the cocycle module.
This is the effect of a change of coefficients on an explicitly given cohomology class: functoriality of in the coefficient module, computed on representatives. It is the special case of the general functoriality in the pair (group homomorphism, equivariant map) at the identity homomorphism, stated in the form in which no composition with the identity appears in the cochain, and it is used in the level arithmetic of idele-theoretic coboundary computations.
import Mathlib set_option maxHeartbeats 4000000 set_option synthInstance.maxHeartbeats 400000 set_option backward.isDefEq.respectTransparency.types false set_option autoImplicit false open CategoryTheory groupCohomology
theorem groupCohomology.map_id_pi_cocyclesMk_apply
{k G : Type} [CommRing k] [Group G] {A B : Rep.{0} k G}
(φ : A ⟶ B) (n : ℕ) (x : (Fin n → G) → A)
(hx : (inhomogeneousCochains.d A n).hom x = 0)
(hx' : (inhomogeneousCochains.d B n).hom (fun g => φ.hom (x g)) = 0) :
(groupCohomology.map (MonoidHom.id G) φ n).hom (groupCohomology.π A n (groupCohomology.cocyclesMk x hx)) =
groupCohomology.π B n (groupCohomology.cocyclesMk (fun g => φ.hom (x g)) hx') := by sorry