The Gram-Schmidt process is an algorithm that constructs an orthogonal basis from a non-orthogonal basis.

For example, consider the basis for the subspace , where

The Gram-Schmidt process involves 2 steps:

  1. Set
  2. Find a vector in that’s orthogonal to . This can be achieved by computing

Notice that is written as a linear combination of and . This means that and . Moreover, . The set is then an orthogonal basis for .