From a matrix can be derived several vector spaces, referred to collectively as matrix spaces.
Suppose A is an m×n matrix.
- The column space of A is the subspace of Rm comprising all vectors Ax where x is in Rn.
- The nullspace of A is the subspace of Rn comprising all vectors x such that Ax = 0.
- The row space of A is the column space of AT.
- The nullspace of AT is just that.
One basis of the column space of A is this: the set that contains column j of the matrix A just in case column j of the matrix B has a pivot.
One basis of the row space of A is the set comprising the (transposes of the) non-zero rows of the reduced matrix B.
The columns of B without pivots correspond to free variables of the homogeneous linear system
Ax = 0 .
One basis of the nullspace of A is the set containing one vector for each such free variable, namely the solution-vector in which that free variable is 1 and the other free variables are 0.
For a basis of the nullspace of AT, one just has to apply Gaussian elimination to that matrix. One can then find bases for the column and row spaces of that matrix, which are, respectively, bases for the row and column spaces of A (albeit different bases in general from the ones just described).
The rank of A is the dimension of its column space. The nullity of A is the dimension of its nullspace. Therefore:
- rank(A) + nullity(A) = n (where n is the number of columns of A).
- rank(A) = rank(AT).
- rank(A) + nullity(AT) = m (where m is the number of rows of A).