Back when I was in highschool, I became really interested in this thing called “machine learning.” The main idea is that you bombard some algorithm with a ton of examples (of a task being performed or of objects being classified), and then you cross your fingers and hope it has managed to reliably learn how to do what the examples showcased. One big draw of this approach is that there are many tasks where it is not clear how to accomplish them, but where it feels like there has to be enough information present that accomplishing them is possible. For example, imagine writing a program that takes in an image and tells you if there’s a bird in it; this is hard to do algorithmically, but certainly the pixel values of an image contain enough information to decide whether or not there’s a bird there ^{1}. The moral of this detour is that sometimes we find ourselves in situations where we have lots of information available to tackle some problem, but figuring out how to utilize all that information is quite tricky. Imagine, for example, you have some topological space $X$ with a filtration $ \newcommand{\msC}{\ms C} \newcommand{\msA}{\ms A} \DeclareMathOperator{\Ch}{Ch} \DeclareMathOperator{\CoCh}{CoCh} \DeclareMathOperator{\Fil}{Fil} \DeclareMathOperator{\Tot}{Tot} $
such that $X=\dirlim X^k$. The example to keep in mind is $X$ a CWcomplex, and $X^k$ its $k$skeleton. Intuitively, the cohomology groups $\hom^n(X^k)$ should approximate $\hom^n(X)$, so if you know all of them, then you should have enough information to say something about $\hom^n(X)$. Figuring out exactly what you can say in this situation (and others) is the aim of spectral sequences, which, if you haven’t guessed yet, are the stars of this post.
Specifically, I’ll speak abstractly about two common sources of spectral sequence ^{2}. Because I really wanna talk about this material ^{3}, I won’t do my usual thing of trying to write as if everything I’ve written previously on this blog forms a dense subset of what I’m assume the reader knows. Instead, I’ll assume you’re comfortable with the words like cohomology, category, and other things that start with a c, then go from there. With that said, I’ll briefly define abelian categories, say what a spectral sequence is, given an example, and depending on how I’m feeling at the end, either say the word hypercohomology or save that for a future post. Let’s get started$\dots$
Abelian Categories Briefly
An abelian category is one that behaves like the category of abelian groups. These form the main setting for much of homological algebra, so it’s probably worthwhile to see how they’re defined at least once. I’ll build up the definition piece by piece.
To get to the next step, we need the notion of a biproduct, which is just an object that is both a product (think direct product) and coproduct (think direct sum). I guess I’ll define what a coproduct (of two objects) is, and leave defining product to you.

