The group cohomology of a k
-linear G
-representation #
Let k
be a commutative ring and G
a group. This file defines the group cohomology of
A : Rep k G
to be the cohomology of the complex
ρ
is the representation attached to A
).
We have a k
-linear isomorphism Rep k G
, and the representation on G
. If we conjugate the P
is the standard resolution of k
as a trivial
k
-linear G
-representation, then the resulting map agrees with the differential
This gives us for free a proof that our Rep k G
.
To talk about cohomology in low degree, please see the file
Mathlib.RepresentationTheory.GroupCohomology.LowDegree
, which gives simpler expressions for
H⁰
, H¹
, H²
than the definition groupCohomology
in this file.
Main definitions #
groupCohomology.linearYonedaObjResolution A
: a complex whose objects are the representation morphisms and whose cohomology is the group cohomology .groupCohomology.inhomogeneousCochains A
: a complex whose objects are and whose cohomology is the group cohomologygroupCohomology.inhomogeneousCochainsIso A
: an isomorphism between the above two complexes.groupCohomology A n
: this is defined as the th cohomology of the second complex,inhomogeneousCochains A
.groupCohomologyIsoExt A n
: an isomorphism (where is taken in the categoryRep k G
) induced byinhomogeneousCochainsIso A
.
Implementation notes #
Group cohomology is typically stated for G
-modules, or equivalently modules over the group ring
ℤ[G].
However, ℤ
can be generalized to any commutative ring k
, which is what we use.
Moreover, we express k[G]
-module structures on a module k
-module A
using the Rep
definition. We avoid using instances Module (MonoidAlgebra k G) A
so that we do not run into
possible scalar action diamonds.
TODO #
- API for cohomology in low degree:
and For example, the inflation-restriction exact sequence. - The long exact sequence in cohomology attached to a short exact sequence of representations.
- Upgrading
groupCohomologyIsoExt
to an isomorphism of derived functors. - Profinite cohomology.
Longer term:
- The Hochschild-Serre spectral sequence (this is perhaps a good toy example for the theory of spectral sequences in general).
The complex Hom(P, A)
, where P
is the standard resolution of k
as a trivial k
-linear
G
-representation.
Equations
- groupCohomology.linearYonedaObjResolution A = (groupCohomology.resolution k G).linearYonedaObj k A
The differential in the complex of inhomogeneous cochains used to calculate group cohomology.
Equations
- One or more equations did not get rendered due to their size.
The theorem that our isomorphism Fun(Gⁿ, A) ≅ Hom(k[Gⁿ⁺¹], A)
(where the righthand side is
morphisms in Rep k G
) commutes with the differentials in the complex of inhomogeneous cochains
and the homogeneous linearYonedaObjResolution
.
Given a k
-linear G
-representation A
, this is the complex of inhomogeneous cochains
A
.
Equations
- groupCohomology.inhomogeneousCochains A = CochainComplex.of (fun (n : ℕ) => ModuleCat.of k ((Fin n → G) → CoeSort.coe A)) (fun (n : ℕ) => inhomogeneousCochains.d n A) ⋯
Given a k
-linear G
-representation A
, the complex of inhomogeneous cochains is isomorphic
to Hom(P, A)
, where P
is the standard resolution of k
as a trivial G
-representation.
Equations
- groupCohomology.inhomogeneousCochainsIso A = HomologicalComplex.Hom.isoOfComponents (fun (i : ℕ) => (Rep.diagonalHomEquiv i A).toModuleIso.symm) ⋯
The natural inclusion of the n
-cocycles Zⁿ(G, A)
into the n
-cochains Cⁿ(G, A).
This is the map from i
-cochains to j
-cocycles induced by the differential in the complex of
inhomogeneous cochains.
Equations
The group cohomology of a k
-linear G
-representation A
, as the cohomology of its complex
of inhomogeneous cochains.
Equations
The natural map from n
-cocycles to n
th group cohomology for a k
-linear
G
-representation A
.
Equations
The n
th group cohomology of a k
-linear G
-representation A
is isomorphic to
Extⁿ(k, A)
(taken in Rep k G
), where k
is a trivial k
-linear G
-representation.
Equations
- groupCohomologyIsoExt A n = isoOfQuasiIsoAt (HomotopyEquiv.ofIso (groupCohomology.inhomogeneousCochainsIso A)).hom n ≪≫ (groupCohomology.extIso k G A n).symm