Algebraic Topology

Cohomology

The dual of homology — equipped with a cup product that makes H*(X) a graded ring

Cohomology groups Hⁿ(X) are the dual of homology: built from the cochain complex Cⁿ = Hom(C_n, R), with coboundary δⁿ the dual of ∂_{n+1}, and Hⁿ = ker δⁿ / im δⁿ⁻¹. Over a field, ranks match Betti numbers; over ℤ, torsion enters via the universal-coefficient theorem. The decisive new structure is the cup product ⌣ : H^p × H^q → H^{p+q}, making H*(X) into a graded-commutative ring — homology has nothing similar. De Rham cohomology realises Hⁿ_{dR}(M; ℝ) as closed n-forms modulo exact, with wedge product = cup product and integration ∫_M giving the Poincaré-duality pairing with homology. The sphere S^n has Hⁿ = ℝ, all else zero; the torus T^n has cohomology ring = exterior algebra on n generators.

  • DefinitionHⁿ = ker δⁿ / im δⁿ⁻¹
  • CochainsCⁿ = Hom(C_n, R)
  • Cup product⌣ : H^p × H^q → H^{p+q}
  • de Rhamclosed / exact forms
  • Poincaré dualityH^k(M) ≅ H_{n−k}(M)
  • OriginAlexander–Kolmogorov 1935

Watch the 60-second explainer

A condensed visual walkthrough — narrated, captioned, under a minute.

From homology to cohomology by dualising

Recall homology. From a topological space X build the singular chain complex C_n(X) — the free abelian group on continuous maps from the standard n-simplex to X — with boundary maps ∂_n : C_n → C_{n−1} satisfying ∂² = 0. The n-th homology is

H_n(X) = ker ∂_n / im ∂_{n+1}.

To get cohomology, pick a coefficient ring R (usually ℤ, ℝ, ℂ, or a finite field) and dualise. The cochain groups are

Cⁿ(X; R) = Hom(C_n(X), R)

— linear functionals on n-chains. The coboundary δⁿ : Cⁿ → Cⁿ⁺¹ is the transpose of ∂_{n+1}: for a cochain φ ∈ Cⁿ and an (n+1)-chain σ, (δⁿ φ)(σ) = φ(∂σ). Because ∂² = 0, also δ² = 0, so the cochain complex is a complex. Its cohomology

Hⁿ(X; R) = ker δⁿ / im δⁿ⁻¹

is what you get. Over a field, Hom is well-behaved and Hⁿ(X; F) ≅ Hom(H_n(X), F) ≅ H_n(X; F)*. Over ℤ, there are torsion subtleties captured by the universal coefficient theorem.

Homology vs cohomology side by side

AspectHomology H_nCohomology Hⁿ
Chain groupC_n = free abelian group on n-simplicesCⁿ = Hom(C_n, R)
Differential∂ : C_n → C_{n−1} (lowers degree)δ : Cⁿ → Cⁿ⁺¹ (raises degree)
FunctorialityCovariant: f : X → Y ⇒ f_∗ : H_n(X) → H_n(Y)Contravariant: f : X → Y ⇒ f* : Hⁿ(Y) → Hⁿ(X)
Algebraic structureOnly abelian-group structureGraded-commutative ring via cup product ⌣
Concrete model on manifoldsSingular / simplicial chainsDifferential forms (de Rham), with wedge as cup
Poincaré duality (closed orientable n-manifold)H_k(M) ≅ Hⁿ⁻ᵏ(M) via cap with [M]Pairing ∫_M α ∧ β : H^k × H^{n−k} → ℝ non-degenerate
Coefficient sensitivityTorsion seen directly in H_n(X; ℤ)Torsion shifts to Hⁿ⁺¹(X; ℤ) via UCT
Sheaf generalisationAwkward (locally constant only)Natural: sheaf cohomology H*(X; F) for any sheaf F

Worked example: cohomology of S²

Take a minimal CW structure on the 2-sphere: one 0-cell e⁰ (a point) and one 2-cell e² (the 2-disc attached by collapsing its boundary to e⁰). The cellular chain complex is

0 → ℤ⟨e²⟩ → 0 → ℤ⟨e⁰⟩ → 0

with both differentials zero. Dualising over R = ℝ:

0 → ℝ ← 0 ← ℝ ← 0

Coboundaries all vanish, so Hⁿ(S²; ℝ) = ℝ for n = 0 and n = 2; zero otherwise. The cohomology ring is therefore H*(S²; ℝ) = ℝ ⊕ 0 ⊕ ℝ as a graded vector space, and the cup product is trivial in the only non-zero case (the product of two H²-classes lands in H⁴ = 0).

