Skip to content

Fundamental Theorem of Linear Algebra


Theorem

Let AA be a real m×nm\times n matrix of rank rr. Its four fundamental subspaces are

  • the row space Row⁡(A)⊆Rn\operatorname{Row}(A)\subseteq\mathbb{R}^n and the null space (kernel) Null⁡(A)={x ⁣:Ax=0}⊆Rn\operatorname{Null}(A)=\{\boldsymbol{x}\colon A\boldsymbol{x}=\boldsymbol{0}\}\subseteq\mathbb{R}^n;
  • the column space (range) Col⁡(A)={Ax ⁣:x∈Rn}⊆Rm\operatorname{Col}(A)=\{A\boldsymbol{x}\colon\boldsymbol{x}\in\mathbb{R}^n\}\subseteq\mathbb{R}^m and the null space of A⊤A^{\top}, Null⁡(A⊤)={y ⁣:A⊤y=0}⊆Rm\operatorname{Null}(A^{\top})=\{\boldsymbol{y}\colon A^{\top}\boldsymbol{y}=\boldsymbol{0}\}\subseteq\mathbb{R}^m.

Then, with respect to the dot product,

  1. (dimensions) dim⁡Row⁡(A)=r\dim\operatorname{Row}(A)=r, dim⁡Null⁡(A)=n−r\dim\operatorname{Null}(A)=n-r, dim⁡Col⁡(A)=r\dim\operatorname{Col}(A)=r, dim⁡Null⁡(A⊤)=m−r\dim\operatorname{Null}(A^{\top})=m-r;
  2. (orthogonality) Null⁡(A)=Row⁡(A)⊥\operatorname{Null}(A)=\operatorname{Row}(A)^\perp and Null⁡(A⊤)=Col⁡(A)⊥\operatorname{Null}(A^{\top})=\operatorname{Col}(A)^\perp.

Consequently Rn=Row⁡(A)⊕Null⁡(A)\mathbb{R}^n=\operatorname{Row}(A)\oplus\operatorname{Null}(A) and Rm=Col⁡(A)⊕Null⁡(A⊤)\mathbb{R}^m=\operatorname{Col}(A)\oplus\operatorname{Null}(A^{\top}), both direct sums of mutually orthogonal subspaces. Math II writes ker⁡A\ker A and range⁡A\operatorname{range}A for Null⁡(A)\operatorname{Null}(A) and Col⁡(A)\operatorname{Col}(A). The course gives the fourth subspace, Null⁡(A⊤)\operatorname{Null}(A^{\top}), no separate name; some textbooks call it the left null space.


Interpretation

Part 1 combines the Fundamental Theorem of Linear Maps (rank–nullity, dim⁡Null⁡(A)+dim⁡Col⁡(A)=n\dim\operatorname{Null}(A)+\dim\operatorname{Col}(A)=n) with the fact that row rank equals column rank, applied to both AA and its transpose.

Two split boxes: R^n as row space plus orthogonal null space, R^m as column space plus the orthogonal null space of A transpose, with A mapping row space to column space and null space to 0.

In the figure the domain Rn\mathbb{R}^n is split into the row space (dimension rr) and the null space (dimension n−rn-r), and the codomain Rm\mathbb{R}^m into the column space (dimension rr) and the null space of A⊤A^{\top} (dimension m−rm-r); the right-angle marks stand for the orthogonality in Part 2. The matrix AA carries the row space one-to-one onto the column space and sends the whole null space to 0\boldsymbol{0}. In the example below, r=1r=1, n=2n=2, m=3m=3, so the four dimensions are 1,1,1,21,1,1,2.

Part 2 is almost a one-line proof. Ax=0A\boldsymbol{x}=\boldsymbol{0} says that every row of AA has dot product 00 with x\boldsymbol{x}, so x\boldsymbol{x} is orthogonal to all rows and hence to their span; this is exactly membership of the orthogonal complement of the row space. Applying the same argument to A⊤A^{\top} gives the second identity.

The pairs live in different spaces: row space and null space in the domain Rn\mathbb{R}^n, column space and Null⁡(A⊤)\operatorname{Null}(A^{\top}) in the codomain Rm\mathbb{R}^m. Row space and column space have the same dimension rr. For a non-square matrix they lie in different spaces, and even for a square matrix they are in general neither equal nor orthogonal.


