Spectral Sequences: Episode III – Revenge of the Serre
Enrique De Alba ; October 19, 2025
We'll slowly bridge the material about Steenrod squares from blog post #2 into spectral sequences. To build some motivation, we'll first look at Sq1∘Sq1 and see how this connects to differentials dr in the Serre spectral sequence (SSS).
How do Steenrod squares interact with each other? Without going too deep in the weeds, there are specific rules for how Steenrod squares compose with each other, and these are called the Adem Relations [1].
Theorem (Adem Relations): For integers a,b such that 0<a<2b, the following relation holds:
Sqa∘Sqb=k=0∑⌊a/2⌋(a−2kb−k−1)Sqa+b−k∘Sqk
where the binomial coefficients are taken mod 2. For large integers a,b we can use Lucas's Theorem [2], where we basically look for any misalignment between the 1s in the base 2 version of k and the 1s in the base 2 of n for a binomial (kn). For example, consider (610):
(610)=(0110210102),
where we see that the first 1 from the right aligns with the 1 above it, but the second 1 does not, hence we can immediately conclude that
(610)=(0110210102)≡0(mod 2)
and one can confirm that, indeed, (610)=210 which is even. For another example, consider (513):
(513)=(0101211012)
where in this case we get alignment with all the 1s at the bottom with 1s at the top, and can then conclude that
(513)≡1(mod 2)
Note that since we have this initial alignment we can add any combination of 1s and 0s to the top and still get an odd number, so
(000001012101011012)=(5173)≡1(mod 2),
where one could calculate the odd number (5173)=1,218,218,079. TL;DR: misalignment = even, alignment = odd.
Returning to Steenrod squares, let's look at Sq1∘Sq1. Recall that
Sq1:Hk(−,Z2)→Hk+1(−,Z2)
Unfortunately we won't be able to flex Lucas's theorem much since 1 is not a big integer, but alas, let's use the Adem Relations to find Sq1∘Sq1. Note that we can use the Adem Relations since we have 1<2⋅1 where a=1,b=1 and 0<a<2b:
Sq1∘Sq1=k=0∑0(1−2k−k)Sq2−k∘Sqk,
where right off the bat we just have k=0 and no other iteration since ⌊1/2⌋=0, so the binomial coefficient is just (10)=0, hence
Sq1∘Sq1=0,
i.e. Sq1∘Sq1=(Sq1)2=0. Note that this Sq1∘Sq1=0 is a fundamental relation in the Steenrod algebra. Furthermore, note that Sq1=β where β is the Bockstein homomorphism [3]. The Bockstein homomorphism is the same mapping as Sq1, where
β:Hn(X;Z2)→Hn+1(X;Z2)
So the Adem Relations confirm that β2=(Sq1)2=0. This ties into differentials where, for example in chain complexes, we have the classic result
∂n∘∂n+1=0
We'll see as we proceed that this idea of a differential (β2=0) is core to spectral sequences!
A spectral sequence is basically a vast generalization of this idea of differentials. Instead of a single differential, we get a sequence of them (d2,d3,d4,…) that act on a grid of algebraic objects. In this post, we'll be exploring the Serre spectral sequence (SSS) [4, 5]. Before we introduce the SSS, let's briefly define fibrations.
Fibration: A map p:E→B is a fibration with fiber F if it has the homotopy lifting property (HLP). We often denote these as F→E→B. If we have a fibration p:E→B then this means that for any space Y and any map g:Y→E, as well as any homotopy H:Y×I→B (where this homotopy starts at p∘g), then there exists a lifted homotopy H:Y×I→E that covers H. If the above is a bit jumbled, take a look at the following commutative diagram which is more clear (and organized):
Intuitively, this means that paths and homotopies in the base space B can be "lifted" up to the total space E. One may wonder why the "total space" is denoted by E. This convention comes from Serre who, as a French mathematician, would've referred to the total space as "espace total" in his native language, hence the E. Finally, for any point b∈B, the preimage p−1(b) is homotopy equivalent to a single space F, the fiber. We denote this entire object by F→E→B. One of the most famous examples of fibrations comes from the Hopf fibration S1→S3→S2, where we can find a non-trivial homotopy group π3(S2)≅Z. With this, we're ready to tackle the SSS!
The Serre Spectral Sequence: For a fibration F→E→B, assuming B is path-connected and simply-connected, there exists a (co)homological spectral sequence, which is a sequence of bigraded abelian groups (which we'll call pages) {Erp,q,dr} (or {Ep,qr,dr} in the homological case) for r≥2 with the following properties:
E2 Page: This is our starting point. The groups on this page are given by the base space B with coefficients in the q-th (co)homology of the fiber F, i.e.
E2p,q≅Hp(B;Hq(F;G)),
where G can by any other coefficient group for Hq(F;−) like Z,Z2, etc. Note that we use the notation Erp,q for cohomology and the flipped notation Ep,qr for homology. Similarly, for homology we get the following for the E2 page:
Ep,q2≅Hp(B;Hq(F;G))
The index p is the base degree and is the horizontal (left/right) axis, while the index q is the fiber degree and is the vertical (up/down) axis. Note that we're assuming that B is simply-connected since we want π1(B) to act trivially on the (co)homology of the fiber H∗(F;G). This makes sure that things stay relatively, literally, and figuratively simple. Additionally, note that since we're usually dealing with path-connected spaces, at the left-most and bottom-most (p,q)=(0,0) we usually start off with:
E20,0=H0(B;H0(F;G))≅G
The Differentials dr: For each page r≥2, there's a map called the differentialdr which is a collection of homomorphisms
dr:Erp,q→Erp+r,q−r+1
The total degree is p+q which is often denoted as n=p+q. Note that dr increases the total degree by 1 since we go from p+q to (p+r)+(q−r+1)=p+q+1, so n→n+1. Similar to Sq1=β, applying the differential twice gives zero, i.e.
dr∘dr=0
Note that for the cohomology case (like above), the indices change the following way: p↦p+r and q↦q−r+1, while in homology it's flipped: p↦p−r and q↦q+r−1. For cohomological spectral sequences we use the dr notation, but for homological spectral sequences we use dr, where
dr:Ep,qr→Ep−r,q+r−1r
This is, unsurprisingly, all due to the duality between homology and cohomology. For differentials, specifically d2, it may help to visualize how a knight moves on a chessboard like an L. For cohomological SSS we have d2 which moves 2 units to the right and 1 unit down; and for homological SSS we have d2 which moves 2 to the left and 1 up.
Higher Pages Er+1: To build some intuition for the higher pages, let's consider E2p,q and the incoming d2 maps going into E2p,q, as well as the outgoing d2 maps coming out of it:
⋯d2E2p−2,q+1d2E2p,qd2E2p+2,q−1d2⋯
The E3 page is defined in a similar fashion as (co)homology:
Each subsequent page is the (co)homology of the previous page with respect to the previous page's differential.
Convergence: For any fixed (p,q), the dr maps eventually either start at a zero group or land on a zero group as r gets large. This means that the groups in Er stabilize. We call this stable page the E∞ page. The E∞ page is related to the (co)homology of the total space H∗(E;G), which we denote like so:
E∞p,q⟹Hp+q(E;G)
There's a few details here that we'll skim over (like filtrations), but for well-behaved and "nice" total spaces E we can usually get away with the following:
Hn(E;G)≅p+q=n⨁E∞p,q
Furthermore, oftentimes we'll get to the E∞ page and just be left with a single non-zero group at some (p0,q0) where p0+q0=n, so we can often be left with a single term:
Hn(E;G)≅E∞p0,q0
There's a lot of pieces here for the Serre spectral sequence, so let's see it in action! For the previous blog posts we've used RP∞ as an example, but for the SSS we'll be looking at CP∞ instead (since it's an easier case). For RP∞ we had the CW complex RP∞=e0∪e1∪⋯, but for CP∞ we have:
CP∞=e0∪e2∪e4∪⋯
where we attach all the even-dimensional cells.
For the RP∞ case we have the following fibration S0→S∞→RP∞, to compare/contrast to the fibration of CP∞ we'll be working with
S1→S∞→CP∞,
and note that we'll be proceeding with Z coefficients for the rest of this post for the (co)homology of CP∞.
We'll begin by first exploring the homology H∗(CP∞) via the Serre spectral sequence and then transitioning to the cohomology.
Homological Serre Spectral Sequence: For this, we have the following three main ingredients:
Ep,q2≅Hp(CP∞;Hq(S1;Z))
dr:Ep,qr→Ep−r,q+r−1r
Ep,q∞⟹Hp+q(S∞;Z)
The game plan is the following: we'll start off by looking at the E2 page, this is where we usually always begin. Then we'll analyze the E∞ page. Then, we'll see that most dr differentials are zero maps, so we'll look for the few non-zero maps that are out there. These will help us find where the Er pages stabilize, i.e.
Er=Er+1=⋯=E∞
Then when we connect the E2 page with the E∞ page via the differentials, we'll be able to solve the puzzle! Let's get started.
First, let's take a look at Ep,q2≅Hp(CP∞;Hq(S1;Z)). S1 has pretty simple homology groups, where H0(S1;Z)≅Z, H1(S1;Z)≅Z, and in general Hq(S1;Z)≅0 for q≥2. Since the q-index moves vertically (up/down), these denote rows in the grid for the E2 page. Since Hq(S1;Z)≅0 for q≥2, this means that the rows q=2,q=3,… are all zero. Let's look at the q=0 and q=1 rows:
Note that these groups are very subtly different since we usually let 1∈Z≅H0(S1;Z)) be a (identity) generator different from the non-zero generator γ∈Z≅H1(S1;Z). We get the following grid for E2:
Here we see some differential maps d2:Hp(CP∞)→Hp−2(CP∞), for p≥2, where we're mapping d2:Ep,02→Ep−2,12. This is a good spot to be for E2, we'll come back after looking at E∞.
Next, we're looking at E∞. Let's look at the homology of S∞ which is closely tied to E∞. Importantly, S∞ is a contractible and path-connected space, so we get the following homology groups:
Hk(S∞;Z)={Z0if k=0otherwise
We won't rigorously prove this, but one way to see this is to consider the following direct limit for the 0th homology:
H0(S∞)=nlimH0(Sn)=Z
where we get Z→Z isomorphisms that eventually stabilize. Similarly for a fixed k>0, we can in a hand-wavey fashion consider:
Hk(S∞)=nlimHk(Sn)=0
where we have a sequence like
⋯0Z00⋯
such that we hit a non-zero group Z at Hk(Sk)≅Z, but then get zero everywhere else in Hk(Sn) for any fixed k such that n>k>0. Note that in both of the arguments for H0 and Hk≥0 we're using the fact that homology commutes with the direct limit since homology is a covariant functor. Putting things together, we get:
p+q=n⨁Ep,q∞≅Z,
for n=0, and ⨁p+q=nE∞p,q≅0 for all n>0. This means that only at (p,q)=(0,0) do we get a non-zero group in the E∞ page, namely Z. So we get:
Ep,q∞={Z0if (p,q)=(0,0)otherwise
Now that we have both the E2 and E∞ pages, let's connect them! The glue that connects these Er pages are the differentials dr. Since the dr maps are responsible for annihilating almost all the groups from the E2 page, let's look at which differentials are non-zero (everything else will just be zero maps).
d2:Ep,q2→Ep−2,q+12∣ Let's see how this map works on our non-zero q=0 and q=1 rows. Spoiler alert: we've already seen this earlier in the grid for E2. This map goes from groups in row q=0 to groups in row q=1 (and then shifts to the left by 2). For row q=1 we map to the zero row q=2, so note that these maps Hp(CP∞)→0 are such that ker(Hp(CP∞)→0)≅Hp(CP∞) since everything gets mapped to zero.
d3:Ep,q3→Ep−3,q+23∣ Similarly, let's see how this d3 map works. Recall that for the E2 page we have that the rows q=2,q=3,… are all zero. A key property of spectral sequences is that any rows or columns that are entirely zero for some page Ermust remain zero on all subsequent pages Er+1 and so on. Thus, for E3, E4, etc, the all rows q≥2 are also zero. Note that this d3 map goes from the row q=0 to the zero row q=2, and also from q=1 to the zero row q=3 in E3. Since these are all maps to zero, then this means d3 is a collection of zero maps. Furthermore, all dr for r≥3 are also forced to be zero since we'd be mapping q=0 to some zero row q=r−1≥2 and q=1 to the zero row q=r≥3.
From d3 onward, we see that dr for r≥3 must all be zero. Since all the differentials from E3 onwards are zero, then this implies that
E3=E4=E5=⋯=E∞,
where the pages all collapse such that E3=E∞. With this, we'll be able to connect E2 to E∞ automatically with:
Looking at p≥2 and q=1, we get the following incoming/outgoing maps for Ep,q2:
Hp+2(CP)d2Hp(CP∞)d20
where ker(d2:Ep,12→Ep−2,22)≅Hp(CP∞) since this outgoing map maps everything in Ep,12≅Hp(CP∞) to zero. So far we have
Ep,13≅im(d2:Ep+2,02→Ep,12)Hp(CP∞)
Importantly, since Ep,13≅Ep,1∞ for all p≥0, then we see that the q=1 row of E3=E∞ is zero, thus Ep,13≅0 for all p. This implies that im(d2:Ep+2,02→Ep,12)≅Hp(CP∞), where Ep,q2≅Hp(CP∞ which means that this incomingd2 map must be surjective.
We see a similar story for q=0. The formula for the E3 page is:
The relevant sequence of maps for the term Ep,02 is:
Ep+2,−12d2Ep,02d2Ep−2,12
Since any term with a negative q-index is zero, the incoming map from Ep+2,−12 is the zero map. Thus, its image is 0, and the formula simplifies to:
Ep,03≅ker(d2:Ep,02→Ep−2,12)
We know Ep,03≅Ep,0∞, which is 0 for all p>0 (since E0,0∞≅Z is the only non-zero term on the bottom row). Ep,03=0 then implies that:
ker(d2:Ep,02→Ep−2,12)=0,
for p>0. This means that the outgoing map d2:Ep,02→Ep−2,12 must be injective for all p>0.
Putting this together with our previous result:
The map d2:Ep+2,02→Ep,12 is surjective for all p≥0. Importantly, note that (after a bit of re-indexing) this is equivalent to d2:Ek,02→Ek−2,12 being surjective for k≥2.
The map d2:Ep,02→Ep−2,12 is injective for all p>0.
The map d2:Ep,02→Ep−2,12 is an isomorphism when the two conditions (i.) p≥2 (for surjectivity) and (ii.) p>0 (for injectivity) are both satisfied at p≥2. Therefore, d2 is an isomorphism for these indices.
Recalling that Ep,q2≅Hp(CP∞;Z), we've found an isomorphism for p≥2:
d2:Hp(CP∞;Z)≅Hp−2(CP∞;Z)
Since CP∞ is path-connected then we have H0(CP∞;Z)≅Z, and since it's also simply-connected then we have H1(CP∞;Z)≅0. Now we can put the d2 isomorphism to use. Since Hp(CP∞;Z)≅Hp−2(CP∞;Z), we get:
With this, we've successfully used homological SSS to find H∗(CP∞)! Next, we'll be using cohomological SSS to find the cohomology ring H∗(CP∞). We'll see that the cohomology side of this story is very similar to the homology one, but with an additional structure that comes from our good friend the cup product.
Cohomological Serre Spectral Sequence: We begin in pretty much the same way as homological SSS with the following three main ingredients:
E2p,q≅Hp(CP∞;Hq(S1;Z))
dr:Erp,q→Erp+r,q−r+1
E∞p,q⟹Hp+q(S∞;Z)
Besides the subscript and superscript flipping, note the different ways the differentials in cohomological SSS move compared to the homological case, where we move (p,q)↦(p+r,q−r+1) in the cohomological case versus the homological one (p,q)↦(p−r,q+r−1).
As we mentioned, the cohomological SSS has an additional product structure that is induced by the cup product. For x∈Erp,q and y∈Ers,t we have:
dr(xy)=dr(x)y+(−1)deg(x)xdr(y)
where deg(x)=p+q. This ensures that the product is well-defined on Er+1. Note that we'll use either xy or x⋅y notation to denote this product which is induced by the cup product. On the E2 page, however, for x∈E2p,q and y∈E2s,t, the product operation xy (or x⋅y) is exactly the cup product. Furthermore, even for the higher pages Er+1 for r≥2 the induced product inherits all the algebraic properties of the cup product, including the graded commutativity one:
x⋅y=(−1)deg(x)deg(y)(y⋅x)
where deg(x)=p+q for x∈E2p,q, and deg(y)=s+t for y∈E2s,t.
Same as before, let's start with the E2 page. Note that, very similar to the homology case, we have the following for Hq(S1;Z)
Hq(S1;Z)={Z0if q=0 or q=1otherwise
So, exactly as before, we immediately have that the rows q≥2 are all zero since Hp(CP∞;0)≅0. Let's look at the q=0 and q=1 rows:
On E2, we have the d2 differential such that d2:E2p,q→E2p+2,q−1. On the E2 grid, we'll be focusing on the non-zero rows q=0 and q=1. We get the following grid for the E2 page:
Note that this is very similar to the homological E2 grid with the arrows reversed. Additionally, same as the homological case, having the rows q≥2 be all zero implies that they are also all zero on the higher pages E3 and up. Furthermore, having the rows q≥2 be all zero also implies that the differentials dr for r≥3 are also zero since they either "jump over" the non-zero q=0,1 rows or get a map like 0→Hq(−)→0 which is also just zero.
On E∞, we have H∗(S∞;Z). Same as the homology case, since S∞ is contractible, we get that H0(S∞;Z)≅Z and Hk(S∞;Z)≅0 for k>0. Similarly as before, we get
E∞p,q={Z0if (p,q)=(0,0)otherwise
Since dr for r≥3 are all zero, we get that E3=E4=⋯=E∞. We can go through the motions and parallel a very similar argument as the homological SSS to get that
d2:E2p,1→E2p+2,0
is an isomorphism. This is similar to the previous d2 isomorphism with some superscript/subscript flipping and re-indexing. OK, great so I guess we're done? Not so fast! We may have an isomorphism, but we still need to work out the product structure of H∗(CP∞).
Let 1∈E20,0≅H0(CP∞;Z) be the multiplicative identity, and let α∈E20,1≅H0(CP∞;Z⟨γ⟩) where γ is the generator for H1(S1;Z)≅Z. Since α∈E2p,1 for p=0, let's apply d2 to get d2(α)∈E22,0. Note that, with the isomorphism, we can denote
x:=d2(α)
where x is the generator of E22,0≅H2(CP∞;Z). Next, let's look at the k-th power of x, i.e. xk∈H2k(CP∞;Z). What happens when we do α⋅xk?
Let's look at d2(α⋅xk):
d2(α⋅xk)=d2(α)⋅xk+(−1)deg(α)α⋅d2(xk)
Note that d2(xk)=0 since xk∈E22k,0 then d2 maps this to E22k+2,−1 which is a zero row (since q<0). Since d2(xk)=0 then this whole (−1)deg(α)α⋅d2(xk) term goes to zero. We then get
d2(α⋅xk)=d2(α)⋅xk=xk+1
since d2(α)=x as we had defined. Note that since xk∈E22k,0 and α∈E20,1 then α⋅xk∈E22k,1 which follows from the bidegree conventions of the SSS. This means that d2 maps to E22k+2,0, hence
d2(α⋅xk)=xk+1∈E22k+2,0
where E22k+2,0≅H2k+2(CP∞;Z). Note that since 2k+2=2(k+1), we have the generator xk+1∈H2(k+1)(CP∞;Z) which is just the (k+1)-th power of the generator x∈H2(CP∞;Z). Also note that deg(x)=2 since x∈E22,0.
This shows (by induction) that the d2 differential maps the generator of each group on the q=1 row isomorphically to a generator on the q=0 row. This complete cancellation is exactly what has to happen for the spectral sequence to collapse and correctly converge to the trivial cohomology of the total space S∞ on the E∞ page. Thus, the only way for the sequence to be consistent is if the cohomology of the base space CP∞ has a structure that enables this cancellation, which is a polynomial ring generated by the single element x of degree 2, i.e.
H∗(CP∞;Z)≅Z[x]
where x∈H2(CP∞;Z) and deg(x)=2.
This is very similar to the cohomology ring of RP∞ from blog post #2, where we have
H∗(RP∞;Z2)≅Z2[α]
for α∈H1(RP∞;Z2). There's a deep geometric connection between the similarities of these two cohomology rings, but that's a story for a later episode. ■
[1] J. Adem, The iteration of the Steenrod squares in algebraic topology, Proc. Nat. Acad. Sci. U.S.A.38 (1952), 720–726.
[2] R. P. Stanley, Enumerative Combinatorics, 2nd ed., Cambridge University Press, Cambridge, 2011.
[3] A. Hatcher, Algebraic Topology, Cambridge University Press, 2002.
[4] J. McCleary, A User's Guide to Spectral Sequences, 2nd ed., Cambridge University Press, Cambridge, 2000.
[5] A. Hatcher, Spectral Sequences in Algebraic Topology (course notes, freely available).