Gram-Schmidt Process
Statement
Given any basis for an -dimensional vector space, the Gram-Schmidt process produces an orthonormal basis for the same space such that for all .
Assumptions
- is a basis (linearly independent spanning set) for a finite-dimensional inner product space over .
- No is zero (guaranteed by linear independence).
Proof Sketch
At each step , subtract from its projections onto all previously constructed orthogonal vectors . The residual is nonzero (because is not in ) and orthogonal to all prior vectors by construction. Normalising gives a unit vector. Since each is a linear combination of , the intermediate spans are preserved.
Full Proof
Algorithm. Set . For :
Normalize:
Orthogonality. For :
where for by induction.
Non-degeneracy. because ; if then would be a linear combination of , contradicting linear independence.
Span preservation. Each is a linear combination of , so . Both sets have the same cardinality and are linearly independent (orthogonal vectors are independent), so the spans are equal.
Example. For the basis :
giving the orthonormal basis .
Notes / Intuition
Each step is a projection-and-subtract: we remove from everything it “shares” with the already-built directions, leaving only a genuinely new orthogonal component. This is the constructive heart of the QR decomposition (, where has the as columns). Classical Gram-Schmidt is numerically unstable; the modified variant (subtracting projections one at a time) is preferred in practice.