This is documentation for Mathematica 8, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.1)


gives the rank of the matrix m.
  • MatrixRank works on both numerical and symbolic matrices.
  • The rank of a matrix is the number of linearly independent rows or columns.
  • MatrixRank[m, Tolerance->t] gives the minimum rank with each element in a numerical matrix assumed to be correct only to within tolerance t.
Find the number of linearly independent rows:
Find the number of linearly independent rows:
Click for copyable input
MatrixRank can handle rectangular matrices:
MatrixRank assumes all symbols to be independent:
MatrixRank for a machine-number matrix:
Find the matrix rank for a complex-valued matrix:
Find the rank of a sparse matrix:
The rank of a matrix depends on the modulus used:
With ordinary arithmetic, m has the full rank of 3:
With arithmetic modulo 5, the rank is only 2:
The setting of Tolerance can affect the estimated rank for numerical ill-conditioned matrices:
In exact arithmetic, has full rank:
With machine arithmetic, the default is to consider elements that are too small as zero:
With zero tolerance, even small terms may be taken into account:
With a tolerance greater than the pivot in the middle row, the last two rows are considered zero:
Most but not all random 10×10 0-1 matrices have full rank:
Estimate the average rank of a random 10×10 0-1 matrix:
Find the ranks of coprimality arrays:
MatrixRank[m] is equal to Length[SingularValueList[m]]:
MatrixRank[m] plus the dimension of the null space is equal to the number of columns of m:
The column and row rank of a matrix are equal:
The outer product of vectors has matrix rank 1:
MatrixRank may depend on the precision of the given matrix:
Use exact arithmetic to compute the matrix rank exactly:
Use machine arithmetic. Machine numbers cannot distinguish between and :
Use 24-digit-precision arithmetic:
New in 5 | Last modified in 6