MATH-447 · Lesson 11 of 12 · 29 min

Covering spaces and the Seifert–van Kampen theorem

The computation of \(\pi_1(S^1)\) in lesson 10 rested on one structure: the map \(p : \mathbb{R} \to S^1\) under which small arcs of the circle have preimages that are disjoint copies of themselves. Maps with this property are called covering maps, and the same lifting arguments work for all of them. This lesson develops the theory of covering spaces, uses it to compute the fundamental group of the projective plane, and then introduces the second great computational tool, the Seifert–van Kampen theorem, which computes the fundamental group of a space glued from simpler pieces. Together they compute the fundamental groups of every space in the course, including the surfaces classified in lesson 12.

Covering maps

Definition. A continuous surjection \(p : E \to B\) is a covering map if every point of \(B\) has an open neighborhood \(U\) that is evenly covered: \(p^{-1}(U)\) is a disjoint union of open sets \(V_\alpha\), the sheets over \(U\), each mapped homeomorphically onto \(U\) by \(p\). The space \(E\) is a covering space of \(B\), and for \(b \in B\) the set \(p^{-1}(b)\) is the fiber over \(b\). Each fiber is a discrete subspace of \(E\), and if \(B\) is connected all fibers have the same cardinality, called the number of sheets.

Examples. (1) \(p : \mathbb{R} \to S^1\), \(p(s) = e^{2\pi i s}\), with fibers \(s + \mathbb{Z}\). (2) For \(n \ge 1\), the map \(S^1 \to S^1\), \(z \mapsto z^n\), an \(n\)-sheeted covering. (3) \(\mathbb{R}^2 \to T^2 = S^1 \times S^1\), \((s, t) \mapsto (e^{2\pi i s}, e^{2\pi i t})\), a product of coverings. (4) The quotient map \(S^2 \to \mathbb{RP}^2\) identifying antipodal points, a 2-sheeted covering: a small open cap \(U\) on the sphere and its antipode \(-U\) are disjoint and both map homeomorphically onto the image of \(U\). (5) The map \(\mathbb{R} \times \{1, 2\} \to \mathbb{R}\), a trivial 2-sheeted covering. A local homeomorphism need not be a covering: the restriction of \(p\) to the interval \((0, 3/2)\) maps onto the circle and is a local homeomorphism, but the point 1 of the circle has no evenly covered neighborhood.

Theorem (lifting). Let \(p : E \to B\) be a covering map and \(e_0 \in p^{-1}(b_0)\). (a) Every path in \(B\) starting at \(b_0\) has a unique lift to \(E\) starting at \(e_0\). (b) Every map \(F : [0, 1]^2 \to B\) with \(F(0, 0) = b_0\) has a unique lift starting at \(e_0\), and if \(F\) is a path homotopy so is its lift.

The proofs are word for word those of lesson 10, with the evenly covered sets of \(p\) in place of the two arcs of the circle, and the Lebesgue number lemma providing the subdivision.

The lifting correspondence

Let \(p : E \to B\) be a covering with \(p(e_0) = b_0\). For a loop \(\gamma\) at \(b_0\), let \(\tilde\gamma\) be its lift starting at \(e_0\), and define \(\phi([\gamma]) = \tilde\gamma(1)\), a point of the fiber \(p^{-1}(b_0)\). By homotopy lifting, path homotopic loops have path homotopic lifts, which end at the same point, so \(\phi\) is well defined on \(\pi_1(B, b_0)\).

Theorem. (a) If \(E\) is path-connected, \(\phi\) is surjective. (b) If \(E\) is simply connected, \(\phi\) is a bijection between \(\pi_1(B, b_0)\) and the fiber \(p^{-1}(b_0)\). (c) The induced homomorphism \(p_* : \pi_1(E, e_0) \to \pi_1(B, b_0)\) is injective.