for every object $Y\in\msC$ with maps $f_1:X_1\to Y$ and $f_2:X_2\to Y$, there exists a unique morphism $f:X\to Y$ such that the below diagram commutes
Now, define products in a dual way, i.e. “maps into products are maps into each factor,” and then say a biproduct is an object that is both a product and coproduct (of the same set of objects). This brings us to
For the next step, we need to know how to define kernels and cokernels.
Cokernels are define similarly as being initial with respect to maps $\nu:Y\to N$ such that $\nu\circ f=0$. Now,
Almost there. Note that if $\mu:\ker f\to X$ is the kernel of a map $f:X\to Y$, then $\mu$ is a monomorphism, i.e. if we have $a:A\to\ker f$ and $b:A\to\ker f$ such that $\mu\circ a=\mu\circ b$, then $a=b$ ^{4}. We would like every monomorphism to arise in this way. Similarly, cokernels are epimorphisms, and we would like them to be the only epimorphisms ^{5}.
To sum it all up, an abelian category is one with a zero object, all binary biproducts, all kernels and cokernels, and where all monomorphisms/epimorphisms are normal. Lot’s of the language used in the theory of abelian groups (quotients, subobjects, exactness, etc.) carries over to arbitrary abelian categories in a fairly straightforward manner, so you can often get away with imagining elements of abstract abelian categories as just being abelian groups or $R$modules, or what have you. Before moving on, here’s one important example of an abelian category.
Fix an additive category $\msA$. A chain complex ^{6} $A_\bullet$ is a sequence
of morphisms in $\msA$ such that $d_n\circ d_{n+1}=0$ for all $n$. A chain map $f:A_\bullet\to B_\bullet$ is a commutative diagram
whose rows are chain complexes. Let $\Ch_\bullet(\msA)$ denote the category whose objects are chain complexes in $\msA$, and whose morphisms are chain maps.
Before going on, I should maybe also say what homology is.
Spectral Sequence of a Filtered Complex
Now we start developing the good stuff. I should probably start by saying that I will only be considering spectral sequences in cohomology in this post, so, for example, we’ll we be working in the (abelian) category $\CoCh(\msA)$ of cochain complexes of an abelian category $\msA$. ^{7}
For the remainder of this section, fix some abelian category $\msA$. Probably a good place to start here is with the definition of a filtered complex.
Let $A^\bullet=\bracks{d_n:A^n\to A^{n+1}}$ be a filtered cochain complex. Its differential $d$ induces a welldefined differential $G^pA^n\to G^pA^{n+1}$, so we get an associated graded chain complex $G^pA^\bullet$. Furthermore, we get a natural filtration on cohomology given by
which has assocated graded pieces $G^p\hom^n(A^\bullet)$. If we’re lucky this grading will actually determine the cohomology of $A^\bullet$ via the short exact sequences
It’s sometimes easier to compute $\pull\hom(G^pA^\bullet)$ than $G^p\pull\hom(A^\bullet)$, so we may wonder about comparing the two in order to eventual get a handle on $\pull\hom(A^\bullet)$. It turns out that we can get from one to the other via a series of “successive approximations.”
We start by denoting the associated graded complex by
Denote the cohomology of this complex by
which we think of as a “firstorder approximation” to $\pull\hom(A^\bullet)$. Let’s explicitly construct a secondorder approximation. Note that a cohomology class $\alpha\in E_1^{p,q}$ can be represented by a chain $x\in F^pA^{p+q}$ with differential $dx\in F^{p+1}A^{p+q+1}$. With this in mind, we define
One easily sees that $d_1^{p,q}\circ d_1^{p+1,q}=0$ ^{8}, and so we are justified in defining
As a sanity check to make sure things make sense, try doing the following.
Returning to general filtrations, we can continue to construct higher order approximations. Doing one more step before handling general approximations, note that an $\alpha\in E_2^{p,q}$ can be represented by some $\st\alpha\in E_1^{p,q}$ with differential $d_1\st\alpha=0\in E_1^{p+1,q}$. Since $d_1\st\alpha=[dx]$ where $x\in F^pA^{p+q}$ is any chain representing $\alpha$, we can take $dx$ to be the zero element of $\ker(d_0^{p+1,q})$, which is to say we can take $x$ s.t. $dx\in F^{p+2}A^{p+q+1}$ ^{9}. This suggest we can get a map $d_2^{p,q}:E_2^{p,q}\to E_2^{p+2,q1}$.
Based on what we’ve seen so far, it seems as though elements of an $r$th order approximation $E_r^{p,q}$ should be ultimately represented by cycles $x\in F^pA^{p+q}$ such that $dx\in F^{p+r}A^{p+q+1}$. This turns out to be exactly the case. For $r\ge0$, define
and let $E_r^{p,q}=Z_r^{p,q}/B_r^{p,q}$. On these objects, we can define a differential
where $z\in F^pA^{p+q}\cap\inv d(F^{p+r}A^{p+q+1})$. Note that $d_r$ has bidegree $(r,1r)$. With these definitions set up, we have the following ^{10}.
 The map $d_r^{p,q}$ is welldefined with $d_r^{p,q}\circ d_r^{pr,q+r1}=0$.
 $E_{r+1}$ is given by taking the cohomology of $E_r$, i.e. $$E_{r+1}^{p,q}\simeq\frac{\ker\parens{d_r^{p,q}:E_r^{p,q}\to E_r^{p+r,qr+1}}}{\im\parens{d_r^{pr,q+r1}:E_r^{pr,q+r1}\to E_r^{p,q}}}$$
 $E_1^{p,q}=\hom^{p+q}(G^pA^\bullet)$.
 If the filtration of $A^\bullet$ is bounded, then for every $p,q$, for $r$ sufficiently large, we have $E_r^{p,q}=G^p\hom^{p+q}(A^\bullet)$. In this case, we say $E_1$ converges (or abuts) to $\hom^{p+q}(A^\bullet)$, and denote this $E_1^{p,q}\implies\hom^{p+q}(A^\bullet)$.
 It's clear by definitions that every element of $E_r^{p,q}$ can be represented by some $z\in K_r^{p,q}$ just by definition. Given such a $z$, we have $dz\in K_r^{p+r,qr+1}$ because $dz\in F^{p+r}A^{p+q+1}$ and $d^2z=0$. Hence, it remains to show that if $z\in I_r^{p,q}$, then $dz\in I_r^{p+r,qr+1}$. Well, if $z\in I_r^{p,q}$, then $z=dw$ with $w\in F^{pr+1}A^{p+q1}$, so $dz=d^2w=0\in F^{p+r}A^{p+q+1}$. Hence, $dz\in I_r^{p+r,qr+1}$ as desired. It's clear that $d_r^2=0$ since $d^2=0$.
 Note that $K_{r+1}^{p,q}\subset K_r^{p,q}$, so there's a natual induced injection $Z_{r+1}^{p,q}\into Z_r^{p,q}$. Composing this with the quotient map gives a map $\phi:Z_{r+1}^{p,q}\to E_r^{p,q}$. Now, for $z\in K_{r+1}^{p,q}$, we have $\phi([z])\in\ker d_r^{p,q}$ since $d_r(\phi([z]))=[dz]\in E_r^{p+r,qr+1}$ and $dz\in F^{p+r+1}A^{p+q+1}=F^{(p+r)+1}A^{(p+r)+(qr+1)}$. In fact, we have that $\phi$ surjects onto $\ker d_r^{p,q}$ because its image, by definition, contains every $z$ s.t. $dz\in F^{p+r+1}A^{p+q+1}$. Now, we claim that $\ker\phi=B_r^{p,q}$ which suffices to prove 2. It's clear that $I_{r+1}^{p,q}\subset I_r^{p,q}$, so $B_r^{p,q}\subset\ker\phi$. Conversely, suppose that $z\in\ker\phi\subset Z_{r+1}^{p,q}$. Well, $\phi(z)=[z]$, so this means that $z\in B_r^{p,q}$. Hence, $z\in B_r^{p,q}\cap Z_{r+1}^{p,q}$, so $z\in B_{r+1}^{p,q}$.
 It's clear from definitions that $Z_1^{p,q}=\ker\parens{G^pA^{p+q}\to G^pA^{p+q+1}}$ and that $B_1^{p,q}=\im\parens{G^pA^{p+q1}\to G^pA^{p,q}}$. Part 3 follows.
 Suppose now that there exists $n,m\in\Z$ such that $F^nA^\bullet=A^\bullet$ and $F^mA^\bullet=0$ (so $m>n$). Fix any $p,q\in\Z$, and choose any $r>\max\{mp,pn+1,0\}$. Then, $$F^{p+r}A^{p+q+1}\subseteq F^mA^{p+q+1}=0\text{ and }F^{pr+1}A^{p+q1}\supseteq F^nA^{p+q1}=A^{p+q1},$$ so $Z_r^{p,q}=\parens{F^pA^{p+q}\cap\ker d+F^{p+1}A^{p+q}}/F^{p+1}A^{p+q}$, and $B_r^{p,q}=\parens{F^pA^{p+q}\cap\im d+F^{p+1}A^{p+q}}/F^{p+1}A^{p+q}$. With these descriptions stated, we obviously have a surjective map $F^p\hom^{p+q}(A^\bullet)\onto E_r^{p,q}$. The kernel of this map will be the cohomology classes $\alpha\in F^p\hom^{p+q}(A^\bullet)$ represented by a cycle $x\in F^{p+1}A^{p+q}$; that is, the kernel is exacly $F^{p+1}A^{p+q}$, so we get our desired isomorphism $G^p\hom^{p+q}\iso E_r^{p,q}$.
