MATH-447 · Lesson 10 of 12 · 28 min
The fundamental group of the circle and its applications
Lesson 9 built the fundamental group and showed that convex sets and spheres of dimension at least 2 are simply connected. So far no space has been shown to have a nontrivial fundamental group. This lesson proves the central computation of the subject, \(\pi_1(S^1) \cong \mathbb{Z}\), by unwrapping the circle onto the real line, and then harvests its consequences: the Brouwer fixed point theorem in the plane, the fundamental theorem of algebra, the Borsuk–Ulam theorem in dimension 2 and the fact that the plane is not homeomorphic to any higher-dimensional Euclidean space.
Unwrapping the circle
Let \(p : \mathbb{R} \to S^1\) be \(p(s) = (\cos 2\pi s, \sin 2\pi s)\). Think of \(\mathbb{R}\) as a helix sitting above the circle, with \(p\) the vertical projection: each point of the circle has infinitely many points above it, one on each turn of the helix, differing by integers. Locally \(p\) is a homeomorphism. If \(U\) is the circle minus one point, then \(p^{-1}(U)\) is a disjoint union of open intervals of length 1, and \(p\) maps each interval homeomorphically onto \(U\). An open set with this property is said to be evenly covered, and the two open sets \(U_+ = S^1 \setminus \{(-1, 0)\}\) and \(U_- = S^1 \setminus \{(1, 0)\}\) are evenly covered and together cover the circle.
Lemma (path lifting). For every path \(\gamma : [0, 1] \to S^1\) with \(\gamma(0) = p(s_0)\), there is a unique path \(\tilde\gamma : [0, 1] \to \mathbb{R}\) with \(\tilde\gamma(0) = s_0\) and \(p \circ \tilde\gamma = \gamma\).
Proof. The sets \(\gamma^{-1}(U_+)\) and \(\gamma^{-1}(U_-)\) form an open cover of the compact metric space \([0, 1]\). By the Lebesgue number lemma there is a subdivision \(0 = t_0 < t_1 < \cdots < t_n = 1\) such that each \(\gamma([t_{i-1}, t_i])\) lies in \(U_+\) or in \(U_-\). Suppose \(\tilde\gamma\) has been defined on \([0, t_{i-1}]\), and \(\gamma([t_{i-1}, t_i]) \subseteq U\), with \(U\) evenly covered. The point \(\tilde\gamma(t_{i-1})\) lies in exactly one of the intervals \(V\) of \(p^{-1}(U)\), and \(p|_V : V \to U\) is a homeomorphism. Define \(\tilde\gamma = (p|_V)^{-1} \circ \gamma\) on \([t_{i-1}, t_i]\). The two definitions agree at \(t_{i-1}\), so by the pasting lemma \(\tilde\gamma\) is continuous on \([0, t_i]\). By induction it is defined on \([0, 1]\). For uniqueness, suppose \(\tilde\gamma'\) is another lift with the same start. On \([t_{i-1}, t_i]\), if the lifts agree at \(t_{i-1}\), then \(\tilde\gamma'([t_{i-1}, t_i])\) is a connected subset of \(p^{-1}(U)\) containing \(\tilde\gamma(t_{i-1}) \in V\), so it lies in the component \(V\), and there it must equal \((p|_V)^{-1} \circ \gamma\). Induction again gives \(\tilde\gamma' = \tilde\gamma\).
Lemma (homotopy lifting). For every continuous \(F : [0, 1] \times [0, 1] \to S^1\) with \(F(0, 0) = p(s_0)\), there is a unique continuous \(\tilde F : [0, 1] \times [0, 1] \to \mathbb{R}\) with \(\tilde F(0, 0) = s_0\) and \(p \circ \tilde F = F\). If \(F\) is a path homotopy, then so is \(\tilde F\).
Proof. The argument is the same with a grid. By the Lebesgue number lemma for the compact square, subdivide it into small squares \(Q_{ij}\), each mapped by \(F\) into \(U_+\) or \(U_-\). Define \(\tilde F\) on the left edge and bottom edge by path lifting, then on the squares one at a time, row by row from the bottom, left to right. When the turn of \(Q_{ij}\) comes, \(\tilde F\) is already defined on the union \(A\) of its left and bottom edges, which is connected, and \(F(A)\) lies in an evenly covered \(U\), so \(\tilde F(A)\) lies in a single interval \(V\) over \(U\); set \(\tilde F = (p|_V)^{-1} \circ F\) on \(Q_{ij}\). The new definition agrees with the old on \(A\), and the pasting lemma keeps \(\tilde F\) continuous. Uniqueness follows from uniqueness of path lifting along each horizontal and vertical segment. If \(F\) is a path homotopy, then \(F(0, t) = \gamma(0)\) for all \(t\), so the edge \(\{0\} \times [0, 1]\) lifts to a path in the discrete set \(p^{-1}(\gamma(0))\); a path in a discrete set is constant. Likewise for the right edge. So \(\tilde F\) keeps both endpoints fixed.
The fundamental group of the circle
Theorem. \(\pi_1(S^1, (1, 0)) \cong \mathbb{Z}\). The isomorphism sends the class of a loop \(\gamma\) to \(\tilde\gamma(1)\), where \(\tilde\gamma\) is the lift of \(\gamma\) starting at 0. The class corresponding to \(n\) is represented by the loop \(\omega_n(s) = (\cos 2\pi n s, \sin 2\pi n s)\), which goes \(n\) times around.
Proof. Define \(\Phi([\gamma]) = \tilde\gamma(1)\). Since \(p(\tilde\gamma(1)) = \gamma(1) = (1, 0)\), the endpoint is an integer. Well defined: if \(\gamma \simeq_p \delta\) by a path homotopy \(F\), its lift \(\tilde F\) starting at 0 is a path homotopy from \(\tilde\gamma\) to \(\tilde\delta\), the lifts being unique, so \(\tilde\gamma(1) = \tilde F(1, 0) = \tilde F(1, 1) = \tilde\delta(1)\). Surjective: the lift of \(\omega_n\) is \(s \mapsto ns\), ending at \(n\). Homomorphism: let \(\tilde\gamma\) end at \(m\) and \(\tilde\delta\) at \(n\). The path \(s \mapsto m + \tilde\delta(s)\) is a lift of \(\delta\) starting at \(m\), since \(p\) is periodic. So the lift of \(\gamma \cdot \delta\) starting at 0 is \(\tilde\gamma\) followed by \(m + \tilde\delta\), and it ends at \(m + n\). Injective: if \(\tilde\gamma(1) = 0\), then \(\tilde\gamma\) is a loop in \(\mathbb{R}\), and the straight-line homotopy \(G(s, t) = (1 - t)\tilde\gamma(s)\) is a path homotopy from it to the constant loop at 0. Then \(p \circ G\) is a path homotopy from \(\gamma\) to the constant loop, so \([\gamma]\) is the identity.
The integer \(\Phi([\gamma])\) is the winding number of the loop, the net number of times it goes around the circle counterclockwise. For a loop \(\gamma\) in the punctured plane, the winding number about the origin is defined as that of \(\gamma/\|\gamma\|\), and since the circle is a deformation retract of the punctured plane, it classifies loops in \(\mathbb{R}^2 \setminus \{0\}\) up to path homotopy. Lesson 9's program computed exactly this number.
For a continuous map \(f : S^1 \to S^1\), the degree \(\deg f\) is the winding number of the loop \(f \circ \omega_1\), after rotating so that \(f(1, 0) = (1, 0)\). Homotopic maps have the same degree, because the winding number is a homotopy invariant of loops in the circle, the rotation varying continuously along the homotopy. In complex notation the map \(z \mapsto z^n\) has degree \(n\), and the antipodal map \(z \mapsto -z\) has degree 1, being a rotation.
No retraction of the disc onto its boundary
Theorem. There is no continuous map \(r : D^2 \to S^1\) with \(r(x) = x\) for all \(x \in S^1\).
Proof. Suppose \(r\) exists and let \(i : S^1 \to D^2\) be the inclusion. Then \(r \circ i = \mathrm{id}_{S^1}\), so \(r_* \circ i_* = \mathrm{id}\) on \(\pi_1(S^1) \cong \mathbb{Z}\). But \(i_*\) maps into \(\pi_1(D^2)\), which is trivial since the disc is convex. So the identity of \(\mathbb{Z}\) factors through the trivial group, which is impossible.
The Brouwer fixed point theorem
Theorem (Brouwer, dimension 2). Every continuous map \(f : D^2 \to D^2\) has a fixed point.
Proof. Suppose \(f(x) \ne x\) for all \(x\). For each \(x\), draw the ray from \(f(x)\) through \(x\) and let \(r(x)\) be the point where it leaves the disc. Explicitly \(r(x) = x + \lambda(x)(x - f(x))\), where \(\lambda(x) \ge 0\) is the larger root of the quadratic equation \(\|x + \lambda(x - f(x))\|^2 = 1\) in \(\lambda\). The quadratic has leading coefficient \(\|x - f(x)\|^2 > 0\), and its value at \(\lambda = 0\) is \(\|x\|^2 - 1 \le 0\), so it has a real nonnegative larger root, given by the quadratic formula; the discriminant is nonnegative because the product of the leading and constant coefficients is at most 0, and the formula depends continuously on \(x\). So \(r\) is continuous. If \(x \in S^1\), the ray from \(f(x)\) through \(x\) leaves the disc at \(x\) itself, so \(r(x) = x\). Thus \(r\) is a retraction of the disc onto its boundary, which the previous theorem forbids.
Brouwer proved the fixed point theorem in all dimensions in 1910 and 1912, although the case of dimension 3 was found earlier by Piers Bohl in 1904. The \(n\)-dimensional proof follows exactly this pattern once one knows that \(S^{n-1}\) is not a retract of \(D^n\), which needs higher homotopy or homology groups. The theorem underlies existence proofs in many fields: John Nash used a fixed point theorem in 1950 to prove that every finite game has an equilibrium in mixed strategies, and economists use it to prove the existence of competitive equilibria. A playful version says that if a map of a city is dropped on the ground within that city, some point on the map lies exactly above the point it represents.
The fundamental theorem of algebra
Theorem. Every nonconstant polynomial with complex coefficients has a complex root.
Proof. It suffices to treat a monic polynomial \(q(z) = z^n + a_{n-1}z^{n-1} + \cdots + a_0\) with \(n \ge 1\). Suppose \(q\) has no root. For each radius \(R \ge 0\) consider the loop \(\gamma_R(s) = q(Re^{2\pi i s})/|q(Re^{2\pi i s})|\) in the circle, after rotating so that it starts at 1. As \(R\) varies from 0 to any \(R_1\), the loops \(\gamma_R\) form a homotopy, which is valid because \(q\) never vanishes; at \(R = 0\) the loop is constant. So \(\gamma_{R_1}\) has winding number 0 for every \(R_1\). Now take \(R > 1 + |a_0| + \cdots + |a_{n-1}|\). For \(|z| = R\) and \(0 \le t \le 1\), the polynomials \(q_t(z) = z^n + t(a_{n-1}z^{n-1} + \cdots + a_0)\) satisfy \(|q_t(z)| \ge R^n - R^{n-1}(|a_{n-1}| + \cdots + |a_0|) > 0\), using \(R^k \le R^{n-1}\) for \(k \le n - 1\) and \(R > 1\). So \(t \mapsto q_t\) gives a homotopy, through nonvanishing functions on the circle of radius \(R\), from \(z^n\) to \(q\). The winding number of \(z^n\) around that circle is \(n\), so the winding number of \(\gamma_R\) is \(n \ge 1\), a contradiction.
Gauss gave several proofs of the fundamental theorem, the first in his 1799 doctoral dissertation, which contained a topological gap concerning the behaviour of algebraic curves that was only filled rigorously in 1920 by Alexander Ostrowski. The proof here is essentially Gauss's idea made rigorous by the fundamental group. The same winding-number argument counts roots: if \(q\) has no roots on a simple closed curve, the winding number of \(q\) along the curve equals the number of roots inside, counted with multiplicity, which is the argument principle of complex analysis. The program below uses this to locate roots.
The Borsuk–Ulam theorem
Lemma. If \(h : S^1 \to S^1\) satisfies \(h(-x) = -h(x)\) for all \(x\), then \(\deg h\) is odd.
Proof. Rotate so that \(h(1) = 1\) in complex notation, which preserves the antipodal condition. Let \(\tilde g\) be the lift starting at 0 of the loop \(g(s) = h(e^{2\pi i s})\). For \(s \in [0, 1/2]\), \(g(s + 1/2) = h(-e^{2\pi i s}) = -g(s)\), so \(\tilde g(s + 1/2)\) and \(\tilde g(s) + 1/2\) are both lifts of the same path on \([0, 1/2]\), hence differ by a constant integer \(k\) by uniqueness of lifts up to translation: \(\tilde g(s + 1/2) = \tilde g(s) + 1/2 + k\). At \(s = 0\) this gives \(\tilde g(1/2) = 1/2 + k\), and at \(s = 1/2\) it gives \(\tilde g(1) = \tilde g(1/2) + 1/2 + k = 1 + 2k\). So the degree \(\tilde g(1)\) is odd.
Theorem (Borsuk–Ulam, dimension 2). For every continuous \(f : S^2 \to \mathbb{R}^2\) there is a point \(x\) with \(f(x) = f(-x)\).
Proof. Suppose not. Then \(g(x) = \frac{f(x) - f(-x)}{\|f(x) - f(-x)\|}\) is a continuous map \(S^2 \to S^1\) with \(g(-x) = -g(x)\). Restrict \(g\) to the equator, a circle; by the lemma, the restriction \(h\) has odd degree, in particular nonzero, so the loop \(h \circ \omega_1\) is not null-homotopic in \(S^1\). But the equator loop is null-homotopic in the upper hemisphere, which is a disc, and composing a null-homotopy there with \(g\) gives a null-homotopy of \(h \circ \omega_1\) in \(S^1\). This contradiction proves the theorem.
Stanisław Ulam conjectured the theorem and Karol Borsuk proved it in all dimensions in 1933. The two-dimensional case says that at any moment there are two antipodal points on the Earth with the same temperature and the same air pressure. A corollary is the pancake theorem: any two bounded regions in the plane can be bisected in area by a single straight line. And another corollary is that \(S^2\) does not embed in \(\mathbb{R}^2\), since an injective continuous map would never take equal values at antipodal points.
Dimension
Theorem. \(\mathbb{R}^2\) is not homeomorphic to \(\mathbb{R}^n\) for \(n \ne 2\).
Proof. The case \(n = 1\) was done in lesson 6 by removing a point. For \(n \ge 3\), suppose \(h : \mathbb{R}^2 \to \mathbb{R}^n\) is a homeomorphism. It restricts to a homeomorphism \(\mathbb{R}^2 \setminus \{0\} \to \mathbb{R}^n \setminus \{h(0)\}\). The first space deformation retracts onto \(S^1\), so its fundamental group is \(\mathbb{Z}\); the second deformation retracts onto \(S^{n-1}\) with \(n - 1 \ge 2\), which is simply connected. The groups differ, a contradiction.
Experiments
The program lifts paths in the circle numerically by accumulating angle increments, exactly as in the proof of path lifting, computes the degrees of several maps of the circle, checks the parity lemma for an odd map, and counts the roots of a polynomial inside squares by winding numbers, subdividing to locate all of them.
import cmath, math
def lift(points):
"""lift a closed polygonal loop on the circle (unit complex numbers) to the line, starting at 0."""
s = [0.0]
for a, b in zip(points, points[1:]):
s.append(s[-1] + cmath.phase(b / a) / (2 * math.pi))
return s
def degree(f, n=2000):
pts = [f(cmath.exp(2j * math.pi * k / n)) for k in range(n + 1)]
pts = [w / abs(w) for w in pts]
return round(lift(pts)[-1], 6)
print("degree of z^3:", degree(lambda z: z ** 3))
print("degree of conj(z)^2:", degree(lambda z: z.conjugate() ** 2))
print("degree of the antipodal map:", degree(lambda z: -z))
odd = lambda z: z ** 3 + 0.5 * z.conjugate() + 0.2 * z ** 5 # h(-z) = -h(z)
print("degree of an odd map z^3 + z-bar/2 + z^5/5:", degree(odd))
q = lambda z: z ** 4 - 2 * z ** 3 + 3 * z - 7
def winding_on_square(c, h, n=400):
"""winding number of q around the boundary of the square with centre c and half side h."""
corners = [c + h * (-1 - 1j), c + h * (1 - 1j), c + h * (1 + 1j), c + h * (-1 + 1j)]
pts = []
for a, b in zip(corners, corners[1:] + corners[:1]):
pts += [a + (b - a) * k / n for k in range(n)]
pts.append(pts[0])
vals = [q(z) for z in pts]
return round(lift([v / abs(v) for v in vals])[-1])
print("roots inside the square of half side 10:", winding_on_square(0, 10))
def locate(c, h, depth):
w = winding_on_square(c, h)
if w == 0:
return []
if depth == 0:
return [(c, w)]
out = []
for dx in (-0.5, 0.5):
for dy in (-0.5, 0.5):
out += locate(c + h * complex(dx, dy), h / 2, depth - 1)
return out
found = locate(0.013 + 0.007j, 10, 14) # offset avoids roots on square edges
for c, w in found:
print(f"root near {c.real:+.5f} {c.imag:+.5f}i, |q| there = {abs(q(c)):.1e}")degree of z^3: 3.0 degree of conj(z)^2: -2.0 degree of the antipodal map: 1.0 degree of an odd map z^3 + z-bar/2 + z^5/5: 3.0 roots inside the square of half side 10: 4 root near -1.48663 +0.00029i, |q| there = 8.0e-03 root near +0.70209 -1.32906i, |q| there = 6.2e-03 root near +2.08270 +0.00029i, |q| there = 6.1e-03 root near +0.70209 +1.32963i, |q| there = 3.4e-03
The degrees come out as predicted: 3 for \(z^3\), \(-2\) for the conjugate squared, which winds backwards, and 1 for the antipodal map, a rotation by half a turn. The odd map has odd degree, as the lemma requires. For the quartic, the large square encloses all four roots, and repeated subdivision, keeping only subsquares with nonzero winding number, homes in on each root; the small values of \(|q|\) at the final centres confirm the locations. The procedure is a two-dimensional analogue of bisection, with the winding number playing the role of a sign change.
Worked problem
A fixed point argument with degrees
Show that a continuous map \(f : S^1 \to S^1\) with \(\deg f \ne 1\) has a fixed point.
Show solution
- Suppose \(f(z) \ne z\) for all \(z\). Then \(f(z)/z \ne 1\), so the map \(g(z) = f(z)/z\) misses the point 1 of the circle.
- The circle minus a point is homeomorphic to an interval, which is contractible, so \(g\) is homotopic to a constant and \(\deg g = 0\).
- Degrees of pointwise products add: the lift of \(f(z) = g(z) \cdot z\) is the sum of the lifts, so \(\deg f = \deg g + 1 = 1\).
- This contradicts \(\deg f \ne 1\).
Answer: Every circle map of degree other than 1 has a fixed point; for example \(z \mapsto z^2\) fixes 1, and \(z \mapsto \bar z\) fixes 1 and \(-1\).
Common mistakes
MistakeThinking any local homeomorphism allows path lifting.
InsteadThe proof needs evenly covered open sets; covering maps have them, but a general local homeomorphism need not.
MistakeComputing a winding number from the endpoint of a path in the circle.
InsteadUse the endpoint of the lift to the real line; the endpoint in the circle is always the basepoint.
MistakeConcluding the Brouwer theorem for open discs.
InsteadThe open disc has fixed-point-free maps, such as \(x \mapsto (x + p)/2\) for a boundary point \(p\); compactness matters.
MistakeForgetting to rotate before computing a degree.
InsteadDegree is defined for based loops; rotation is a homotopy and does not change it, but it must be done consistently.
MistakeApplying Borsuk–Ulam to maps into higher-dimensional spaces.
InsteadThe theorem is about maps \(S^n \to \mathbb{R}^n\); a map \(S^2 \to \mathbb{R}^3\), such as the inclusion, can be injective.
Summary and key terms
- The map from the real line onto the circle has evenly covered open sets, so paths and homotopies lift uniquely once a starting point is chosen.
- The endpoint of the lift of a loop is its winding number, and it gives an isomorphism from the fundamental group of the circle to the integers.
- There is no retraction of the disc onto its boundary, so every continuous self-map of the closed disc has a fixed point.
- A winding-number homotopy from the leading term proves that every nonconstant complex polynomial has a root.
- Odd maps of the circle have odd degree, which proves the Borsuk–Ulam theorem in dimension 2.
- Removing a point and computing fundamental groups shows that the plane is not homeomorphic to any other Euclidean space.
- evenly covered
- An open set whose preimage is a disjoint union of open sets each mapped homeomorphically onto it.
- lift
- A path in the covering space projecting to a given path; for the circle, a path in \(\mathbb{R}\).
- winding number
- The integer endpoint of the lift of a loop in the circle starting at 0.
- degree
- The winding number of the image of the standard loop under a map of the circle.
- retraction
- A continuous map onto a subspace that fixes every point of the subspace.
- Brouwer fixed point theorem
- Every continuous self-map of a closed disc has a fixed point.
- Borsuk–Ulam theorem
- Every continuous map from \(S^n\) to \(\mathbb{R}^n\) takes equal values at some pair of antipodal points.
Practice problems
Work each problem on paper first, then reveal the answer to check.
Compute the degree of \(z \mapsto z^2 \bar z^5\) on the unit circle.
Show answer
On the circle \(\bar z = z^{-1}\), so the map is \(z^{-3}\), of degree \(-3\).
Show that the torus is not homeomorphic to the sphere.
Show answer
\(\pi_1(T^2) \cong \mathbb{Z}^2\) by lesson 9 and this lesson, while the sphere is simply connected.
Does every continuous map \([0, 1]^2 \to [0, 1]^2\) have a fixed point?
Show answer
Yes: the square is homeomorphic to the disc by radial projection, and fixed points correspond under homeomorphisms.
Use Borsuk–Ulam to show that the sphere cannot be embedded in the plane.
Show answer
An injective \(f : S^2 \to \mathbb{R}^2\) would satisfy \(f(x) \ne f(-x)\) for all \(x\), contradicting the theorem.
Find the number of roots of \(z^5 + 3z + 1\) in the disc \(|z| < 2\).
Show answer
On \(|z| = 2\), \(|3z + 1| \le 7 < 32 = |z^5|\), so the straight-line homotopy from \(z^5\) avoids 0 and the winding number is 5: all five roots lie in the disc.
Show that the boundary circle of the Möbius strip is not a retract of it.
Show answer
The boundary circle goes twice around the core, so inclusion induces multiplication by 2 from \(\mathbb{Z}\) to \(\mathbb{Z}\); a retraction would give a left inverse \(r_*\) with \(r_*(2) = 1\), impossible for a homomorphism of \(\mathbb{Z}\).
Lesson quiz · 5 questions
Score 60% or more to complete this lesson.
Create a free account to save your progress, take quizzes and earn a certificate.