Proof. (a) For \(e_1\) in the fiber, choose a path \(\alpha\) in \(E\) from \(e_0\) to \(e_1\). Then \(\gamma = p \circ \alpha\) is a loop at \(b_0\), and \(\alpha\) is its lift from \(e_0\), so \(\phi([\gamma]) = e_1\). (b) Suppose \(\phi([\gamma]) = \phi([\delta])\), so the lifts \(\tilde\gamma\) and \(\tilde\delta\) end at the same point. Then \(\tilde\gamma \cdot \bar{\tilde\delta}\) is a loop in the simply connected \(E\), so \(\tilde\gamma \simeq_p \tilde\delta\) by a path homotopy \(\tilde F\), and \(p \circ \tilde F\) is a path homotopy from \(\gamma\) to \(\delta\). (c) If \(p_*[\tilde h]\) is trivial for a loop \(\tilde h\) at \(e_0\), let \(F\) be a path homotopy from \(p \circ \tilde h\) to the constant loop. Its lift starting at \(e_0\) is a path homotopy from the lift of \(p \circ \tilde h\), which is \(\tilde h\) by uniqueness, to the lift of the constant loop, which is constant. So \([\tilde h]\) is trivial.

Applied to \(\mathbb{R} \to S^1\), part (b) recovers the bijection \(\pi_1(S^1) \to \mathbb{Z}\) of lesson 10. Applied to the covering \(S^2 \to \mathbb{RP}^2\), with \(S^2\) simply connected by lesson 9, it gives a bijection between \(\pi_1(\mathbb{RP}^2)\) and a two-point fiber. A group with two elements is \(\mathbb{Z}/2\).

Theorem. \(\pi_1(\mathbb{RP}^2) \cong \mathbb{Z}/2\). The nontrivial element is represented by the image of a path on the sphere joining a point to its antipode, such as half of a great circle.

The loop representing the nontrivial element is not null-homotopic, but its square is: going twice around corresponds to a full great circle on the sphere, which contracts there. So \(\mathbb{RP}^2\) is a space with a loop that cannot be shrunk but becomes shrinkable when traversed twice. The same argument gives \(\pi_1(\mathbb{RP}^n) \cong \mathbb{Z}/2\) for all \(n \ge 2\); this group, through the rotation group \(SO(3)\), which is homeomorphic to \(\mathbb{RP}^3\), is behind the belt trick and the fact that a rotation by \(4\pi\) can be undone by a continuous motion while a rotation by \(2\pi\) cannot.

Universal covers and the classification of coverings

More generally, part (c) says that the fundamental group of a covering space embeds as a subgroup \(H = p_*\pi_1(E, e_0)\) of \(\pi_1(B, b_0)\), and one can show that, for \(E\) path-connected, the number of sheets equals the index of \(H\). A simply connected covering space is called a universal cover; for \(S^1\) it is \(\mathbb{R}\), for the torus \(\mathbb{R}^2\), for \(\mathbb{RP}^2\) the sphere. For a universal cover \(\tilde B \to B\), the deck transformations, homeomorphisms \(h : \tilde B \to \tilde B\) with \(p \circ h = p\), form a group isomorphic to \(\pi_1(B)\): the translations by integers for the circle, by \(\mathbb{Z}^2\) for the torus, the antipodal map and the identity for \(\mathbb{RP}^2\).

The classification theorem, which goes back to Poincaré and was given its modern form in the twentieth century, says that if \(B\) is path-connected, locally path-connected and semilocally simply connected, a mild condition satisfied by all manifolds and graphs, then the connected coverings of \(B\), up to isomorphism, correspond to the conjugacy classes of subgroups of \(\pi_1(B)\). This is a Galois correspondence: larger subgroups give coverings with fewer sheets, the trivial subgroup gives the universal cover, and normal subgroups give the regular coverings, whose deck groups act transitively on fibers. The theorem turns questions about spaces into questions about groups, and conversely: every subgroup of a free group is free, the Nielsen–Schreier theorem, has a two-line topological proof via coverings of graphs.

Free groups and free products

