Where we are: a working theory you cannot yet compute
By now you have a genuine homology theory in hand. Guide 1 built singular homology from continuous maps of simplices, packaged the result as a chain complex with a boundary operator satisfying d ∘ d = 0, and proved it is functorial and homotopy-invariant. Guide 2 added the power tools: the long exact sequence of a pair, excision, and Mayer-Vietoris, which let you break a space into pieces and stitch the homology of the pieces back together. Everything works. There is just one problem, and it is fatal in practice.
The singular chain group C_n(X) is free abelian on every continuous map from the standard n-simplex into X. For the circle S^1 that is already uncountably many generators in each degree; for a torus it is worse. You cannot row-reduce an uncountable matrix. Mayer-Vietoris rescues a few small spaces by induction, but it is a clever workaround, not a method you would hand a student and say 'now compute H_*(genus-3 surface).' We need a chain complex that is small — ideally finite — yet computes the very same groups. That complex is cellular homology, and the bridge to it is the CW structure.
CW complexes: building spaces one cell at a time
A CW complex is a space assembled by gluing cells of increasing dimension. Start with a discrete set of points, the 0-cells. To build the 1-skeleton, attach 1-cells (intervals) by gluing their two endpoints to existing 0-cells. To build the 2-skeleton, attach 2-cells (disks) by gluing each disk's boundary circle to the 1-skeleton via a continuous attaching map. Continue: an n-cell is a copy of the open n-disk glued in along its boundary (n−1)-sphere by an attaching map into the (n−1)-skeleton. The letters stand for Closure-finite and Weak topology, two technical conditions ensuring the result is well-behaved; for a finite complex they hold automatically. The point is that a CW complex records a space as a finite recipe of cells and attaching maps.
Two small examples make the idea concrete and will carry the rest of the guide. The circle S^1 is the cheapest interesting CW complex: one 0-cell v and one 1-cell e, with both ends of e attached to the single vertex v — a point with a loop glued on. The torus T^2 = S^1 × S^1 is the famous one: one 0-cell, two 1-cells a and b, and a single 2-cell whose boundary square is glued along the word a b a^{-1} b^{-1}. That last attaching word is the whole geometry of the torus compressed into four letters; it says 'go around a, then b, then back along a, then back along b,' which is exactly how you identify opposite edges of a square to make a doughnut.
The cellular chain complex: one generator per cell
Here is the upgrade. The cellular chain group C_n^{CW}(X) is free abelian on the n-cells of X — finitely many generators, not uncountably many maps. The deep input, proved using the long exact sequences of the skeletal pairs from guide 2, is that this small group is isomorphic to the relative homology H_n(X^n, X^{n−1}) of the n-skeleton modulo the (n−1)-skeleton, and that all the 'wrong-degree' relative groups vanish. Those two facts are exactly what make the construction legal: they let you assemble a genuine chain complex out of cell counts. The resulting cellular homology is, by a theorem, isomorphic to singular homology — same groups, dramatically smaller bookkeeping.
What is the boundary map of this small complex? It is the cellular boundary d_n, and it is computed by the degree formula. To find the coefficient of an (n−1)-cell f in the boundary of an n-cell e, take the attaching map of e (a map from S^{n−1} into the (n−1)-skeleton), follow it by the quotient that collapses everything except the cell f to a point, and you get a self-map of the (n−1)-sphere. The coefficient is the degree of that map — the signed number of times it wraps around. So the cellular boundary records, with signs, how each higher cell's boundary winds around each lower cell. The whole topology is now encoded in a finite matrix of integers. Let us run this for the torus from scratch; the same five moves compute every CW complex you will meet, and the only nontrivial datum is the attaching word a b a^{-1} b^{-1}.
- List the cells by dimension and write the chain groups. The torus has one 0-cell, two 1-cells, one 2-cell, so C_0 = Z, C_1 = Z + Z, C_2 = Z, and C_n = 0 for n ≥ 3.
- Compute d_1 by the degree formula. Each 1-cell (a or b) has both endpoints attached to the single vertex v, so its boundary is v − v = 0. Hence d_1 = 0.
- Compute d_2 by reading the attaching word. As the boundary circle of the 2-cell traverses a b a^{-1} b^{-1}, the cell a is crossed once forward (+1) and once backward (−1), netting degree 0; likewise b nets 0. So d_2 = 0 as well.
- Take kernels and images. Since every boundary map is zero, ker d_n is the whole group and im d_n is trivial in every degree.
- Read off H_n = ker d_n / im d_{n+1}. With all boundaries zero this is just the chain group: H_0 = Z, H_1 = Z + Z, H_2 = Z. The single H_2 = Z is the fundamental class — the 2-cell that no boundary kills, the 'orientation' of the torus.
Contrast this with the Klein bottle, whose only difference is the attaching word a b a b^{-1}. Now the 2-cell crosses b once forward and once backward (net degree 0 onto b), but crosses a forward twice, giving degree 2 onto a. The cellular boundary d_2 sends the 2-cell to 2a, and that single coefficient of 2 is the entire reason the Klein bottle has 2-torsion in its integral H_1 and a vanishing H_2. One letter in the attaching word, one integer in the matrix, and the topology flips from orientable to non-orientable. That sensitivity is exactly what makes the degree formula worth its weight.
Betti numbers: counting holes in each dimension
Once you have the groups H_n(X), the Betti number b_n is their free rank — the number of copies of Z, ignoring any finite torsion. Concretely, b_n = dim of H_n(X; Q), the dimension over the rationals, which is the cleanest way to define it because tensoring with Q kills torsion automatically. The slogan, honest enough to keep: b_n counts the n-dimensional 'holes.' For the torus the Betti numbers are b_0 = 1, b_1 = 2, b_2 = 1: one connected piece, two independent loops (the two circles a and b you cannot contract), and one 2-dimensional void enclosed.
A caution worth stating plainly, because the slogan oversells. Betti numbers see only the free part; they are blind to torsion. The Klein bottle and the cylinder both have b_0 = 1, b_1 = 1, b_2 = 0 over the rationals, yet they are not homotopy equivalent — the Klein bottle hides a Z/2 in its integral H_1 that the rational Betti numbers cannot detect. So 'b_1 = 1' does not mean 'one circle's worth of H_1'; it means 'one free circle's worth, plus possibly invisible torsion.' If you ever need to distinguish such spaces, you must keep the full integral homology, not just the Betti numbers. Simplify with the hole-counting picture, but never forget what it discards.
The Euler characteristic: an old friend, now a theorem
You met V − E + F = 2 for convex polyhedra in Volume I — the Euler polyhedron formula. Cellular homology promotes it from a curiosity to a structural theorem. Define the Euler characteristic as the alternating sum of cell counts, χ(X) = c_0 − c_1 + c_2 − ..., where c_n is the number of n-cells. For a polyhedron's surface that is exactly vertices minus edges plus faces. The miracle is that this alternating sum is a topological invariant: it does not depend on which CW structure you chose, even though the individual cell counts wildly do.
Why is it invariant? Because of a clean piece of linear algebra applied to the chain complex: for any chain complex of finitely generated groups, the alternating sum of the ranks of the chain groups equals the alternating sum of the ranks of the homology groups. In symbols, χ(X) = c_0 − c_1 + c_2 − ... = b_0 − b_1 + b_2 − ..., the alternating sum of the Betti numbers. The left side depends on the CW structure; the right side depends only on the homology, which is intrinsic to the space. Equating them is what forces the cell-count version to be invariant. For the torus: 1 − 2 + 1 = 0 from cells, and 1 − 2 + 1 = 0 from Betti numbers — the Euler characteristic of the torus is 0, consistent with every triangulation you could ever draw on it.
What this unlocks, and what comes next
Cellular homology is the workhorse of the rest of the subject. With it you compute closed surfaces in one line: an orientable surface of genus g has χ = 2 − 2g (so the second 1-cell count grows with the holes), so a sphere has χ = 2 (matching V − E + F = 2), the torus has χ = 0, and a genus-2 surface has χ = −2. Run the same machine on spheres S^n (two cells, χ = 1 + (−1)^n), on real and complex projective spaces, on products via the Künneth pattern — all become finite linear algebra. The relation χ = b_0 − b_1 + b_2 − ... also means: if you know the Euler characteristic and some of the Betti numbers, you can sometimes deduce the rest.
Two honest cautions before you climb on. First, cellular homology is a computational shortcut, not a foundation: it agrees with singular homology by a theorem, and that agreement (provable from the Eilenberg-Steenrod axioms you saw framed in guide 2) is what licenses you to use the small complex while trusting the homotopy-invariance proved in the large one. Do not mistake the convenient model for the definition. Second, the Euler characteristic is a powerful but coarse invariant — it is a single integer, and many genuinely different spaces share it (the torus and the Klein bottle both have χ = 0). It constrains the Betti numbers; it does not determine them.
A clean way to hold this guide in memory: homology is defined by singular chains but computed by cells. The CW structure shrinks an uncountable complex to a finite matrix of integers via the degree formula; Betti numbers read off its free ranks; and the alternating sum of either the cell counts or the Betti numbers gives the one invariant integer χ. Guide 4 will dualize this entire picture — replacing chains by cochains to build cohomology, where the same cells now carry a ring structure through the cup product, and the Euler characteristic reappears as a self-intersection count.