Documentation

LeanPool.NandakumarRamanaRao.NRR.OddSphereDegree.AlgebraicTopology.SingularCohomology

Singular cohomology functor (dualization of the singular chain complex) #

This file builds a functorial singular cohomology theory by dualizing Mathlib's singular chain complex functor.

Pinned Mathlib (v4.28.0, commit 8f9d9cff6bd728b17a24e163c9402775d9e6a365) has no packaged singular cohomology theory (no singularCohomologyFunctor, no named Hⁿ(X; M), no cup product, no universal coefficient theorem). It does, however, provide every building block needed to construct singular cohomology with coefficients in a module by dualizing the existing singular chain complex:

Construction #

For a commutative ring R and a coefficient module M : ModuleCat R, the singular cochain complex functor is the composite

singularCochainComplexFunctor R M
 : TopCatᵒᵖ ⥤ CochainComplex (ModuleCat R) ℕ
 := ((singularChainComplexFunctor (ModuleCat R)).obj M).op
 ⋙ HomologicalComplex.opFunctor _ _
 ⋙ ((linearYoneda R (ModuleCat R)).obj M).mapHomologicalComplex _

and the singular cohomology functor in degree n is

singularCohomologyFunctor R M n
 : TopCatᵒᵖ ⥤ ModuleCat R
 := singularCochainComplexFunctor R M ⋙ HomologicalComplex.homologyFunctor _ _ n.

The codomain is recorded as CochainComplex (ModuleCat R) ℕ rather than HomologicalComplex (ModuleCat R) (ComplexShape.down ℕ).symm; these are definitionally equal since (ComplexShape.down ℕ).symm = ComplexShape.up ℕ by rfl, so no shape-isomorphism lemma is needed.

Conventions #

Scope #

This is the construction layer only (the analogue of PR-coh1a in the design inventories). It does not include homotopy invariance, the universal coefficient theorem, any cohomology computation, or the cup product; those remain downstream work.

The singular cochain complex functor with coefficients in a module M : ModuleCat R, obtained by dualizing the singular chain complex functor.

It sends a space X (as an object of TopCatᵒᵖ) to the cochain complex Hom(C_•(X), M) and is contravariant in X: a continuous map induces a cochain map in the opposite direction. The codomain CochainComplex (ModuleCat R) ℕ is definitionally HomologicalComplex (ModuleCat R) (ComplexShape.down ℕ).symm, since (ComplexShape.down ℕ).symm = ComplexShape.up ℕ.

Equations
  • One or more equations did not get rendered due to their size.
Instances For

    The n-th singular cohomology functor Hⁿ(-; M) : TopCatᵒᵖ ⥤ ModuleCat R with coefficients in a module M : ModuleCat R, obtained by taking n-th homology of the singular cochain complex Hom(C_•(X), M).

    Contravariance in the space is structural: a continuous map f induces the pullback f^* : Hⁿ(Y; M) → Hⁿ(X; M) via the functor's action on (TopCat.ofHom f).op.

    Equations
    Instances For

      Functoriality: the singular cohomology functor preserves identities.

      Functoriality: the singular cohomology functor preserves composition. Note that, being contravariant in the space, this reverses the order of the induced pullbacks at the level of TopCat.

      Congruence: equal morphisms induce equal maps on singular cohomology.

      Functoriality: the singular cochain complex functor preserves composition.

      @[reducible, inline]

      The n-th singular cohomology functor with ZMod 2 coefficients, Hⁿ(-; ZMod 2) : TopCatᵒᵖ ⥤ ModuleCat (ZMod 2). This is the coefficient target needed for the downstream odd-degree / real projective space work.

      Equations
      Instances For
        @[reducible, inline]

        The singular cochain complex functor with ZMod 2 coefficients.

        Equations
        Instances For