To compute fundamental groups of glued spaces one needs groups built by gluing too. The free group \(F(a, b)\) on two generators consists of the reduced words in the letters \(a, a^{-1}, b, b^{-1}\), those containing no adjacent pair \(aa^{-1}, a^{-1}a, bb^{-1}, b^{-1}b\), with multiplication by concatenation followed by cancellation. Every word reduces to a unique reduced word, so the multiplication is well defined. The free product \(G * H\) of two groups is defined in the same way, with words alternating between nonidentity elements of \(G\) and of \(H\); thus \(F(a, b) = \mathbb{Z} * \mathbb{Z}\). A group presentation \(\langle a, b \mid r_1, r_2, \ldots \rangle\) denotes the quotient of the free group on the generators by the smallest normal subgroup containing the relators \(r_i\). For example \(\langle a, b \mid aba^{-1}b^{-1} \rangle \cong \mathbb{Z}^2\) and \(\langle a \mid a^2 \rangle \cong \mathbb{Z}/2\).

The Seifert–van Kampen theorem

Theorem (Seifert–van Kampen). Let \(X = U \cup V\) with \(U, V\) open, and \(U\), \(V\) and \(U \cap V\) path-connected, and let \(x_0 \in U \cap V\). Let \(i_1 : U \cap V \to U\) and \(i_2 : U \cap V \to V\) be the inclusions. Then the homomorphism \(\pi_1(U, x_0) * \pi_1(V, x_0) \to \pi_1(X, x_0)\) induced by the inclusions is surjective, and its kernel is the normal subgroup generated by the elements \((i_1)_*(\omega) (i_2)_*(\omega)^{-1}\) for \(\omega \in \pi_1(U \cap V, x_0)\). In short, \(\pi_1(X)\) is the free product of \(\pi_1(U)\) and \(\pi_1(V)\) amalgamated over \(\pi_1(U \cap V)\).

Herbert Seifert proved a version in 1931 and Egbert van Kampen gave the general form in 1933. Proof of surjectivity. Let \(\gamma\) be a loop at \(x_0\). By the Lebesgue number lemma there is a subdivision \(0 = s_0 < \cdots < s_n = 1\) such that each piece \(\gamma_i = \gamma|_{[s_{i-1}, s_i]}\), reparametrized to \([0, 1]\), lies in \(U\) or in \(V\). Merge adjacent pieces lying in the same set, so that each division point \(\gamma(s_i)\) lies in \(U \cap V\). For each \(i\) choose a path \(h_i\) in \(U \cap V\) from \(x_0\) to \(\gamma(s_i)\), possible because \(U \cap V\) is path-connected, with \(h_0\) and \(h_n\) constant. Then \([\gamma] = [h_0 \cdot \gamma_1 \cdot \bar h_1] [h_1 \cdot \gamma_2 \cdot \bar h_2] \cdots [h_{n-1} \cdot \gamma_n \cdot \bar h_n]\), since the inserted \(\bar h_i \cdot h_i\) cancel. Each bracket is a loop at \(x_0\) lying entirely in \(U\) or entirely in \(V\). So \([\gamma]\) is a product of images of elements of \(\pi_1(U)\) and \(\pi_1(V)\).

Idea of the proof of injectivity. The elements \((i_1)_*(\omega)(i_2)_*(\omega)^{-1}\) clearly lie in the kernel, since a loop in \(U \cap V\) gives the same element of \(\pi_1(X)\) whether regarded in \(U\) or in \(V\). Conversely, suppose a word \(w\) in loops from \(U\) and \(V\) becomes trivial in \(\pi_1(X)\), via a null-homotopy \(F : [0, 1]^2 \to X\). Subdivide the square into small squares each mapped into \(U\) or \(V\), using the Lebesgue number lemma again, and connect each grid vertex to \(x_0\) by a path in the appropriate intersection. Then the null-homotopy can be pushed across the grid one small square at a time; each move changes the word only by a homotopy inside \(U\) or inside \(V\), or by rewriting a loop in \(U \cap V\) from its \(U\) form to its \(V\) form. This shows \(w\) lies in the normal subgroup generated by the relations. The bookkeeping is detailed but contains no new idea.

Applications

Spheres. For \(n \ge 2\), cover \(S^n\) by \(U = S^n \setminus \{N\}\) and \(V = S^n \setminus \{S\}\), each homeomorphic to \(\mathbb{R}^n\), with intersection homeomorphic to \(\mathbb{R}^n \setminus \{0\}\), path-connected for \(n \ge 2\). Both pieces are simply connected, so \(\pi_1(S^n)\) is trivial, a second proof of the result of lesson 9. For \(n = 1\) the intersection is two arcs, not path-connected, and the theorem does not apply, as it must not.