Before ending this section, I should maybe mention some standard terminology. The data summarized in the above theorem (i.e. objects $E_r^{p,q}$ with differentials of bidgree $(r,1r)$ such that $E_{r+1}$ is the cohomology of $E_r$) is collectively known as a (cohomological) spectral sequence. For fixed $r$, the objects $E_r^{p,q}$ form the $r$th page (or $E_r$page) of the sequence. In general, if $E_r^{p,q}$ only depends on $p,q$ for $r$ sufficiently large, then we denote this object by $E_\infty^{p,q}$. Hence, for the spectral sequence of a bounded filtered complex $A^\bullet$, we have $E_\infty^{p,q}=G^p\hom^{p+q}(A^\bullet)$. Spectral sequences are usually drawn as a 2d grid with $p$ increasing to the right, and $q$ increasing as you move vertically upwards.
A Neat Application
Now that we’ve seen a way of constructing spectral sequences, let’s spend some time looking at their applications on topology. In this section, we’ll (re)prove one result one usually gets without spectral sequences, and then in the next section we’ll look into something more substantive. Namely, we’ll first show that singular and cellular cohomology agree.
Fix a CWcomplex $X$, and let $X^k$ denote its $k$skeleton. Let $C^\bullet(X)$ denote its singular cochain complex, so $C^n(X)=\Hom_{\Z}(C_n(X),\Z)$ where $C_n(X)$ is the free abelian group generated by maps $\Delta^n\to X$. We filter this by setting ^{11}
where the map $C^n(X)\to C^n(X^p)$ is the natural restriction map. This is indeed a decreasing filtration, so we get a spectral sequence $E_{p,q}^0=G^pC^{p+q}(X)\implies\hom^{p+q}(X)$. We claim that $E_{p,q}^0\simeq C^{p+q}(X^{p+1},X^p)$, the group of relative cochains. Note that we have a homomorphism of short exact sequences
where the middle map is the identity, the right map is the natural restriction map, and left map is the unique one making the diagram commute. Now, since the middle map is an isomorphism, the snake lemma tells us that the left map is injective, and that its cokernel is isomorphic to $\ker(C^p(X^{p+1})\to C^p(X^p))$, so
as claimed. Now, by definition, cohomology of this page gives relative cohomology, so $E_1^{p,q}=\hom^{p+q}(X^{p+1},X^p)$ ^{12}. Recall that $\hom^{p+q}(X^{p+1},X^p)=0$ if $q\neq1$, so the only nontrivial differentials on the $E_1$ page are $d_1^{p,1}:\hom^{p+1}(X^{p+1},X^p)\to\hom^{p+2}(X^{p+2},X^{p+1})$. One easily checks that these agree with the differentials defining cellular cohomology, so the $E_2$ is given by
There are no more nontrivial differentials past this point, so $E_2^{p,q}=E_\infty^{p,q}$. Finally, since each diagonal ^{13} only contains one nonzero object, we conclude that $\hom^p(X)\simeq E_\infty^{p1,1}\simeq\hom^p_{\mrm{cell}}(X)$ ^{14}, so singular and cellular cohomology agree.
Serre Spectral Sequence
In this section, I’ll need to assume more topology background that in the previous sections; in particular, you should know about fibrations and their long exact sequences in homotopy. Here, we’ll construct the Serre spectral sequence which is used to relate the (co)homologies of the base and fiber spaces of a fibration, to that of its total space. With that said, let’s just do it ^{15} ^{16}.
Let $B^p$ denote $B$'s $p$skeleton, and let $X^p=\inv\pi(B^p)$, so $X=\dirlim X^p$. Then, like before, we can filter $C^\bullet(X)$ by setting $F^pC^\bullet(X)=C^\bullet(X,X^{p1})$ and so obtain a spectral sequence $E_0^{p,q}\implies\hom^{p+q}(X)$ with $E_1$page $E_1^{p,q}=\hom^{p+q}(X^p,X^{p1})$. Our goal is to calculate the $E_2$page of this sequence. Namely, we will show that the differential $E_1^{p,q}\xto{d_1}E_1^{p+1,q}$ is "the same as" $$\Hom(\hom_p(B^p,B^{p1}),\hom^q(F))\to\Hom(\hom_{p+1}(B^{p+1},B^p),\hom^q(F)).$$ Note that cohomology of the above is just $\hom^p(B;\hom^q(F))$, (cellular) cohomology with coefficients in $\hom^q(F)$. We will first show that the groups match up, i.e. that $\hom^{p+q}(X^p,X^{p1})\simeq\Hom(\hom_p(B^p,B^{p1}),\hom^q(F))$. Let $\bracks{D_\alpha^p}_{\alpha\in A}$ be the collection of $p$cells of $B$, let $S_\alpha^{p1}=\del D_\alpha^p$, and let $\phi_\alpha:D_\alpha^p\to B^p$ be the characteristic map of the $p$cell $D_\alpha^p$ for each $\alpha\in A$. Then, $\hom_p(B^p,B^{p1})$ is free abelian with basis $\{D_\alpha^p\}$, so $$\Hom(\hom_p(B^p,B^{p1}),\hom^q(F))\simeq\Hom(\Z^{\oplus A},\hom^q(F))\simeq\prod_{\alpha\in A}\hom^q(F).$$ Now, define the spaces $(\wt D_\alpha^p,\wt S_\alpha^p)$ via the pullback squares $$\begin{CD} (\wt D_\alpha^p,\wt S_\alpha^{p1}) @>\wt\phi_\alpha>> (X^p, X^{p1})\\ @VVV @VVV\\ (D_\alpha^p, S_\alpha^{p1}) @>\phi_\alpha>> (B^p, B^{p1}) \end{CD}$$ Note that $\wt D_\alpha^p$ and $\wt S_\alpha^{p1}$ are not literal disks/spheres, but instead look for like "disk x fiber" or "sphere x fiber." We claim that $$\prod_{\alpha\in A}\hom^{p+q}(\wt D_\alpha^p,\wt S_\alpha^{p1})\simeq\hom^{p+q}(X^p,X^{p1}).$$ Since $B$ is a CWcomplex, there exists some open neighborhood $N\subset B^p$ containing $B^{p1}$ that deformation retracts onto $B^{p1}$. That is, there exists some homotopy $h_t:N\to N$ with $h_0$ the identity and $h_1$ a retraction onto $B^{p1}$. Since $\pi$ is a fibration, letting $\wt N=\inv\pi(N)$, we can lift $h_t$ to a homotopy $\wt h_t:\wt N\to\wt N$ wtih $\st h_0$ the identity and $\st h_1$ a map whose image lies in $X^{p1}$. From this, we conclude that the inclusion $X^{p1}\into\wt N$ is a homotopy equivalence. This means that $\pull\hom(X^p,X^{p1})\iso\pull\hom(X^p,\wt N)$. At the same time, excision shows us that $\pull\hom(X^p,\wt N)\simeq\pull\hom(X^p\sm X^{p1},\wt N\sm X^{p1})$, but the RHS is now $$\pull\hom\parens{\bigsqcup_{\alpha\in A}(\wt D_\alpha^p,\wt S_\alpha^{p1})}\simeq\prod_{\alpha\in A}\pull\hom(\wt D_\alpha^p,\wt S_\alpha^{pq}),$$ so we're happy. The next step is to now construct isomorphisms $$\eps_\alpha:\hom^{p+q}(\wt D_\alpha^p,\wt S_\alpha^{p1})\iso\hom^q(F).$$ Let $\wt D^p\onto D^p$ be any fibration over a $p$dimensional disk. Write $\wt S^{p1}:=\partial D^p=D^{p1}_\cup_{S^{p2}}D^{p1}_+$ as a union of a northern and southern hemisphere. Then, cohomology of the triple $(\wt D^p,\wt S^{p1},\wt D^{p1}_+)$ gives an isomorphism $\hom^{p+q1}(\wt S^{p1},\wt D^{p1}_+)\iso\hom^{p+q}(\wt D^p,\wt S^{p1})$, and excision (remove the complement of $\wt D_^{p1}$) gives an isomorphism $\hom^{p+q1}(\wt S^{p1},\wt D_+^{p1})\iso\hom^{p+q1}(\wt D_^{p1},\wt S^{p2})$. Combining these two gives, $$\hom^{p+q}(\wt D^p,\wt S^{p1})\simeq\hom^{p+q1}(\wt D_^{p1},\wt S^{p2}).$$ Applying this to $\wt D_\alpha^p$ + a little bit of induction gives a map $$\eps_\alpha:\hom^{p+q}(\wt D_\alpha^p,\wt S_\alpha^{p1})\iso\hom^q(\wt D_\alpha^0).$$ Now, $\wt D_\alpha^0$ is the fiber over some $0$cell $D_\alpha$, which is not necessarily $F$ (the fiber over our chosen basepoint $*$). However, lifting a (contractible) path from $D_\alpha^0$ to $F$ gives a (canonical) isomorphism $\hom^q(\wt D_\alpha^0)\simeq\hom^q(F)$, so we're done comparing groups. It's now left to show that the below square (whose vertical maps are isomorphisms) commutes $$\begin{CD} \hom^{p+q}(X^p,X^{p1}) @>d_1>> \hom^{p+q+1}(X^{p+1},X^p)\\ @VVV @VVV\\ \Hom(\hom_p(B^p,B^{p1}),\hom^q(F)) @>>> \Hom(\hom_{p1}(B^p,B^{p1}),\hom^q(F)) \end{CD}$$ We won't bother doing this here because I'm lazy, so just trust me when I say this is the case. QED.
This is our first serious, readily applicable spectral sequence. Perhaps unsurprisingly, it turns out to be really useful, so let’s see it in action.
Hurewicz isomorphism
We’ll first use Serre’s spectral sequence to prove Hurewicz’s theorem that a spaces first nontrivial homotopy group and first nontrivial homology group coincide ^{17}. Before proving this, we’ll first need to prove a lemma (also named Hurewicz) elucidating the connection between $\pi_1$ and $H_1$ ^{18}.
Alright, got that out of the way. Before proving Hurewicz, I should note that while I’ve only talked about spectral sequences in cohomology, spectral sequences in homology exist as well. In particular, there’s one associated to an increasing filtration of a chain complex, and this gives rise to a Serre spectral sequence in homology which, for a fibration $F\to E\to B$, looks like $\hom_p(B;\hom_q(F))\implies\hom_{p+q}(E)$ ^{19}. This is what we’ll use in the below proof.
$\pi_4(S^3)=\zmod2$
For our final application of spectral sequences this post, we’ll compute a nontrivial homotopy group of a sphere. First note that the Hopf fibration $S^1\to S^3\to S^2$ gives $\pi_k(S^3)\simeq\pi_k(S^2)$ for all $k>2$, so last corollary already showed that $\pi_3(S^2)\simeq\Z$. This section, we’ll see that $\pi_4(S^2)\simeq\pi_4(S^3)\simeq\zmod2$. ^{20}
First let $S^3\to K(\Z,3)$ be a map inducing an isomorphism on $\pi_3$. Let $X$ be the homotopy fiber of this map, and let $Y$ be the homotopy fiber of the map $X\to S^3$. Then, $Y\simeq\Omega K(\Z,3)=K(\Z,2)\simeq\CP^\infty$. Furthermore, the long exact sequence of the original fibration $X\to S^3\to K(\Z,3)$ shows that $\pi_k(X)=0$ for $k\le3$ (use that $\pi_3(S^3)\to\pi_3(K(\Z,3))$ is an isomorphism) and that $\pi_4(X)\simeq\pi_4(S^3)$. By Hurewicz, this means that $\hom_4(X)\simeq\pi_4(S^3)$ and we’ll compute this by looking at the Serre spectral sequence (in cohomology, where we have cup products) of the left fibration $\CP^\infty\to X\to S^3$. The $E_3$page of this sequence looks like
Above, $x\in\hom^3(S^3)$ is a generator as is $a\in\hom^2(\CP^\infty)$. The cup product in cohomology let’s us use these to write down generators for the cohomology groups $\hom^p(S^3;\hom^q(\CP^\infty))$. All the groups in odd numbered rows are 0 as are all groups in columns $p\not\in{0,3}$. The nontrivial differentials are $d_3^{0,2q}:\Z a^q\to\Z a^{q1}x$ where $q\ge1$. Since $X$ is 3connected, we have $\hom^k(X)=0$ for all $k\le3$, and so $d_3^{0,2}$ must be an isomorphism, i.e. (we can choose $x$ s.t.) $da=x$ where by $da$ we really mean $d_3^{0,2}(a)$, but don’t want to write that every time. Now, using the fact that $d$ is a derivation, we have ^{21}
Thus, the differential $d_3^{0,2q}$ is really just multiplication by $q$. Since this is the last page with nontrivial differentials, we get that, on the $E_\infty=E_4$page, the only nonzero object on the $n=5$ diagonal is $E_\infty^{3,2}\simeq\zmod2$ and that the $n=4$ diagonal is 0 everywhere. Thus, $\hom^4(X)=0$ and $\hom^5(X)=\zmod2$. In general, we get $\hom^{2k}(X)=0$ and $\hom^{2k+1}(X)=\zmod k$. Because these groups all have rank $0$, universal coefficients tells us that
and so ^{22} we get that
In particular, $\pi_4(S^2)\simeq\pi_4(S^3)\simeq\hom_4(X)\simeq\zmod2$.
Exercises ^{23}
Sepctral Sequence of a Double Complex
At this point, things start to slow down. We move away from topology and back into pure homological algebra in order to construct another type of spectral sequence. We won’t see examples of this one in this post, but we might in future posts.
Fix once again some ambient abelian category $\msA$, and let $A^{\bullet,\bullet}\in\CoCh(\CoCh(A))$ be some double complex. That is to say, we have a collection $A^{p,q}\in\msA$ of objects of $\msA$ with commuting horizontal $d^{p,q}:A^{p,q}\to A^{p+1,q}$ and vertical $\del^{p,q}:A^{p,q}\to A^{p,q+1}$ differentials.
Complexes are good for defining (co)homology, and the usual way we get (co)homology from a double complex is by passing to its total complex ^{24}.
Directly computing the cohomology of the total complex can be tricky, but luckily it comes with a natural filtration, and hence a natural spectral sequence ^{25}. This filtration is
From this, we get a spectral sequence $E_r^{p,q}$ which, under mild assumptions (e.g. for each $n\in\Z$ there are only finitely many nonzero $A^{p,q}$ with $p+q=n$), converges to $\hom^{p+q}(\Tot(A^{\bullet,\bullet}))$. We claim that the $E_2$page of this sequence is given by the “naive double cohomology”
given by taking vertical cohomology followed by horizontal cohomology. One we show this, we’ll call it a day. The $0$th page is given by
with differential $d_0:E_0^{p,q}\to E_0^{p,q+1}$ equal to the vertical differential $\del$. Hence,
Any $[a]\in E_1^{p,q}$ is represented by some $a\in A^{p,q}$ with $\del a=0$, so the differential $d_1:E_1^{p,q}\to E_1^{p+1,q}$ on the $E_1$page acts on these representatives just like $d$ does. Thus, the $E_2$page is indeed
as claimed.