Key Results

  • Since Col⁡(A)=Null⁡(A⊤)⊥\operatorname{Col}(A)=\operatorname{Null}(A^{\top})^\perp, Ax=bA\boldsymbol{x}=\boldsymbol{b} is solvable if and only if y⊤b=0\boldsymbol{y}^{\top}\boldsymbol{b}=0 for every y\boldsymbol{y} with A⊤y=0A^{\top}\boldsymbol{y}=\boldsymbol{0}.
  • Every x∈Rn\boldsymbol{x}\in\mathbb{R}^n splits uniquely as x=xr+xn\boldsymbol{x}=\boldsymbol{x}_r+\boldsymbol{x}_n with xr∈Row⁡(A)\boldsymbol{x}_r\in\operatorname{Row}(A), xn∈Null⁡(A)\boldsymbol{x}_n\in\operatorname{Null}(A), and Ax=AxrA\boldsymbol{x}=A\boldsymbol{x}_r.
  • AA restricted to the row space is a bijection onto the column space.
  • Full column rank (r=nr=n) holds if and only if Null⁡(A)={0}\operatorname{Null}(A)=\{\boldsymbol{0}\}; full row rank (r=mr=m) holds if and only if Null⁡(A⊤)={0}\operatorname{Null}(A^{\top})=\{\boldsymbol{0}\}, if and only if Ax=bA\boldsymbol{x}=\boldsymbol{b} is solvable for every b\boldsymbol{b}.
  • Null⁡(A⊤A)=Null⁡(A)\operatorname{Null}(A^{\top}A)=\operatorname{Null}(A), so rank⁡(A⊤A)=rank⁡A\operatorname{rank}(A^{\top}A)=\operatorname{rank}A; this is what makes the normal equations of least squares work.

Examples

Let

A=(122436),A=\begin{pmatrix}1&2\\2&4\\3&6\end{pmatrix},

so m=3m=3, n=2n=2 and r=1r=1.

  • Row space: span⁡{(1,2)⊤}\operatorname{span}\{(1,2)^{\top}\}, dimension r=1r=1.
  • Null space: x1+2x2=0x_1+2x_2=0, so span⁡{(−2,1)⊤}\operatorname{span}\{(-2,1)^{\top}\}, dimension n−r=1n-r=1; indeed (1,2)⋅(−2,1)=0(1,2)\cdot(-2,1)=0.
  • Column space: span⁡{(1,2,3)⊤}\operatorname{span}\{(1,2,3)^{\top}\}, dimension r=1r=1.
  • Null space of A⊤A^{\top}: y1+2y2+3y3=0y_1+2y_2+3y_3=0, spanned by y1=(−2,1,0)⊤\boldsymbol{y}_1=(-2,1,0)^{\top} and y2=(−3,0,1)⊤\boldsymbol{y}_2=(-3,0,1)^{\top}, dimension m−r=2m-r=2; both are orthogonal to (1,2,3)⊤(1,2,3)^{\top}.

Solvability: for b=(1,0,0)⊤\boldsymbol{b}=(1,0,0)^{\top}, y1⊤b=−2≠0\boldsymbol{y}_1^{\top}\boldsymbol{b}=-2\neq0, so Ax=bA\boldsymbol{x}=\boldsymbol{b} has no solution. For b=(2,4,6)⊤\boldsymbol{b}=(2,4,6)^{\top}, y1⊤b=y2⊤b=0\boldsymbol{y}_1^{\top}\boldsymbol{b}=\boldsymbol{y}_2^{\top}\boldsymbol{b}=0, and x=(2,0)⊤\boldsymbol{x}=(2,0)^{\top} solves it.


Prerequisites



Sources

Aliases: four fundamental subspaces theorem, theorem of the four subspaces Keywords: four fundamental subspaces, left null space, Col(A), Row(A), Null(A), Null(A) = Row(A)^⊥, Null(A^T) = Col(A)^⊥, r, n-r, r, m-r Symbols: element of, real numbers, subset

Last updated: 16 October 2026 22:28