This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: "Invertible matrix" – news · newspapers · books · scholar · JSTOR (September 2020) (Learn how and when to remove this template message) This article may be too technical for most readers to understand. Please help improve it to make it understandable to non-experts, without removing the technical details. (August 2021) (Learn how and when to remove this template message) (Learn how and when to remove this template message)

In linear algebra, an n-by-n square matrix A is called invertible (also nonsingular, nondegenerate or —rarely used— regular) if there exists an n-by-n square matrix B such that

where In denotes the n-by-n identity matrix and the multiplication used is ordinary matrix multiplication.[1] If this is the case, then the matrix B is uniquely determined by A, and is called the (multiplicative) inverse of A, denoted by A−1. Matrix inversion is the process of finding the inverse matrix of an invertible matrix.[citation needed]

Over a field, a square matrix that is not invertible is called singular or degenerate. A square matrix with entries in a field is singular if and only if its determinant is zero. Singular matrices are rare in the sense that if a square matrix's entries are randomly selected from any bounded region on the number line or complex plane, the probability that the matrix is singular is 0, that is, it will "almost never" be singular. Non-square matrices, i.e. m-by-n matrices for which mn, do not have an inverse. However, in some cases such a matrix may have a left inverse or right inverse. If A is m-by-n and the rank of A is equal to n, (nm), then A has a left inverse, an n-by-m matrix B such that BA = In. If A has rank m (mn), then it has a right inverse, an n-by-m matrix B such that AB = Im.

While the most common case is that of matrices over the real or complex numbers, all these definitions can be given for matrices over any algebraic structure equipped with addition and multiplication (i.e. rings). However, in the case of a ring being commutative, the condition for a square matrix to be invertible is that its determinant is invertible in the ring, which in general is a stricter requirement than it being nonzero. For a noncommutative ring, the usual determinant is not defined. The conditions for existence of left-inverse or right-inverse are more complicated, since a notion of rank does not exist over rings.

The set of n × n invertible matrices together with the operation of matrix multiplication and entries from ring R form a group, the general linear group of degree n, denoted GLn(R).


The invertible matrix theorem

Let A be a square n-by-n matrix over a field K (e.g., the field of real numbers). The following statements are equivalent, i.e., they are either all true or all false for any given matrix:[2]

Other properties

Furthermore, the following properties hold for an invertible matrix A:

The rows of the inverse matrix V of a matrix U are orthonormal to the columns of U (and vice versa interchanging rows for columns). To see this, suppose that UV = VU = I where the rows of V are denoted as and the columns of U as for Then clearly, the Euclidean inner product of any two This property can also be useful in constructing the inverse of a square matrix in some instances, where a set of orthogonal vectors (but not necessarily orthonormal vectors) to the columns of U are known. In which case, one can apply the iterative Gram–Schmidt process to this initial set to determine the rows of the inverse V.

A matrix that is its own inverse (i.e., a matrix A such that A = A−1, and consequently A2 = I), is called an involutory matrix.

In relation to its adjugate

The adjugate of a matrix A can be used to find the inverse of A as follows:

If A is an invertible matrix, then

In relation to the identity matrix

It follows from the associativity of matrix multiplication that if

for finite square matrices A and B, then also



Over the field of real numbers, the set of singular n-by-n matrices, considered as a subset of is a null set, that is, has Lebesgue measure zero. This is true because singular matrices are the roots of the determinant function. This is a continuous function because it is a polynomial in the entries of the matrix. Thus in the language of measure theory, almost all n-by-n matrices are invertible.

Furthermore, the n-by-n invertible matrices are a dense open set in the topological space of all n-by-n matrices. Equivalently, the set of singular matrices is closed and nowhere dense in the space of n-by-n matrices.

In practice however, one may encounter non-invertible matrices. And in numerical calculations, matrices which are invertible, but close to a non-invertible matrix, can still be problematic; such matrices are said to be ill-conditioned.


An example with rank of n − 1 is a non-invertible matrix

We can see the rank of this 2-by-2 matrix is 1, which is n − 1 ≠ n, so it is non-invertible.

Consider the following 2-by-2 matrix:

The matrix is invertible. To check this, one can compute that , which is non-zero.

As an example of a non-invertible, or singular, matrix, consider the matrix

The determinant of is 0, which is a necessary and sufficient condition for a matrix to be non-invertible.

Methods of matrix inversion

Gaussian elimination

Gaussian elimination is a useful and easy way to compute the inverse of a matrix. To compute a matrix inverse using this method, an augmented matrix is first created with the left side being the matrix to invert and the right side being the identity matrix. Then, Gaussian elimination is used to convert the left side into the identity matrix, which causes the right side to become the inverse of the input matrix.

For example, take the following matrix:

The first step to compute its inverse is to create the augmented matrix

Call the first row of this matrix and the second row . Then, add row 1 to row 2 This yields