Replace “bird” with something less illdefined if you want ↩

While writing this, I repeatedly felt the need to add examples/exercises, so things quickly became more hands on than I first planned ↩

And because singular (co)homology is one of the few things I know I never want to bother developing on this blog (along with the basics of linear algebra, most of pointset topology, and maybe some other stuff) ↩

Just apply the universal property to $\alpha:=\mu\circ a=\mu\circ b$. ↩

For intuition, in $\mathrm{Ab}$, monomorphisms are injective maps, so this is saying every subgroup should be a kernel (i.e. all quotients exist). Similarly, epimorphisms are surjective maps, so the image of every map should be the domain modulo some subgroup (i.e. first isomorphism) ↩

If you’re reading this post, you should already know what these are. I’m just defining them here because I want this first section to stand alone as an introduction to abelian categories regardless of the fact that it fits into the broader context of this whole post. ↩

I’ll likely say chain when I mean to say cochain many times below ↩

From now on, I’ll start being a little more sloppy with my $d$’s, not always explitily giving them their upper indexing. ↩

There’s some dubious reasoning here, but I’m only trying to build intuition so that’s fine ↩

Don’t read the proof of this; do it for yourself. The only reason I have it typed up here is that I’ve never worked through it on my own before this. ↩

This filtration always works anytime you can write $X$ as a direct limit of spaces $X=\dirlim X^p$, and is the one I alluded to way back in the beginning of this post. ↩

