# How to construct orthogonal complement subspace of any subspace?

If I have one subspace $V$ belong to $\mathbb{R}^{n}$, the subspace has basis $v_{1},v_{2},\cdot\cdot\cdot,v_{k}$,where $k<n$. I want to find the orthogonal complement subspace $V^{\perp}$ of $V$. $$V^{\perp}=span(u_{1},u_2,\cdot\cdot\cdot,u_{n-k})$$ Could anyone tell me how to construct the $V^{\perp}$?

• By Gram–Schmidt process you can make change $v_1,\ldots, v_k$ with an orthogonal basis $w_1, \ldots, w_k$ of $V$. Now add to $\{ w_1, \ldots, w_k\}$ vectors $x_1, \ldots, x_{n-k}\in {\mathbb R}^n$ such that $\{ w_1, \ldots, w_k, x_1, \ldots, x_{n-k}\}$ is a basis for ${\mathbb R}$ and do the Gram–Schmidt process again. Then in the end we have basis $\{ w_1, \ldots, w_k, u_1, \ldots, u_{n-k}\}$ of ${\mathbb R}^n$, where $\{ u_1, \ldots, u_{n-k}\}$ is basis for $V^\perp}$. – Janko Bracic Jan 19 '15 at 15:17
• I do not know how to find a group vectors $x_{1},x_2,\cdot\cdot\cdot,x_{n-k}$? Do you mean the above vectors are arbitrarily selected from $\mathbb{R}^n$? How can you guarantee that vectors are linear independent? – Dajiang Lei Jan 19 '15 at 15:32
• If $\{ v_1, \ldots, v_k\}$ is a basis for $V$ and after you can find $x_1, \ldots, x_{n-k}$ such that $\{ w_1, \ldots, w_k, x_1, \ldots, x_{n-k}\}$ is a basis for ${\mathbb R}$, then $x_1, \ldots, x_{n-k}$ must be linearly independent. – Janko Bracic Jan 19 '15 at 15:36
• I think that your method is impractical. To a theory analysis, it works. But we can not find $n-k$ linearly independent vectors in $\mathbb{R}^n$ easily. – Dajiang Lei Jan 19 '15 at 15:50

What you want is the kernel (null-space) of the matrix $$\pmatrix{ -&v_1^T&-\\ -&v_2^T&-\\ &\vdots\\ -&v_k^T&- }$$ this may be found by row-reduction. If each of the $v_i$ are mutually orthogonal, however, using the Gram Schmidt process is faster.

Gram-Schmidt process: let $e_1,\dots,e_n$ denote the standard basis vectors of $\Bbb R^n$. Begin by row-reducing the matrix $$\pmatrix{ v_1 & \cdots & v_k & e_1 & \cdots & e_n }$$ there will be $n$ pivot columns once this matrix is row-reduced. $k$ of them will be in the first $k$ columns, and the rest fall in the last $n$ positions.

Let $x_1,\dots,x_{n-k}$ be the vectors $e_i$ such that $e_i$ became a pivot.

Apply the Gram Schmidt process to $\{v_1,\dots,v_k,x_1,\dots,x_{n-k}\}$.

• Do you mean the null-space of $V^{T}$ is the complement orthogonal subspace of $V$? – Dajiang Lei Jan 19 '15 at 15:53
• Calling this matrix $V^T$ would imply that $V$ is a matrix; $V$ is not a matrix, it's a subspace. However, the null-space of the matrix I describe above is indeed $V^\perp$, the orthogonal complement subspace to $V$. – Omnomnomnom Jan 19 '15 at 15:56
• In general, we have $$\operatorname{Image}(A^T) = \operatorname{Nullspace}(A)^\perp$$ for any matrix $A$. – Omnomnomnom Jan 19 '15 at 15:58
• You are right. V is not a matrix, just a subspace. I think you give the right answer. You said that "using the Gram Schmidt process is faster". Do you mean that first I should transform the basis $(v_1,\cdot\cdot\cdot,v_k)$ to orthogonal basis $(v_1^{\prime},\cdot\cdot\cdot,v_k^{\prime})$, then construct the matrix constructed by $(v_1^{\prime},\cdot\cdot\cdot,v_k^{\prime})$, finally work out the null space of the aforementioned matrix? – Dajiang Lei Jan 19 '15 at 16:04
• I see your latest edit. You are genius. You completely solve my problem. But I can not know "Let $x_1,\cdot\cdot\cdot,x_{n−k}$ be the vectors $e_i$ such that $e_i$ became a pivot". Why? – Dajiang Lei Jan 19 '15 at 16:24