[proofplan]
The proof has two parts. First, we establish the homotopy equivalence $F_g \simeq X_{2g}$ between the punctured genus-$g$ surface and the wedge $X_{2g} = \bigvee_{i=1}^{2g} S^1$ of $2g$ circles, by exhibiting an explicit deformation retraction of the polygon model of $F_g$ onto its boundary polygon (which collapses after edge identification to the $2g$-petal rose). Second, we compute $H_*(X_{2g})$ by an inductive application of Mayer-Vietoris, showing that attaching an additional circle to a wedge of circles contributes one extra $\mathbb{Z}$ to $H_1$ and zero in other positive degrees. Homotopy invariance of homology then transfers the result from $X_{2g}$ to $F_g$.
[/proofplan]
[step:Model the punctured surface as a polygon with centre disk removed]
Recall the polygon model of the closed orientable genus-$g$ surface $\Sigma_g$: let $P \subset \mathbb{R}^2$ be a closed regular $4g$-gon, and let $\sim$ be the equivalence relation on $\partial P$ that glues boundary edges in pairs according to the word $a_1 b_1 a_1^{-1} b_1^{-1} \cdots a_g b_g a_g^{-1} b_g^{-1}$. Then $\Sigma_g = P / \sim$.
The punctured surface $F_g$ is defined as $\Sigma_g$ with an open disk removed; concretely, we take an open ball $B(0, r) \subset P^\circ$ of radius $r$ about the centre of $P$, with $r$ small enough that $\overline{B(0, r)} \subset P^\circ$, and form
\begin{align*}
F_g = (P \setminus B(0, r)) / \sim,
\end{align*}
where $\sim$ is the same edge-gluing relation on $\partial P$ (the interior boundary $\partial B(0, r)$ is left unglued and becomes a distinguished boundary circle of $F_g$). The space $F_g$ is a compact surface with one boundary circle.
[/step]
[step:Construct a deformation retraction of $F_g$ onto the edge-identified boundary polygon]
Let $X := \partial P / \sim$, the quotient of the outer boundary of $P$ under the edge-gluing relation. All $4g$ corners of $P$ are identified to a single vertex $v$, and the $4g$ edges are identified in pairs to $2g$ distinct $1$-cells $a_1, b_1, \ldots, a_g, b_g$. Each $1$-cell has both endpoints at $v$, so $X$ is a wedge of $2g$ circles at the basepoint $v$:
\begin{align*}
X \cong X_{2g} := \bigvee_{i=1}^{2g} S^1.
\end{align*}
We construct a deformation retraction of $F_g$ onto $X$. Work first on the unquotiented space $Q := P \setminus B(0, r)$, which is an annular region between the regular $4g$-gon and an inscribed disk. Define the radial deformation
\begin{align*}
H: Q \times [0, 1] &\to Q \\
(y, t) &\mapsto (1-t)\, y + t\, \rho(y),
\end{align*}
where $\rho: Q \to \partial P$ is the radial projection sending $y \in Q$ to the unique point on $\partial P$ collinear with $0$ and $y$ (same side as $y$). Explicitly, $\rho(y) = \lambda(y)\, y$ where $\lambda(y) > 1$ is the unique scalar such that $\lambda(y)\, y \in \partial P$. The map $\rho$ is well-defined and continuous on $Q$ because (i) $0 \notin Q$, so the ray from $0$ through $y$ is well-defined, and (ii) the ray exits $\partial P$ at a unique point since $P$ is convex with $0 \in P^\circ$.
The straight-line homotopy $H$ takes values in $Q$: for each $y \in Q$ and $t \in [0, 1]$, the point $H(y, t)$ lies on the segment from $y$ to $\rho(y)$, which is contained in $P$ (by convexity) and avoids $B(0, r)$ (since it is in the outward radial direction from $y$, and $y \notin B(0, r)$). At $t = 0$, $H(\cdot, 0) = \operatorname{id}_Q$; at $t = 1$, $H(\cdot, 1) = \rho$; and $\rho|_{\partial P} = \operatorname{id}_{\partial P}$. Hence $H$ is a deformation retraction of $Q$ onto $\partial P$.
The deformation $H$ respects the edge-gluing relation on $\partial P$ (it only moves points in the interior of $Q$, which are not subject to the relation), so it descends to a deformation retraction
\begin{align*}
\bar H: F_g \times [0, 1] \to F_g
\end{align*}
of $F_g = Q/\sim$ onto $X = \partial P/\sim \cong X_{2g}$. This establishes
\begin{align*}
F_g \simeq X_{2g}.
\end{align*}
[guided]
The geometric picture is the cleanest one: $F_g$ is a regular $4g$-gon with a smaller concentric disk removed, with paired boundary edges glued. Radially expand the hole outward until it meets the outer polygon — nothing happens to the outer polygon itself, and every interior point is swept onto the outer polygon. What remains is $\partial P$ with its edge gluings, which is exactly the $2g$-petal rose.
**Why is $\rho$ well-defined and continuous?** For each $y \in Q$, consider the ray $\{s y : s > 0\}$. The endpoint of this ray on $\partial P$ exists and is unique because $P$ is a compact convex set with nonempty interior containing $0$ (so every ray from $0$ meets $\partial P$ in exactly one point). The scalar $\lambda(y) > 1$ such that $\lambda(y) y \in \partial P$ is a continuous function of $y$ (it is the inverse of the Minkowski functional of $P$, modulo a factor).
**Why does the homotopy $H$ land in $Q$?** We need $H(y, t) = (1-t) y + t \lambda(y) y = \left((1-t) + t \lambda(y)\right) y$ to satisfy $|H(y, t)| \geq r$ (so it avoids $B(0, r)$) and $H(y, t) \in P$ (so it is inside the polygon). Since $\lambda(y) \geq 1$ and $(1-t) + t \lambda(y) \geq 1$ for $t \in [0,1]$, we get $|H(y,t)| \geq |y| \geq r$, checking the first condition. For the second, $H(y, t)$ is a convex combination of $y \in Q \subset P$ and $\rho(y) \in \partial P \subset P$, so $H(y, t) \in P$ by convexity of $P$.
**Why does $H$ descend to the quotient?** The edge-gluing relation $\sim$ only identifies points on $\partial P$, and $H$ fixes $\partial P$ pointwise. So if $y_1 \sim y_2$ (both on $\partial P$ and identified by some edge gluing), then $H(y_1, t) = y_1 \sim y_2 = H(y_2, t)$, showing $\sim$ is preserved by $H$. Hence $H$ descends to a well-defined continuous map on the quotient.
**Why is $X = \partial P/\sim$ a wedge of $2g$ circles?** The identification word $a_1 b_1 a_1^{-1} b_1^{-1} \cdots a_g b_g a_g^{-1} b_g^{-1}$ identifies all $4g$ corners of $P$ to a single point $v$ (since each corner is shared by two edges, and the word gluing forces all corners together). The $4g$ edges, identified in pairs, yield $2g$ distinct 1-cells, each of which becomes a loop at $v$. The resulting CW complex has one 0-cell and $2g$ 1-cells, each a loop — this is the definition of $X_{2g}$.
[/guided]
[/step]
[step:Compute $H_*(X_{2g})$ by induction on $g$ via Mayer-Vietoris]
We prove by induction on $k \geq 0$ that
\begin{align*}
H_n(X_k) \cong \begin{cases} \mathbb{Z} & n = 0, \\ \mathbb{Z}^k & n = 1, \\ 0 & n > 1. \end{cases}
\end{align*}
**Base case $k = 0$.** The wedge of zero circles is a single point $X_0 = \{v\}$. A one-point space has $H_0 = \mathbb{Z}$ and $H_n = 0$ for $n \geq 1$, matching the claim with $k = 0$.
**Base case $k = 1$.** $X_1 = S^1$. By [Homology of Spheres](/theorems/1945) applied with sphere dimension $1$, $H_0(S^1) = \mathbb{Z}$, $H_1(S^1) = \mathbb{Z}$, and $H_n(S^1) = 0$ for $n \geq 2$. This matches the claim with $k = 1$.
**Inductive step.** Assume the claim holds for $X_{k-1}$ with $k \geq 2$. We apply the [Mayer-Vietoris Theorem](/theorems/1931) to a decomposition $X_k = A \cup B$ where $A \supset X_{k-1}$ is an open thickening of $X_{k-1}$ inside $X_k$ and $B$ is an open thickening of the extra $k$-th loop $S^1_k$. Specifically, choose a small open arc $U_k \subset S^1_k$ around the basepoint $v$ that is disjoint from the other loops, and set
\begin{align*}
A = X_k \setminus \{p_k\}, \qquad B = U_k,
\end{align*}
where $p_k \in S^1_k$ is an interior point antipodal to $v$. Then $A$ is open (complement of a point in a Hausdorff space is open on a CW complex) and deformation retracts onto $X_{k-1}$ (squeeze the $k$-th loop, which has been cut, back to the basepoint $v$). The set $B = U_k$ is open and contractible (an arc). The intersection $A \cap B = U_k \setminus \{p_k\} = U_k$ (since $p_k \notin U_k$), which is the same open arc and is contractible.
The Mayer-Vietoris sequence reads
\begin{align*}
\cdots \to H_n(A \cap B) \to H_n(A) \oplus H_n(B) \to H_n(X_k) \to H_{n-1}(A \cap B) \to \cdots
\end{align*}
*For $n \geq 2$.* $H_n(A \cap B) = 0$ (contractible), $H_n(A) = H_n(X_{k-1}) = 0$ (inductive hypothesis, $n \geq 2$), $H_n(B) = 0$ (contractible), so by exactness $H_n(X_k)$ sits between two zeros, giving $H_n(X_k) = 0$.
*For $n = 1$.* The relevant segment of the sequence is
\begin{align*}
H_1(A \cap B) \to H_1(A) \oplus H_1(B) \to H_1(X_k) \xrightarrow{\partial} H_0(A \cap B) \xrightarrow{\iota_*} H_0(A) \oplus H_0(B).
\end{align*}
We compute each term: $H_1(A \cap B) = 0$ (contractible), $H_1(A) = H_1(X_{k-1}) = \mathbb{Z}^{k-1}$ (inductive hypothesis), $H_1(B) = 0$ (contractible). The map $\iota_*: H_0(A \cap B) \to H_0(A) \oplus H_0(B)$ sends the generator $[v]$ of $H_0(A \cap B) = \mathbb{Z}$ (a single path component) to $([v]_A, [v]_B) \in \mathbb{Z} \oplus \mathbb{Z}$. Both $A$ and $B$ are path-connected (they are connected open sets in $X_k$; $A$ deformation retracts onto $X_{k-1}$, which is path-connected, and $B$ is an arc), so $H_0(A) = H_0(B) = \mathbb{Z}$ with canonical generators given by any point. The map $\iota_*$ sends $1 \mapsto (1, 1)$, which is injective. Hence $\operatorname{ker}(\iota_*) = 0$, so $\partial: H_1(X_k) \to H_0(A \cap B)$ has image zero, i.e.\ $\partial = 0$. The sequence becomes
\begin{align*}
0 \to \mathbb{Z}^{k-1} \oplus 0 \to H_1(X_k) \to 0,
\end{align*}
giving $H_1(X_k) \cong \mathbb{Z}^{k-1} \oplus 0 \cong \mathbb{Z}^{k-1}$ — but this would conflict with the claim $H_1(X_k) \cong \mathbb{Z}^k$. The discrepancy shows our decomposition $X_k = A \cup B$ was chosen too narrowly: $A$ deformation retracts to $X_{k-1}$ only after we forget the now-severed $k$-th loop, but severing was achieved by removing *one* point $p_k$, so $A$ deformation retracts onto $X_{k-1}$ *wedge an arc*, which is homotopy equivalent to $X_{k-1}$ alone. In fact this is correct — the issue is rather with our description of $X_k$ via this cover.
Let us redo the cover. Take
\begin{align*}
A = X_k \setminus \{q\}, \qquad B = X_k \setminus \{v\},
\end{align*}
where $q \in S^1_k$ is the antipodal point to $v$ on the $k$-th loop. Both $A$ and $B$ are open (complement of a point in a CW complex).
- $A$ deformation retracts onto $X_{k-1}$: collapse the arc $S^1_k \setminus \{q\}$ to the basepoint $v$.
- $B = X_k \setminus \{v\}$ is the disjoint union of the $k$ loops with their basepoint removed, i.e.\ $k$ disjoint open arcs. Each arc is contractible; since the arcs are disjoint, $B$ is a disjoint union of $k$ contractible pieces, so $H_0(B) = \mathbb{Z}^k$ and $H_n(B) = 0$ for $n \geq 1$.
- $A \cap B = X_k \setminus \{v, q\} = $ ($k-1$ loops with basepoint removed) $\cup$ ($k$-th loop with both $v$ and $q$ removed). The first piece contributes $k - 1$ contractible arcs; the second contributes $2$ contractible arcs. So $A \cap B$ is a disjoint union of $(k-1) + 2 = k+1$ arcs, giving $H_0(A \cap B) = \mathbb{Z}^{k+1}$ and $H_n(A \cap B) = 0$ for $n \geq 1$.
The Mayer-Vietoris sequence in low degree:
\begin{align*}
0 \to H_1(A \cap B) \to H_1(A) \oplus H_1(B) \to H_1(X_k) \xrightarrow{\partial} H_0(A \cap B) \xrightarrow{\iota_*} H_0(A) \oplus H_0(B) \to H_0(X_k) \to 0.
\end{align*}
Substituting known terms:
\begin{align*}
0 \to 0 \to \mathbb{Z}^{k-1} \oplus 0 \to H_1(X_k) \xrightarrow{\partial} \mathbb{Z}^{k+1} \xrightarrow{\iota_*} \mathbb{Z} \oplus \mathbb{Z}^k \to \mathbb{Z} \to 0.
\end{align*}
We compute $\iota_*$. The $k+1$ path components of $A \cap B$ are: $k - 1$ loops (from $X_{k-1} \setminus \{v\}$, each a single open arc) and $2$ arcs from $S^1_k \setminus \{v, q\}$. Each component of $A \cap B$ includes into one component of $A$ and one component of $B$. Since $A$ is connected, $H_0(A) = \mathbb{Z}$ and every component of $A \cap B$ maps to the single generator of $H_0(A)$. On the $B$-side, the $k-1$ loops from $X_{k-1} \setminus \{v\}$ are the $k-1$ arcs of $B$ that come from those loops; the $2$ arcs from $S^1_k \setminus \{v, q\}$ both lie in the single $k$-th arc of $B$, so they map to the same generator of $H_0(B) = \mathbb{Z}^k$.
So $\iota_*: \mathbb{Z}^{k+1} \to \mathbb{Z} \oplus \mathbb{Z}^k = \mathbb{Z}^{k+1}$ is given in coordinates by
\begin{align*}
(c_1, \ldots, c_{k-1}, d_1, d_2) \mapsto \left( c_1 + \cdots + c_{k-1} + d_1 + d_2,\; c_1,\, \ldots,\, c_{k-1},\, d_1 + d_2 \right).
\end{align*}
The kernel of $\iota_*$: the last $k-1$ coordinates of the output force $c_1 = \cdots = c_{k-1} = 0$; the last coordinate of the output ($d_1 + d_2$) forces $d_2 = -d_1$; the first coordinate is then $0 + 0 + d_1 + d_2 = 0$, which is automatic. So $\ker(\iota_*) \cong \mathbb{Z}$, generated by $(0, \ldots, 0, 1, -1)$.
Exactness at $H_0(A \cap B)$ gives $\operatorname{Range}(\partial) = \ker(\iota_*) \cong \mathbb{Z}$. Exactness at $H_1(X_k)$ gives a short exact sequence
\begin{align*}
0 \to \mathbb{Z}^{k-1} \to H_1(X_k) \to \mathbb{Z} \to 0.
\end{align*}
This is a short exact sequence of free abelian groups, so it splits: $H_1(X_k) \cong \mathbb{Z}^{k-1} \oplus \mathbb{Z} = \mathbb{Z}^k$, as claimed.
The $H_0$ calculation: path-connectivity of $X_k$ gives $H_0(X_k) = \mathbb{Z}$, matching the claim.
This completes the inductive step, so $H_n(X_k)$ matches the claimed values for all $k \geq 0$.
[guided]
The Mayer-Vietoris calculation is fiddly but essentially forced: we need to cover $X_k$ by two open pieces with tractable homology.
**First attempt fails.** If we try to cover by "remove one interior point of $S^1_k$" (call that set $A$) and "a neighbourhood of that point" (call that $B$), we find $A$ retracts to $X_{k-1}$ (severing the $k$-th loop collapses it to the basepoint) and $B$ is contractible. But then $A \cap B$ is also contractible, and Mayer-Vietoris gives $H_1(X_k) = H_1(X_{k-1})$, which is wrong — we expect $H_1$ to gain a rank.
The lesson: we must choose the cover so that the intersection reveals the topology — in particular, $A \cap B$ should have multiple components, and the connecting map $\partial$ should pick up the new $H_1$ class from disconnection.
**The corrected cover.** Take $A = X_k \setminus \{q\}$ and $B = X_k \setminus \{v\}$, where $q$ is antipodal to $v$ on $S^1_k$.
- $A$ severs the $k$-th loop but retains the basepoint, so it retracts to $X_{k-1}$.
- $B$ removes the basepoint from all $k$ loops, so it becomes a disjoint union of $k$ contractible arcs.
- $A \cap B$ removes both $v$ and $q$, breaking the $k$-th loop into two arcs and the other $k-1$ loops into one arc each — total $k + 1$ arcs.
**The key short exact sequence.** Mayer-Vietoris gives
\begin{align*}
0 \to \mathbb{Z}^{k-1} \to H_1(X_k) \to \mathbb{Z} \to 0,
\end{align*}
where the $\mathbb{Z}$ on the right is $\ker(\iota_*: H_0(A \cap B) \to H_0(A) \oplus H_0(B))$. This kernel records the *new* $H_1$ class — the loop $S^1_k$ whose cycle comes from concatenating the two pieces of $S^1_k \setminus \{v, q\}$ with opposite orientations.
**Why the sequence splits.** Free abelian groups are projective, so any short exact sequence $0 \to A \to B \to C \to 0$ with $C$ free abelian splits. Here $C = \mathbb{Z}$ is free, so we get $H_1(X_k) \cong \mathbb{Z}^{k-1} \oplus \mathbb{Z} = \mathbb{Z}^k$.
**Geometric interpretation.** Each loop $S^1_i$ in $X_k$ contributes an independent generator to $H_1$; the $2g$ loops in $X_{2g}$ give $H_1(X_{2g}) = \mathbb{Z}^{2g}$.
[/guided]
[/step]
[step:Transfer the homology computation from $X_{2g}$ to $F_g$ via homotopy invariance]
From Step 2, $F_g \simeq X_{2g}$. By homotopy invariance of homology — which follows from [Homotopic Maps Induce Equal Maps on Homology](/theorems/1944) applied to a homotopy equivalence and its inverse (their compositions are homotopic to the identities, so on homology each induced map is an isomorphism) — we have
\begin{align*}
H_n(F_g) \cong H_n(X_{2g}) \quad \text{for every } n \geq 0.
\end{align*}
Applying Step 3 with $k = 2g$:
\begin{align*}
H_n(F_g) \cong \begin{cases} \mathbb{Z} & n = 0, \\ \mathbb{Z}^{2g} & n = 1, \\ 0 & n > 1. \end{cases}
\end{align*}
This is the claim of the theorem. Combining with the homotopy equivalence $F_g \simeq X_{2g}$ from Step 2 completes the proof.
[/step]