If I were smart, I wouldv’e subtracted 1 when defining the filtration, so that this would read $\hom^{p+q}(X^p,X^{p1})$ instead. ↩

i.e. $\bracks{E_2^{p,q}:p+q=n}$ for some fixed $n$. ↩

Secretely, we need that $X$ is finite (i.e. $X=X^n$ for some $n$) so the filtration is bounded. However, we can always write $X\approx\dirlim X^p$ as a direct limit of finite CWcomplexes, and cohomology commutes with direct limits (i.e. $\pull\hom(\dirlim X^p)=\invlim\pull\hom(X^p)$), so we win by taking limits. ↩

I probably should have mentioned this earlier, but as far as I’m concerned, all topological spaces $X$ are pathconnected and based with basepoint denoted by $* \in X$. ↩

If any of you know a nice way to get footnotes working inside of html blocks, please tell me ↩

Secretly, nonsimply connected spaces don’t exist. ↩

Probably you know this result already, but I’ve never bothered to pay attention to a proof of it before, so it feels worth writing up. ↩

Also worth mentioning that the differential $d^r$ on the $r$th page of a homological spectral sequence has bidegree $(r, r1)$. ↩

By Freudenthal suspension, we actually get the stronger result that $\pi_{n+1}(S^n)\cong\zmod2$ for all $n\ge3$. ↩

$a$ and $da$ commute because $a$ lives in even degree. Remember that $ab=(1)^{\deg(a)\deg(b)}ba$ in general when taking cup products ↩

I think you may need to use that $\hom_{k1}(X)$ is finitely generated and so looks like $\Z^r\oplus\zmod{p_1^{k_1}}\oplus\dots\oplus\zmod{p_g^{k_g}}$ and then use that Ext splits over direct sums in the first factor ↩

It feels weird having an “exercises” (sub)section, but I didn’t want to give the impression that these were under the Hurewicz (sub)heading ↩

Unimportant technical detail: in general, abelian categories are only required to have finite direct sums (“biproducts”). However, if you have a really big double complex (i.e. $A^{p,q}\neq0$ even when $p<0$ and/or $q<0$), then formation of the total complex can involve infinite direct sums, and so may not always be possible. ↩

Actually, two natural filtrations/spectral sequences, but I’ll only mention one of them ↩