The figure eight. Let \(X = S^1 \vee S^1\) be two circles joined at a point \(x_0\). Take \(U\) to be the first circle with an open arc of the second around \(x_0\), and \(V\) symmetrically; each deformation retracts onto its circle, and \(U \cap V\) is a contractible cross around \(x_0\). So \(\pi_1(S^1 \vee S^1) \cong \mathbb{Z} * \mathbb{Z} = F(a, b)\), the free group on the two loops. In particular it is not abelian: the loops \(ab\) and \(ba\) are not homotopic. The plane minus two points deformation retracts onto a figure eight, so its fundamental group is also free on two generators, and by the same argument the wedge of \(n\) circles, or the plane minus \(n\) points, has fundamental group free on \(n\) generators.

On the left, a figure eight made of two loops labeled a and b meeting at a point x0. In the middle, the figure eight is split into two open pieces U and V, each a circle with a short whisker of the other circle, overlapping in a small cross around x0. On the right, a connected two-sheeted covering of the figure eight: two points joined by two arcs labeled b and b, with a loop labeled a at each point.
The figure eight, its decomposition for the Seifert–van Kampen theorem, and one of its connected double covers

Attaching a disc. If \(X\) is path-connected and a closed disc \(D^2\) is glued to \(X\) along a loop \(\alpha : S^1 \to X\), the resulting space \(Y\) has \(\pi_1(Y) \cong \pi_1(X)/N\), where \(N\) is the normal subgroup generated by \([\alpha]\). To see this, take \(U\) the open disc and \(V\) the space minus the center of the disc; \(V\) deformation retracts onto \(X\), \(U\) is simply connected, and \(U \cap V\) is an open annulus with fundamental group \(\mathbb{Z}\) generated by a loop going once around, which maps to \([\alpha]\) in \(V\) and to 1 in \(U\). So attaching a disc kills exactly the loop along which it is attached.

Surfaces from a square. The torus is the figure eight with a disc attached along the loop \(aba^{-1}b^{-1}\): after gluing the edges of the square of lesson 4, the four corners become one point and the edges two loops \(a\) and \(b\), and the interior of the square is a disc attached along the boundary word. So \(\pi_1(T^2) \cong \langle a, b \mid aba^{-1}b^{-1} \rangle \cong \mathbb{Z}^2\), agreeing with the product computation of lesson 9. In the same way the Klein bottle has \(\pi_1 \cong \langle a, b \mid abab^{-1} \rangle\), a nonabelian group, and the projective plane, whose square has word \(abab\), gives \(\langle a, b \mid abab \rangle\); since the corners of that square glue to two points rather than one, a more careful count shows it reduces to \(\langle c \mid c^2 \rangle \cong \mathbb{Z}/2\), matching the covering space computation. Lesson 12 applies the method to every closed surface.

Experiments

The program reduces words in a free group, confirms that the commutator \(aba^{-1}b^{-1}\) is a nontrivial reduced word, so the figure eight has a nonabelian fundamental group, and counts the connected coverings of the figure eight with 2 and 3 sheets by counting transitive actions of the free group on a fiber. It also computes abelianizations of surface group presentations, a preview of lesson 12, by putting the relation matrix into diagonal form over the integers.

Free group words, counting covers of the figure eight, and abelianized surface groups
from itertools import permutations, product
from math import factorial

def reduce(word):
    out = []
    for x in word:
        if out and out[-1] == x.swapcase():
            out.pop()
        else:
            out.append(x)
    return "".join(out)

print("reduce('abBAab') =", repr(reduce("abBAab")))
print("commutator abAB reduced:", reduce("abAB"), "| ab = ba in the free group?", reduce("ab" + "AB") == "")

def transitive(perms, n):
    seen, stack = {0}, [0]
    while stack:
        x = stack.pop()
        for p in perms:
            for y in (p[x], p.index(x)):
                if y not in seen:
                    seen.add(y)
                    stack.append(y)
    return len(seen) == n