Next, subtract row 2, multiplied by 3, from row 1 which yields

Finally, multiply row 1 by −1 and row 2 by 2 This yields the identity matrix on the left side and the inverse matrix on the right:


The reason it works is that the process of Gaussian elimination can be viewed as a sequence of applying left matrix multiplication using elementary row operations using elementary matrices (), such as

Applying right-multiplication using we get And the right side which is the inverse we want.

To obtain we create the augumented matrix by combining A with I and applying Gaussian elimination. The two portions will be transformed using the same sequence of elementary row operations. When the left portion becomes I, the right portion applied the same elementary row operation sequence will become A−1.

Newton's method

A generalization of Newton's method as used for a multiplicative inverse algorithm may be convenient, if it is convenient to find a suitable starting seed:

Victor Pan and John Reif have done work that includes ways of generating a starting seed.[4][5]

Newton's method is particularly useful when dealing with families of related matrices that behave enough like the sequence manufactured for the homotopy above: sometimes a good starting point for refining an approximation for the new inverse can be the already obtained inverse of a previous matrix that nearly matches the current matrix, for example, the pair of sequences of inverse matrices used in obtaining matrix square roots by Denman–Beavers iteration; this may need more than one pass of the iteration at each new matrix, if they are not close enough together for just one to be enough. Newton's method is also useful for "touch up" corrections to the Gauss–Jordan algorithm which has been contaminated by small errors due to imperfect computer arithmetic.

Cayley–Hamilton method

The Cayley–Hamilton theorem allows the inverse of A to be expressed in terms of det(A), traces and powers of A:[6]

where n is size of A, and tr(A) is the trace of matrix A given by the sum of the main diagonal. The sum is taken over s and the sets of all satisfying the linear Diophantine equation

The formula can be rewritten in terms of complete Bell polynomials of arguments as

This is described in more detail under Cayley–Hamilton method.


Main article: Eigendecomposition of a matrix

If matrix A can be eigendecomposed, and if none of its eigenvalues are zero, then A is invertible and its inverse is given by

where Q is the square (N × N) matrix whose ith column is the eigenvector of A, and Λ is the diagonal matrix whose diagonal entries are the corresponding eigenvalues, that is, If A is symmetric, Q is guaranteed to be an orthogonal matrix, therefore Furthermore, because Λ is a diagonal matrix, its inverse is easy to calculate:

Cholesky decomposition

Main article: Cholesky decomposition

If matrix A is positive definite, then its inverse can be obtained as

where L is the lower triangular Cholesky decomposition of A, and L* denotes the conjugate transpose of L.

Analytic solution

Main article: Cramer's rule

Writing the transpose of the matrix of cofactors, known as an adjugate matrix, can also be an efficient way to calculate the inverse of small matrices, but this recursive method is inefficient for large matrices. To determine the inverse, we calculate a matrix of cofactors:

so that

where |A| is the determinant of A, C is the matrix of cofactors, and CT represents the matrix transpose.

Inversion of 2 × 2 matrices

The cofactor equation listed above yields the following result for 2 × 2 matrices. Inversion of these matrices can be done as follows:[7]

This is possible because 1/(adbc) is the reciprocal of the determinant of the matrix in question, and the same strategy could be used for other matrix sizes.

The Cayley–Hamilton method gives

Inversion of 3 × 3 matrices

A computationally efficient 3 × 3 matrix inversion is given by

(where the scalar A is not to be confused with the matrix A).

If the determinant is non-zero, the matrix is invertible, with the entries of the intermediary matrix on the right side above given by

The determinant of A can be computed by applying the rule of Sarrus as follows:

The Cayley–Hamilton decomposition gives

The general 3 × 3 inverse can be expressed concisely in terms of the cross product and triple product. If a matrix (consisting of three column vectors, , , and ) is invertible, its inverse is given by

The determinant of A, det(A), is equal to the triple product of x0, x1, and x2—the volume of the parallelepiped formed by the rows or columns:

The correctness of the formula can be checked by using cross- and triple-product properties and by noting that for groups, left and right inverses always coincide. Intuitively, because of the cross products, each row of A–1 is orthogonal to the non-corresponding two columns of A (causing the off-diagonal terms of be zero). Dividing by

causes the diagonal entries of I = A−1A to be unity. For example, the first diagonal is:

Inversion of 4 × 4 matrices

With increasing dimension, expressions for the inverse of A get complicated. For n = 4, the Cayley–Hamilton method leads to an expression that is still tractable:

Blockwise inversion

Matrices can also be inverted blockwise by using the following analytic inversion formula:[8]






where A, B, C and D are matrix sub-blocks of arbitrary size. (A must be square, so that it can be inverted. Furthermore, A and DCA−1B must be nonsingular.[9]) This strategy is particularly advantageous if A is diagonal and DCA−1B (the Schur complement of A) is a small matrix, since they are the only matrices requiring inversion.

