[guided]We assume $\operatorname{Ric}(g) \geq 0$ and $b^1(M) = n$. The strategy is to manufacture a global parallel frame of $TM$ from harmonic $1$-forms, and then read off $R \equiv 0$ from parallelism.
**Step 1: upgrade the bound to an isomorphism.** From Part (2), the evaluation map
\begin{align*}
\operatorname{ev}_{x_0} : \mathcal{H}^1(M) &\to T_{x_0}^* M, \\
\alpha &\mapsto \alpha_{x_0}
\end{align*}
is injective, and we proved $\dim \mathcal{H}^1(M) \leq n$. The hypothesis $b^1(M) = n$ gives $\dim \mathcal{H}^1(M) = b^1(M) = n = \dim T_{x_0}^* M$. A linear injection between finite-dimensional spaces of the same dimension is automatically a linear isomorphism, so $\operatorname{ev}_{x_0}$ is bijective.
**Step 2: produce a global parallel coframe.** Choose a basis $\alpha_1, \ldots, \alpha_n$ of $\mathcal{H}^1(M)$. By Part (2) (which used identity (IB) with $\operatorname{Ric} \geq 0$ to force the squared-norm term and the Ricci term to vanish separately), each $\alpha_i$ is parallel: $\nabla\alpha_i = 0$. Why are the values $(\alpha_i)_x$ a basis of $T_x^* M$ at *every* point $x$, not just at $x_0$? Because parallel transport along any path from $x_0$ to $x$ is a linear isomorphism between the cotangent fibres, and parallelism of $\alpha_i$ means
\begin{align*}
(\alpha_i)_{\gamma(t)} = P_\gamma^{0,t}\big((\alpha_i)_{x_0}\big)
\end{align*}
for any path $\gamma$ from $x_0$ to $\gamma(t)$. A linear isomorphism sends a basis to a basis, so $(\alpha_i)_x$ form a basis of $T_x^* M$ for every $x$. Thus $\{\alpha_1, \ldots, \alpha_n\}$ is a **global parallel coframe**.
**Step 3: dualise to a global parallel frame on $TM$.** Define $X_1, \ldots, X_n \in \mathfrak{X}(M)$ to be the pointwise dual basis: $\alpha_j(X_i) = \delta_{ij}$ at every point. Since $\{(\alpha_j)_x\}$ is a basis of $T^*_x M$ at every $x$, the dual is well-defined and smooth. The non-trivial claim is that $\nabla X_i = 0$. Why should this be true? The natural strategy is to differentiate the constancy relation $\alpha_j(X_i) = \delta_{ij}$ and use the metric compatibility of the dual pairing — that is, the connection's compatibility with the natural pairing $T^*M \otimes TM \to \mathbb{R}$. For any $Y \in \mathfrak{X}(M)$, applying $Y$ to the scalar constant $\delta_{ij}$:
\begin{align*}
0 = Y\big(\alpha_j(X_i)\big) = (\nabla_Y \alpha_j)(X_i) + \alpha_j(\nabla_Y X_i).
\end{align*}
The first term on the right vanishes since $\nabla\alpha_j = 0$, leaving $\alpha_j(\nabla_Y X_i) = 0$ for every $j$. Because $\{\alpha_j\}_{j=1}^n$ spans $T^*_x M$ pointwise — every cotangent vector is a linear combination of the $(\alpha_j)_x$ — the only $v \in T_x M$ on which every $\alpha_j$ vanishes is $v = 0$. Hence $\nabla_Y X_i = 0$ for every $Y$, i.e., $\nabla X_i = 0$. So $\{X_1, \ldots, X_n\}$ is a **global parallel frame** on $TM$.
**Step 4: compute $R$ in the parallel frame.** Once we have a parallel frame, the curvature collapses by direct computation. We use the convention $R(X, Y) = -[\nabla_X, \nabla_Y] + \nabla_{[X, Y]}$ from [Curvature as Commutator of Covariant Derivatives](/theorems/2703) (this is the chapter sign convention; the opposite convention would change the sign on the commutator but not the conclusion):
\begin{align*}
R(X_i, X_j) X_k = -[\nabla_{X_i}, \nabla_{X_j}] X_k + \nabla_{[X_i, X_j]} X_k.
\end{align*}
We claim both terms on the right vanish.
*Commutator term.* Each $X_\ell$ is parallel, so $\nabla_{X_i} X_k = 0$. Differentiating zero gives zero: $\nabla_{X_j}(\nabla_{X_i} X_k) = \nabla_{X_j}(0) = 0$, and symmetrically $\nabla_{X_i}(\nabla_{X_j} X_k) = 0$. Therefore
\begin{align*}
[\nabla_{X_i}, \nabla_{X_j}] X_k = \nabla_{X_i}\nabla_{X_j} X_k - \nabla_{X_j}\nabla_{X_i} X_k = 0 - 0 = 0.
\end{align*}
*Lie bracket term.* The Levi-Civita connection $\nabla$ is torsion-free, so $T(X_i, X_j) := \nabla_{X_i} X_j - \nabla_{X_j} X_i - [X_i, X_j] = 0$, which rearranges to
\begin{align*}
[X_i, X_j] = \nabla_{X_i} X_j - \nabla_{X_j} X_i = 0 - 0 = 0,
\end{align*}
using parallelism of $X_i$ and $X_j$ in the second equality. Hence $\nabla_{[X_i, X_j]} X_k = \nabla_0 X_k = 0$.
Combining the two:
\begin{align*}
R(X_i, X_j) X_k = -0 + 0 = 0 \quad \text{for all } i, j, k \in \{1, \ldots, n\}.
\end{align*}
**Step 5: extend to all of $TM$ by trilinearity.** Curvature vanishing on a frame extends to curvature vanishing everywhere. Fix $x \in M$. The triple $(Y, Z, W) \mapsto R_x(Y, Z) W$ is trilinear in $T_x M$, and $\{X_i|_x\}_{i=1}^n$ is a basis of $T_x M$. Writing $Y = \sum_i a_i X_i|_x$, $Z = \sum_j b_j X_j|_x$, $W = \sum_k c_k X_k|_x$ and expanding by trilinearity:
\begin{align*}
R_x(Y, Z) W = \sum_{i, j, k} a_i b_j c_k\, R_x(X_i, X_j) X_k = 0.
\end{align*}
Since $x \in M$ and $Y, Z, W \in T_x M$ were arbitrary, $R \equiv 0$ on $M$.
By definition, a Riemannian manifold whose Riemann curvature tensor vanishes identically is **flat**. Hence $g$ is flat, completing Part (3).[/guided]