for n in [1, 2, 3, 4]:
    S = list(permutations(range(n)))
    t = sum(transitive((s, u), n) for s, u in product(S, S))
    print(f"{n}-sheeted connected covers of the figure eight (with a chosen base sheet): {t // factorial(n - 1)}")

def smith_diagonal(M):
    """diagonal entries of the Smith normal form of an integer matrix (rows = relations)."""
    M = [row[:] for row in M]
    rows, cols = len(M), len(M[0])
    diag = []
    r = 0
    for c in range(cols):
        if r >= rows:
            break
        while True:
            entries = [(abs(M[i][j]), i, j) for i in range(r, rows) for j in range(c, cols) if M[i][j]]
            if not entries:
                return diag
            _, i, j = min(entries)
            M[r], M[i] = M[i], M[r]
            for row in M:
                row[c], row[j] = row[j], row[c]
            p = M[r][c]
            done = True
            for i in range(r + 1, rows):
                q = M[i][c] // p
                M[i] = [a - q * b for a, b in zip(M[i], M[r])]
                done = done and M[i][c] == 0
            for j in range(c + 1, cols):
                q = M[r][j] // p
                for row in M:
                    row[j] -= q * row[c]
                done = done and M[r][j] == 0
            if done:
                break
        diag.append(abs(M[r][c]))
        r += 1
    return diag

def abelianize(gens, relators):
    M = [[sum(1 if x == g else -1 if x == g.upper() else 0 for x in rel) for g in gens] for rel in relators]
    d = smith_diagonal(M)
    free = len(gens) - len([x for x in d if x != 0])
    torsion = [x for x in d if x > 1]
    return f"Z^{free}" + "".join(f" + Z/{t}" for t in torsion)

print("torus  <a, b | abAB>:", abelianize("ab", ["abAB"]))
print("Klein  <a, b | abaB>:", abelianize("ab", ["abaB"]))
print("RP2    <c | cc>:", abelianize("c", ["cc"]))
print("genus 2 <a, b, c, d | abABcdCD>:", abelianize("abcd", ["abABcdCD"]))
Output
reduce('abBAab') = 'ab'
commutator abAB reduced: abAB | ab = ba in the free group? False
1-sheeted connected covers of the figure eight (with a chosen base sheet): 1
2-sheeted connected covers of the figure eight (with a chosen base sheet): 3
3-sheeted connected covers of the figure eight (with a chosen base sheet): 13
4-sheeted connected covers of the figure eight (with a chosen base sheet): 71
torus  <a, b | abAB>: Z^2
Klein  <a, b | abaB>: Z^1 + Z/2
RP2    <c | cc>: Z^0 + Z/2
genus 2 <a, b, c, d | abABcdCD>: Z^4

Reduced words multiply by cancellation, and the commutator does not cancel, so \(ab \ne ba\) in the free group. The counts 1, 3, 13, 71 of connected coverings with a chosen base sheet are the numbers of subgroups of index 1, 2, 3, 4 in the free group of rank 2, as the classification theorem predicts; the formula divides the number of transitive pairs of permutations by \((n - 1)!\), the number of ways to relabel the sheets while fixing the base sheet. The abelianized groups are \(\mathbb{Z}^2\) for the torus, \(\mathbb{Z} \oplus \mathbb{Z}/2\) for the Klein bottle, \(\mathbb{Z}/2\) for the projective plane and \(\mathbb{Z}^4\) for the surface of genus 2. Different abelianizations prove the groups are different, and hence that the surfaces are not homeomorphic.

Worked problem

Fundamental group of the plane minus two points

Compute \(\pi_1(\mathbb{R}^2 \setminus \{p, q\})\) with \(p = (-1, 0)\) and \(q = (1, 0)\).

Show solution
  1. Let \(U = \{x < 1/2\} \setminus \{p\}\) and \(V = \{x > -1/2\} \setminus \{q\}\). Both are open, and \(U \cup V\) is the whole twice-punctured plane.
  2. Each of \(U\) and \(V\) is a half plane with one point removed, which deformation retracts onto a circle around that point, so each has fundamental group \(\mathbb{Z}\).
  3. The intersection \(U \cap V\) is the strip \(-1/2 < x < 1/2\), which is convex, so simply connected and path-connected.
  4. By the Seifert–van Kampen theorem with trivial amalgamation, \(\pi_1 \cong \mathbb{Z} * \mathbb{Z}\).