Realise the H²-generator concretely via de Rham. The standard volume form ω = (1/4π) (x dy ∧ dz − y dx ∧ dz + z dx ∧ dy) restricted to S² ⊂ ℝ³ is a smooth 2-form with dω = 0 (closed) but ω is not d of anything global on S² (S² is simply connected and any global 1-form would have d-integral zero over S² by Stokes, but ∫_{S²} ω = 1 ≠ 0). So [ω] is a non-zero class in H²_{dR}(S²; ℝ). Up to scalar it generates H²(S²; ℝ) = ℝ. The integral ∫_{S²} of the unnormalised volume form gives 4π — the surface area.

The cup product, concretely on T²

The torus T² = S¹ × S¹ has cohomology H*(T²; ℝ) = ℝ ⊕ ℝ² ⊕ ℝ with two natural 1-form generators α = dθ₁ and β = dθ₂ (angle differentials on the two circles), and the 2-form generator α ∧ β.

The cup-product structure is

α ⌣ α = 0, β ⌣ β = 0, α ⌣ β = α ∧ β ≠ 0 in H²(T²; ℝ)

and graded commutativity gives β ⌣ α = −α ⌣ β. So H*(T²; ℝ) is the exterior algebra Λ(α, β) on two degree-1 generators. The non-zero degree-2 class α ⌣ β is detected by integrating α ∧ β = dθ₁ ∧ dθ₂ over T² to get (2π)² = the area.

Why this matters: cohomology with its ring structure distinguishes spaces that homology alone cannot. The wedge S² ∨ S⁴ and the complex projective plane ℂP² have the same Betti numbers (β₀ = β₂ = β₄ = 1) and so the same additive cohomology, but their cup products differ: on ℂP² the generator of H² squares to the generator of H⁴; on S² ∨ S⁴ the same square is zero. Cohomology as a ring sees this; cohomology as a graded vector space does not.

De Rham cohomology and Stokes

For a smooth manifold M, the de Rham complex Ω⁰(M) → Ω¹(M) → Ω²(M) → … is the sequence of smooth differential forms with the exterior derivative d. Closed n-forms are those with dω = 0; exact n-forms are those of the form dη. Since d² = 0, every exact form is closed; the quotient is the n-th de Rham cohomology

Hⁿ_{dR}(M; ℝ) = (closed n-forms) / (exact n-forms).

De Rham's theorem (Georges de Rham, 1931 thesis) gives a canonical isomorphism Hⁿ_{dR}(M; ℝ) ≅ Hⁿ(M; ℝ) — between the smooth-form definition and singular cohomology with real coefficients. The cup product on the right corresponds to the wedge product of forms on the left.

Stokes's theorem ∫_M dω = ∫_{∂M} ω is the engine of the integration pairing: for a closed n-form ω and an n-cycle c, the integral ∫_c ω depends only on the homology class of c and the cohomology class of ω. The integration map H^n_dR × H_n → ℝ is therefore well-defined and realises Poincaré duality on a closed oriented n-manifold.

Poincaré duality and the integration pairing

Let M be a closed oriented n-manifold with fundamental class [M] ∈ H_n(M; ℤ). The cap product with [M] gives an isomorphism

PD : H^k(M; ℤ) → H_{n−k}(M; ℤ), α ↦ α ⌢ [M].

Equivalently, the bilinear pairing H^k(M; ℝ) × H^{n−k}(M; ℝ) → ℝ defined by (α, β) ↦ ∫_M α ∧ β is non-degenerate — the cohomology in complementary degrees is dual to itself. On S^n the duality pairs H⁰ ≅ ℝ with Hⁿ ≅ ℝ. On a genus-g Riemann surface, the duality pairs H¹ with itself; the non-degenerate antisymmetric form is the intersection form, a 2g × 2g matrix with two-by-two blocks [[0, 1], [−1, 0]] capturing the standard symplectic structure. On ℂP² the duality pairs H² with H²: the self-intersection of the generator is +1 (defining ℂP² as opposed to ℂP² with reversed orientation).

Where cohomology shows up

  • Differential geometry. de Rham gives a calculus on manifolds: vector calculus theorems (Stokes, divergence, Green) all become aspects of ∫_M dω = ∫_{∂M} ω. The de Rham complex is the de facto computational model for cohomology of smooth manifolds.
  • Algebraic geometry. Sheaf cohomology, Čech cohomology, derived functors, Hodge theory — all built around the cohomology framework. Serre duality on a complex projective variety is a Poincaré-duality analogue using line bundles.
  • Characteristic classes. Chern, Stiefel-Whitney, Pontryagin classes are cohomology classes of base spaces classifying vector bundles. The Chern character maps K-theory into rational cohomology, packaging bundle data into cup-product calculations.
  • Gauge theory and physics. Yang-Mills instantons on S⁴ are classified by H⁴(BG; ℤ). Magnetic monopoles by H²(X; ℤ). The Aharonov-Bohm phase by H¹(X; U(1)). Anomalies in QFT live in cohomology of the gauge group.
  • String topology and TQFT. Cohomology rings of loop spaces support a Lie-bracket structure (Chas-Sullivan); topological quantum field theories assign to each closed n-manifold a number computed from its cohomology.
  • Number theory. Étale cohomology, ℓ-adic cohomology, p-adic cohomology — Grothendieck's machinery — translates arithmetic problems (counting points, Weil conjectures) into cohomological calculations. The proof of the Weil conjectures by Deligne uses étale H* of a smooth projective variety.

