[proofplan]
We construct the orthonormal set $(v_1, v_2, \dots)$ inductively.
At each step $k$, subtract the projections of $e_k$ onto the previously constructed orthonormal vectors to obtain $u_k$, then normalise to get $v_k$.
Linear independence of the original set guarantees $u_k \neq \mathbf{0}$ at each step.
The span is preserved because the construction only mixes $e_k$ with vectors from the previous span.
[/proofplan]
[step:Define the Gram-Schmidt construction]
Set $v_1 = e_1/\|e_1\|$ (well-defined since $e_1 \neq \mathbf{0}$ by linear independence).
For $k \geq 2$, define:
\begin{align*}
u_k = e_k - \sum_{i=1}^{k-1} (v_i, e_k)\,v_i, \qquad v_k = \frac{u_k}{\|u_k\|}.
\end{align*}
[/step]
[step:Verify $u_k \neq \mathbf{0}$ at each step using linear independence]
If $u_k = \mathbf{0}$, then $e_k = \sum_{i=1}^{k-1} (v_i, e_k)\,v_i \in \langle v_1, \dots, v_{k-1} \rangle$.
By the inductive hypothesis (established in the span preservation step below), $\langle v_1, \dots, v_{k-1} \rangle = \langle e_1, \dots, e_{k-1} \rangle$.
So $e_k \in \langle e_1, \dots, e_{k-1} \rangle$, contradicting the linear independence of $(e_1, e_2, \dots)$.
Therefore $u_k \neq \mathbf{0}$ and the normalisation $v_k = u_k/\|u_k\|$ is well-defined.
[/step]
[step:Verify orthonormality by computing inner products]
For $j < k$:
\begin{align*}
(v_j, u_k) = (v_j, e_k) - \sum_{i=1}^{k-1} (v_i, e_k)\,(v_j, v_i) = (v_j, e_k) - (v_j, e_k) \cdot 1 = 0,
\end{align*}
where we used the inductive hypothesis $(v_j, v_i) = \delta_{ji}$ for $i, j < k$.
Therefore $(v_j, v_k) = (v_j, u_k)/\|u_k\| = 0$.
Also $\|v_k\| = 1$ by construction.
[guided]
The subtraction $u_k = e_k - \sum_{i=1}^{k-1} (v_i, e_k)\,v_i$ removes the components of $e_k$ along each previously constructed orthonormal vector.
The coefficient $(v_i, e_k)$ is exactly the inner product of $e_k$ with $v_i$, which measures the "shadow" of $e_k$ on $v_i$.
To verify orthogonality, compute $(v_j, u_k)$ for $j < k$:
\begin{align*}
(v_j, u_k) = (v_j, e_k) - \sum_{i=1}^{k-1} (v_i, e_k)\,(v_j, v_i).
\end{align*}
Since $(v_j, v_i) = \delta_{ji}$ for $i, j \leq k - 1$ (by the inductive hypothesis), the sum collapses to the single term $i = j$:
\begin{align*}
(v_j, u_k) = (v_j, e_k) - (v_j, e_k) = 0.
\end{align*}
Dividing $u_k$ by its norm does not affect orthogonality, so $(v_j, v_k) = 0$.
The normalisation $\|v_k\| = 1$ is immediate from the definition $v_k = u_k/\|u_k\|$.
[/guided]
[/step]
[step:Verify span preservation by induction]
By construction, $v_k \in \langle e_1, \dots, e_k \rangle$ (since $u_k$ is a linear combination of $e_k$ and $v_1, \dots, v_{k-1}$, each of which lies in $\langle e_1, \dots, e_{k-1} \rangle$ by induction).
Conversely, $e_k = u_k + \sum_{i=1}^{k-1} (v_i, e_k)\,v_i \in \langle v_1, \dots, v_k \rangle$.
So $\langle v_1, \dots, v_k \rangle = \langle e_1, \dots, e_k \rangle$ for every $k$.
[/step]