How would you "complement" a basis in this way? Suppose we have a subspace
$$\mathcal{L} = (a_1,a_2,a_3,a_4)$$
generated by orthonormal vectors $a_1,a_2,a_3,a_4$.
We then split this basis into two parts: $(a_1,a_2)$ and $(a_3,a_4)$.
Now, a paper I am reading says we then take the basis
$$(a_1,a_2,b_1,b_2)$$
where $(b_1,b_2)$ is "any orthonormal sequence that complements $(a_1,a_2)$ to a basis in $\mathcal{L}$." And like wise, we do the same to the other part to obtain a second basis $(a_3,a_4,b_3,b_4)$.
My question is, given the original basis $(a_1,a_2,a_3,a_4)$ how would we find a complement $(b_1,b_2)$?
I know how to construct a vector orthogonal to $a_1$ and $a_2$, namely as
$$x - <a_1,x> a_1 - <a_2,x>a_2$$
for some $x$. But how can I be sure the resulting basis results in the original space $\mathcal{L}$?
 A: I'm not 100% certain I'm answering your question, but here goes.
You're starting with an orthonormal basis $(a_1, a_2, a_3, a_4)$ for a space $\mathcal{L}$. You then restrict the basis to the orthonormal list $(a_1, a_2)$, and want to find $(b_1, b_2)$ such that $(a_1, a_2, b_1, b_2)$ is also an orthonormal basis for $\mathcal{L}$.
If this is the case, then there's one particular, obvious answer: take $b_1 = a_3$ and $b_2 = a_4$. It satisfies the conditions laid out, as far as I can tell.
There's a more general problem of extending an orthonormal basis $B$ of a subspace $W$ (e.g. $W = \operatorname{span}(a_1, a_2)$ and $B = (a_1, a_2)$) into an orthonormal basis for the entire space. To do this, probably the easiest way is to first extend $B$ to a basis $B'$ for the entire space, then perform Gram-Schmidt.
To extend $B = (w_1, w_2, \ldots, w_m)$, consider a basis $C = (v_1, v_2, \ldots, v_n)$ for the entire space (there must be one, in order for this method to work!). Perform the following algorithm:


*

*Set $i = 1$

*Compute $\langle v_i, w_1 \rangle w_1 + \langle v_i, w_2 \rangle w_2 + \ldots + \langle v_i, w_m \rangle w_m - v_i$

*If the above computation results in a non-zero vector, then extend $B$ by adding $\frac{v_i - \operatorname{proj}_{\operatorname{span} B} v_i}{\|v_i - \operatorname{proj}_{\operatorname{span} B} v_i\|}$ to it. (Otherwise, do nothing.)

*If $B$ has length $n$ then terminate. This resulting list is $B'$, an extension of $B$ that spans the whole space.

*Add $1$ to $i$ and go back to step 2.


The computation in step $2$ is the projection of $v_i$ onto $\operatorname{span} B$, with $v_i$ subtracted from it. If the projection coincides with $v_i$ itself, then this difference will be zero, otherwise it will be non-zero. So, we are testing to see if $v_i \in \operatorname{span} B$. If this is not the case (i.e. the difference is non-zero), then adding in $v_i$ to $B$, as per step 3, will not break linear independence. So long as we maintain linear independence, we will have a basis by the time we've added the $n$th vector.
I hope that helps.
