Cochain cup Leibniz identity and its descent consequences #
This file records the cochain-level Leibniz / coboundary formula for the singular
cup product over ZMod 2 and derives the immediate consequences needed to descend
the cup product to singular cohomology.
The headline identity itself,
δ(φ ⌣ ψ) = δφ ⌣ ψ + φ ⌣ δψ (over `ZMod 2`)
is aw_cochain_leibniz_zmod2 from AlexanderWhitneyChainMap.lean; here it is
restated as cochainCupZMod2_differential, and the following descent facts are
proved:
cochainCupZMod2_respects_cocycles— the cup of two cocycles is a cocycle, so the cup product is defined on cocycle representatives;cochainCupZMod2_coboundary_left/cochainCupZMod2_coboundary_right— if one factor is a cocycle, the coboundary of the cup is the cup of that factor with the coboundary of the other (the cup of a cocycle with a coboundary is itself a coboundary, up to the degree relabelling cast);cochainCupZMod2_coboundary_left'/cochainCupZMod2_coboundary_right'— the same facts in the "is a coboundary" direction (δη ⌣ ψ = cast (δ(η ⌣ ψ))), exhibiting the cup with a coboundary explicitly as the coboundary of a cochain;cochainCupZMod2_respects_coboundaries— changing a cocycle factor by a coboundary changes the cup product by a coboundary, i.e. the cup product respects the cohomology equivalence relation at the cochain level.
Together these are exactly the inputs needed to define the cohomology-level cup
product H^p(X; ZMod 2) × H^q(X; ZMod 2) → H^{p+q}(X; ZMod 2): the
cup descends to a well-defined bilinear pairing on cohomology classes.
Degree bookkeeping #
The δφ ⌣ ψ term naturally lives in degree (p+1)+q and the φ ⌣ δψ term in
degree p+(q+1); both are transported to the common degree (p+q)+1 via the
cochain degree cast cochainCast (with p+(q+1) = (p+q)+1 definitional and
(p+1)+q = (p+q)+1 propositional via aw_degree_left_succ).
0. Cast lemmas for the cochain degree cast #
The degree cast is additive.
The degree cast along h followed by the cast along h.symm is the identity.
1. The Leibniz / coboundary identity (restated) #
Cochain cup Leibniz identity over ZMod 2 (restatement of
aw_cochain_leibniz_zmod2). The cochain coboundary is a derivation for the cup
product:
δ(φ ⌣ ψ) = δφ ⌣ ψ + φ ⌣ δψ.
The two right-hand terms, of degrees (p+1)+q and p+(q+1), are transported to
the common degree (p+q)+1 via the cochain degree cast.
2. Cup of cocycles is a cocycle #
The cup of two cocycles is a cocycle. If δφ = 0 and δψ = 0 then
δ(φ ⌣ ψ) = 0. This is what makes the cup product defined on cocycle
representatives.
3. Cup with a coboundary is a coboundary #
Coboundary of a cup, left factor a cocycle. If δa = 0 then
δ(a ⌣ ψ) = cast (a ⌣ δψ). Equivalently, the cup of the cocycle a with the
coboundary δψ is itself a coboundary.
Coboundary of a cup, right factor a cocycle. If δψ = 0 then
δ(η ⌣ ψ) = cast (δη ⌣ ψ). Equivalently, the cup of the coboundary δη with the
cocycle ψ is itself a coboundary.
δη ⌣ ψ is a coboundary (explicit form). When ψ is a cocycle,
δη ⌣ ψ equals the degree-relabelled coboundary cast (δ(η ⌣ ψ)), exhibiting it
explicitly as a coboundary.
a ⌣ δη is a coboundary (explicit form). When a is a cocycle,
a ⌣ δη equals the degree-relabelled coboundary cast (δ(a ⌣ η)), exhibiting it
explicitly as a coboundary.
4. The cup respects cohomology equivalence #
The cup product respects coboundaries in the left factor. If ψ is a
cocycle, then changing the left factor by a coboundary δη changes the cup
product by the coboundary cast (δ(η ⌣ ψ)):
(φ + δη) ⌣ ψ = φ ⌣ ψ + cast (δ(η ⌣ ψ)).
Thus cohomologous left factors yield cohomologous cups: the cup product descends to cohomology classes in the left variable.
The cup product respects coboundaries in the right factor. If φ is a
cocycle, then changing the right factor by a coboundary δη changes the cup
product by the coboundary cast (δ(φ ⌣ η)):
φ ⌣ (ψ + δη) = φ ⌣ ψ + cast (δ(φ ⌣ η)).
Thus cohomologous right factors yield cohomologous cups: the cup product descends to cohomology classes in the right variable.