This technique was reinvented several times and is due to Hans Boltz (1923),[citation needed] who used it for the inversion of geodetic matrices, and Tadeusz Banachiewicz (1937), who generalized it and proved its correctness.

The nullity theorem says that the nullity of A equals the nullity of the sub-block in the lower right of the inverse matrix, and that the nullity of B equals the nullity of the sub-block in the upper right of the inverse matrix.

The inversion procedure that led to Equation (1) performed matrix block operations that operated on C and D first. Instead, if A and B are operated on first, and provided D and ABD−1C are nonsingular,[10] the result is






Equating Equations (1) and (2) leads to






where Equation (3) is the Woodbury matrix identity, which is equivalent to the binomial inverse theorem.

If A and D are both invertible, then the above two block matrix inverses can be combined to provide the simple factorization






By the Weinstein–Aronszajn identity, one of the two matrices in the block-diagonal matrix is invertible exactly when the other is.

This formula simplifies significantly when the upper right block matrix B is the zero matrix. This formulation is useful when the matrices A and D have relatively simple inverse formulas (or pseudo inverses in the case where the blocks are not all square. In this special case, the block matrix inversion formula stated in full generality above becomes

If the given invertible matrix is a symmetric matrix with invertible block A the following block inverse formula holds[11]






where . This requires 2 inversions of the half-sized matrices A and S and only 4 multiplications of half-sized matrices, if organized properly together with some additions, subtractions, negations and transpositions of negligible complexity. Any matrix has an associated positive semidefinite, symmetric matrix , which is exactly invertible (and positive definite), if and only if is invertible. By writing matrix inversion can be reduced to inverting symmetric matrics and 2 additional matrix multiplications, because the positive definite matrix satisfies the invertibility condition for its left upper block A.

These formulas together allow to construct a divide and conquer algorithm that uses blockwise inversion of associated symmetric matrices to invert a matrix with the same time complexity as the matrix multiplication algorithm that is used internally.[11] Research into matrix multiplication complexity shows that there exist matrix multiplication algorithms with a complexity of O(n2.3727) operations, while the best proven lower bound is Ω(n2 log n).[12]

By Neumann series

If a matrix A has the property that

then A is nonsingular and its inverse may be expressed by a Neumann series:[13]

Truncating the sum results in an "approximate" inverse which may be useful as a preconditioner. Note that a truncated series can be accelerated exponentially by noting that the Neumann series is a geometric sum. As such, it satisfies


Therefore, only 2L − 2 matrix multiplications are needed to compute 2L terms of the sum.

More generally, if A is "near" the invertible matrix X in the sense that

then A is nonsingular and its inverse is

If it is also the case that AX has rank 1 then this simplifies to

p-adic approximation

If A is a matrix with integer or rational entries and we seek a solution in arbitrary-precision rationals, then a p-adic approximation method converges to an exact solution in O(n4 log2 n), assuming standard O(n3) matrix multiplication is used.[14] The method relies on solving n linear systems via Dixon's method of p-adic approximation (each in O(n3 log2 n)) and is available as such in software specialized in arbitrary-precision matrix operations, for example, in IML.[15]

Reciprocal basis vectors method

Main article: Reciprocal basis

Given an n × n square matrix , , with n rows interpreted as n vectors (Einstein summation assumed) where the are a standard orthonormal basis of Euclidean space (), then using Clifford algebra (or geometric algebra) we compute the reciprocal (sometimes called dual) column vectors:

as the columns of the inverse matrix Note that, the place "" indicates that "" is removed from that place in the above expression for . We then have , where is the Kronecker delta. We also have , as required. If the vectors are not linearly independent, then and the matrix is not invertible (has no inverse).

Derivative of the matrix inverse

Suppose that the invertible matrix A depends on a parameter t. Then the derivative of the inverse of A with respect to t is given by[16]

To derive the above expression for the derivative of the inverse of A, one can differentiate the definition of the matrix inverse and then solve for the inverse of A:

Subtracting from both sides of the above and multiplying on the right by gives the correct expression for the derivative of the inverse:

Similarly, if is a small number then

More generally, if


Given a positive integer ,


Generalized inverse

Some of the properties of inverse matrices are shared by generalized inverses (for example, the Moore–Penrose inverse), which can be defined for any m-by-n matrix.[17]


For most practical applications, it is not necessary to invert a matrix to solve a system of linear equations; however, for a unique solution, it is necessary that the matrix involved be invertible.

Decomposition techniques like LU decomposition are much faster than inversion, and various fast algorithms for special classes of linear systems have also been developed.

Regression/least squares

Although an explicit inverse is not necessary to estimate the vector of unknowns, it is the easiest way to estimate their accuracy, found in the diagonal of a matrix inverse (the posterior covariance matrix of the vector of unknowns). However, faster algorithms to compute only the diagonal entries of a matrix inverse are known in many cases.[18]

Matrix inverses in real-time simulations

Matrix inversion plays a significant role in computer graphics, particularly in 3D graphics rendering and 3D simulations. Examples include screen-to-world ray casting, world-to-subspace-to-world object transformations, and physical simulations.

Matrix inverses in MIMO wireless communication

Matrix inversion also plays a significant role in the MIMO (Multiple-Input, Multiple-Output) technology in wireless communications. The MIMO system consists of N transmit and M receive antennas. Unique signals, occupying the same frequency band, are sent via N transmit antennas and are received via M receive antennas. The signal arriving at each receive antenna will be a linear combination of the N transmitted signals forming an N × M transmission matrix H. It is crucial for the matrix H to be invertible for the receiver to be able to figure out the transmitted information.

See also


  1. ^ Axler, Sheldon (18 December 2014). Linear Algebra Done Right. Undergraduate Texts in Mathematics (3rd ed.). Springer Publishing (published 2015). p. 296. ISBN 978-3-319-11079-0.
  2. ^ Weisstein, Eric W. "Invertible Matrix Theorem". Retrieved 2020-09-08.
  3. ^ Horn, Roger A.; Johnson, Charles R. (1985). Matrix Analysis. Cambridge University Press. p. 14. ISBN 978-0-521-38632-6..
  4. ^ Pan, Victor; Reif, John (1985), Efficient Parallel Solution of Linear Systems, Proceedings of the 17th Annual ACM Symposium on Theory of Computing, Providence: ACM
  5. ^ Pan, Victor; Reif, John (1985), Harvard University Center for Research in Computing Technology Report TR-02-85, Cambridge, MA: Aiken Computation Laboratory
  6. ^ A proof can be found in the Appendix B of Kondratyuk, L. A.; Krivoruchenko, M. I. (1992). "Superconducting quark matter in SU(2) color group". Zeitschrift für Physik A. 344 (1): 99–115. Bibcode:1992ZPhyA.344...99K. doi:10.1007/BF01291027. S2CID 120467300.
  7. ^ Strang, Gilbert (2003). Introduction to linear algebra (3rd ed.). SIAM. p. 71. ISBN 978-0-9614088-9-3., Chapter 2, page 71
  8. ^ Tzon-Tzer, Lu; Sheng-Hua, Shiou (2002). "Inverses of 2 × 2 block matrices". Computers & Mathematics with Applications. 43 (1–2): 119–129. doi:10.1016/S0898-1221(01)00278-4.
  9. ^ Bernstein, Dennis (2005). Matrix Mathematics. Princeton University Press. p. 44. ISBN 978-0-691-11802-4.
  10. ^ Bernstein, Dennis (2005). Matrix Mathematics. Princeton University Press. p. 45. ISBN 978-0-691-11802-4.
  11. ^ a b T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein, Introduction to Algorithms, 3rd ed., MIT Press, Cambridge, MA, 2009, §28.2.
  12. ^ Ran Raz. On the complexity of matrix product. In Proceedings of the thirty-fourth annual ACM symposium on Theory of computing. ACM Press, 2002. doi:10.1145/509907.509932.
  13. ^ Stewart, Gilbert (1998). Matrix Algorithms: Basic decompositions. SIAM. p. 55. ISBN 978-0-89871-414-2.
  14. ^ Haramoto, H.; Matsumoto, M. (2009). "A p-adic algorithm for computing the inverse of integer matrices". Journal of Computational and Applied Mathematics. 225 (1): 320–322. Bibcode:2009JCoAM.225..320H. doi:10.1016/
  15. ^ "IML - Integer Matrix Library". Retrieved 14 April 2018.
  16. ^ Magnus, Jan R.; Neudecker, Heinz (1999). Matrix Differential Calculus : with Applications in Statistics and Econometrics (Revised ed.). New York: John Wiley & Sons. pp. 151–152. ISBN 0-471-98633-X.
  17. ^ Roman, Stephen (2008), Advanced Linear Algebra, Graduate Texts in Mathematics (Third ed.), Springer, p. 446, ISBN 978-0-387-72828-5.
  18. ^ Lin, Lin; Lu, Jianfeng; Ying, Lexing; Car, Roberto; E, Weinan (2009). "Fast algorithm for extracting the diagonal of the inverse matrix with application to the electronic structure analysis of metallic systems". Communications in Mathematical Sciences. 7 (3): 755–777. doi:10.4310/CMS.2009.v7.n3.a12.

Further reading

This article's use of external links may not follow Wikipedia's policies or guidelines. Please improve this article by removing excessive or inappropriate external links, and converting useful links where appropriate into footnote references. (June 2015) (Learn how and when to remove this template message)