Common pitfalls

  • Confusing co-direction with the dual. Cohomology is contravariant — f : X → Y induces f* : Hⁿ(Y) → Hⁿ(X). This is not just a relabelling of homology — it has structural consequences (restriction along inclusions, pullback of forms) and is essential for sheaf cohomology.
  • Cohomology = dual of homology in general. Only over a field. Over ℤ, the universal coefficient theorem gives 0 → Ext(H_{n−1}(X), R) → Hⁿ(X; R) → Hom(H_n(X), R) → 0; torsion in H_{n−1} contributes to Hⁿ but not to Hom(H_n, ℤ).
  • Treating cup product as commutative. Cup product is graded-commutative: α ⌣ β = (−1)^{|α||β|} β ⌣ α. For odd-degree classes the product is anti-commutative, and α ⌣ α can be non-zero only for even degrees. On a Riemann surface H¹ has α ⌣ α = 0 for any α; on ℂP² the H² generator squares to the H⁴ generator.
  • Confusing de Rham with singular over ℤ. De Rham gives cohomology with ℝ coefficients only. Torsion phenomena (ℝP² has H²(−; ℤ) = ℤ/2) are invisible to de Rham. Over ℝ everything is just Betti numbers; the rich integral structure requires singular or cellular cochains.
  • Forgetting orientability for Poincaré duality. The classical statement H^k(M; ℤ) ≅ H_{n−k}(M; ℤ) requires M closed and oriented. For non-orientable manifolds, the duality holds over ℤ/2 only, or with twisted coefficients. The Klein bottle is non-orientable and lacks a fundamental class in H_2(K; ℤ).
  • Using "closed form" ambiguously. In de Rham, "closed" means dω = 0 — kernel of d. In topology, "closed manifold" means compact without boundary. A closed form is unrelated to a closed manifold; the same word is being used for two different purposes.

Frequently asked questions

What is cohomology, in one sentence?

Cohomology is the dual of homology: dualise the chain complex into cochains Cⁿ = Hom(C_n, R), define δ as the transpose of ∂, and form Hⁿ = ker δⁿ / im δⁿ⁻¹. Over a field, Hⁿ is the dual vector space of H_n. The genuine extra is the cup product — a ring structure homology doesn't have.

What is the cup product?

A bilinear operation ⌣ : H^p × H^q → H^{p+q} making H*(X; R) a graded-commutative ring with α ⌣ β = (−1)^{pq} β ⌣ α. For de Rham, ⌣ is induced by wedge of forms. Distinguishes spaces with same Betti numbers — ℂP² and S² ∨ S⁴ agree additively but differ in cup product.

What is de Rham cohomology?

For a smooth manifold, Hⁿ_dR(M; ℝ) = (closed n-forms) / (exact n-forms). De Rham's theorem makes it isomorphic to singular cohomology with ℝ coefficients. Cup product = wedge. Integration ∫_M : Hⁿ_dR → ℝ realises the Poincaré-duality pairing with homology via Stokes.

How does cohomology compare to homology?

Same Betti numbers over a field; differ by torsion over ℤ via UCT. Cohomology is contravariant (f* goes backwards), has a cup-product ring structure, generalises to sheaf cohomology, and pairs with homology via Poincaré duality. Homology is more geometric and direct; cohomology is more algebraic and more powerful as an invariant.

What is Poincaré duality?

For a closed oriented n-manifold M, capping with the fundamental class [M] gives H^k(M; ℤ) ≅ H_{n−k}(M; ℤ). Equivalently, ∫_M α ∧ β : H^k × H^{n−k} → ℝ is non-degenerate. On a genus-g surface it pairs H¹ with itself via the intersection form — symplectic structure of dimension 2g.

Why is cohomology contravariant?

Because cochains are functions out of chains. A map f : X → Y induces pre-composition C^n(Y) → C^n(X), (f^# φ)(σ) = φ(f ∘ σ), reversing direction. This descends to f* : Hⁿ(Y) → Hⁿ(X). The contravariance is structurally essential for restriction maps in sheaf cohomology and pullback of differential forms.