Answer: The plane minus two points has fundamental group free on two generators, one loop around each point.

Common mistakes

  • MistakeCalling every local homeomorphism a covering map.

    InsteadThe restriction of \(\mathbb{R} \to S^1\) to \((0, 3/2)\) is a local homeomorphism onto the circle but not a covering.

  • MistakeApplying Seifert–van Kampen with a disconnected intersection.

    InsteadThe theorem needs the intersection to be path-connected; for the circle covered by two arcs the intersection has two pieces and the conclusion would be wrong.

  • MistakeForgetting the normal closure in a presentation.

    InsteadRelators generate a normal subgroup; quotienting by the subgroup they generate is not enough.

  • MistakeThinking a free group is abelian.

    InsteadIn \(F(a, b)\) the word \(aba^{-1}b^{-1}\) is reduced and nontrivial.

  • MistakeComputing the projective plane from its square word as if all corners were one point.

    InsteadThe corners of the abab square glue to two points; account for both or use the covering by the sphere.

Summary and key terms

  • A covering map has evenly covered neighborhoods; paths and homotopies lift uniquely.
  • Lifting loops gives a surjection from the fundamental group to a fiber, bijective when the covering space is simply connected.
  • The sphere double covers the projective plane, so the projective plane has fundamental group of order 2.
  • Connected coverings correspond to conjugacy classes of subgroups of the fundamental group; the universal cover corresponds to the trivial subgroup.
  • Seifert–van Kampen computes the fundamental group of a union of open sets as an amalgamated free product.
  • The figure eight has free fundamental group on two generators, and attaching a disc along a loop kills that loop, which gives the groups of surfaces.
covering map
A continuous surjection with every point of the base having an evenly covered neighborhood.
fiber
The preimage of a point under a covering map.
universal cover
A simply connected covering space.
deck transformation
A homeomorphism of a covering space commuting with the covering map.
free group
The group of reduced words in some generators and their inverses.
free product
The group of reduced alternating words in two groups.
presentation
Generators and relators describing a group as a quotient of a free group.

Practice problems

Work each problem on paper first, then reveal the answer to check.

  1. Show that \(z \mapsto z^3\) is a covering map of the circle and find \(p_*(\pi_1)\).

    Show answer

    Small arcs have three disjoint preimage arcs; \(p_*\) is multiplication by 3 on \(\mathbb{Z}\), with image \(3\mathbb{Z}\) of index 3, matching three sheets.

  2. What is the universal cover of the infinite cylinder \(S^1 \times \mathbb{R}\)?

    Show answer

    \(\mathbb{R} \times \mathbb{R}\), via \((s, t) \mapsto (e^{2\pi i s}, t)\).

  3. Compute \(\pi_1\) of the wedge of three circles.

    Show answer

    The free group on three generators, by induction with Seifert–van Kampen.

  4. Use a covering to show that \(\pi_1(T^2) \cong \mathbb{Z}^2\).

    Show answer

    \(\mathbb{R}^2 \to T^2\) is a covering with simply connected total space, so \(\pi_1(T^2)\) is in bijection with the fiber \(\mathbb{Z}^2\), and the group operation corresponds to addition of endpoints, as for the circle.

  5. Show that \(\langle a, b \mid aba^{-1}b^{-1} \rangle\) is abelian.

    Show answer

    The relation says \(ab = ba\), and a group generated by two commuting elements is abelian.

  6. Why is the Klein bottle group nonabelian?

    Show answer

    The relation \(abab^{-1} = 1\) says \(bab^{-1} = a^{-1}\). Map the group to the symmetries of the integers, sending \(a\) to the translation \(n \mapsto n + 1\) and \(b\) to the reflection \(n \mapsto -n\). Conjugating the translation by the reflection gives \(n \mapsto n - 1\), the inverse translation, so the relation holds and the map is a homomorphism. Its image contains a translation and a reflection that do not commute, so the group itself is not abelian.

Lesson quiz · 5 questions

Score 60% or more to complete this lesson.

Take the quiz