HOME

TheInfoList



OR:

In
mathematics Mathematics is an area of knowledge that includes the topics of numbers, formulas and related structures, shapes and the spaces in which they are contained, and quantities and their changes. These topics are represented in modern mathematics ...
(specifically
linear algebra Linear algebra is the branch of mathematics concerning linear equations such as: :a_1x_1+\cdots +a_nx_n=b, linear maps such as: :(x_1, \ldots, x_n) \mapsto a_1x_1+\cdots +a_nx_n, and their representations in vector spaces and through matrice ...
), the Woodbury matrix identity, named after Max A. Woodbury, says that the inverse of a rank-''k'' correction of some
matrix Matrix most commonly refers to: * ''The Matrix'' (franchise), an American media franchise ** '' The Matrix'', a 1999 science-fiction action film ** "The Matrix", a fictional setting, a virtual reality environment, within ''The Matrix'' (franchi ...
can be computed by doing a rank-''k'' correction to the inverse of the original matrix. Alternative names for this formula are the matrix inversion lemma, Sherman–Morrison–Woodbury formula or just Woodbury formula. However, the identity appeared in several papers before the Woodbury report. The Woodbury matrix identity is : \left(A + UCV \right)^ = A^ - A^U \left(C^ + VA^U \right)^ VA^, where ''A'', ''U'', ''C'' and ''V'' are conformable matrices: ''A'' is ''n''×''n'', ''C'' is ''k''×''k'', ''U'' is ''n''×''k'', and ''V'' is ''k''×''n''. This can be derived using blockwise matrix inversion. While the identity is primarily used on matrices, it holds in a general ring or in an Ab-category.


Discussion

To prove this result, we will start by proving a simpler one. Replacing ''A'' and ''C'' with the identity matrix ''I'', we obtain another identity which is a bit simpler: : \left(I + UV \right)^ = I - U \left(I + VU \right)^ V. To recover the original equation from this ''reduced identity'', set U = A^X and V = CY. This identity itself can be viewed as the combination of two simpler identities. We obtain the first identity from : I = (I + P)^(I + P) = (I + P)^ + (I + P)^P, thus, : (I + P)^=I-(I + P)^P, and similarly : (I + P)^ = I - P (I + P)^. The second identity is the so-called push-through identity : (I + UV)^ U = U (I + VU)^ that we obtain from : U(I + VU)=(I + UV)U after multiplying by (I + VU)^ on the right and by (I + UV)^ on the left.


Special cases

When V, U are vectors, the identity reduces to the
Sherman–Morrison formula In mathematics, in particular linear algebra, the Sherman–Morrison formula, named after Jack Sherman and Winifred J. Morrison, computes the inverse of the sum of an invertible matrix A and the outer product, u v^\textsf, of vectors u and v. Th ...
. In the scalar case it (the reduced version) is simply : \frac = 1 - \frac.


Inverse of a sum

If ''n'' = ''k'' and ''U'' = ''V'' = ''I''''n'' is the identity matrix, then : \begin \left( + \right)^ &= A^ - A^ (B^ + A^)^ A^\\ &= ^ - ^\left(^ + \right)^. \end Continuing with the merging of the terms of the far right-hand side of the above equation results in
Hua's identity In algebra, Hua's identity named after Hua Luogeng, states that for any elements ''a'', ''b'' in a division ring, a - \left(a^ + \left(b^ - a\right)^\right)^ = aba whenever ab \ne 0, 1. Replacing b with -b^ gives another equivalent form of the id ...
:\left( + \right)^ = ^ - \left( + ^\right)^. Another useful form of the same identity is :\left( - \right)^ = ^ + ^\left( - \right)^, which has a recursive structure that yields :\left( - \right)^ = \sum_^ \left(^\right)^k^. This form can be used in perturbative expansions where ''B'' is a perturbation of ''A''.


Variations


Binomial inverse theorem

If ''A'', ''B'', ''U'', ''V'' are matrices of sizes ''n''×''n'', ''k''×''k'', ''n''×''k'', ''k''×''n'', respectively, then : \left(A + UBV\right)^ = A^ - A^UB\left(B+BVA^UB\right)^BVA^ provided ''A'' and ''B'' + ''BVA''−1''UB'' are nonsingular. Nonsingularity of the latter requires that ''B''−1 exist since it equals and the rank of the latter cannot exceed the rank of ''B''. Since ''B'' is invertible, the two ''B'' terms flanking the parenthetical quantity inverse in the right-hand side can be replaced with which results in the original Woodbury identity. A variation for when ''B'' is singular and possibly even non-square: :(A + UBV)^ = A^ - A^U(I + BVA^U)^BVA^. Formulas also exist for certain cases in which ''A'' is singular.


Pseudoinverse with positive semidefinite matrices

In general Woodbury's identity is not valid if one or more inverses are replaced by (Moore–Penrose) pseudoinverses. However, if A and C are positive semidefinite, and V = U^\mathrm H (implying that A + UCV is itself positive semidefinite), then the following formula provides a generalization: : \begin (XX^\mathrm H + YY^\mathrm H)^+ &= (ZZ^\mathrm H)^+ + (I - YZ^+)^\mathrm H X^ E X^+ (I - YZ^+), \\ Z &= (I - XX^+) Y, \\ E &= I - X^+Y (I - Z^+Z) F^ (X^+Y)^\mathrm H, \\ F &= I + (I - Z^+Z) Y^\mathrm H (XX^\mathrm H)^+ Y (I - Z^+Z), \end where A + UCU^\mathrm H can be written as XX^\mathrm H + YY^\mathrm H because any positive semidefinite matrix is equal to MM^\mathrm H for some M.


Derivations


Direct proof

The formula can be proven by checking that (A + UCV) times its alleged inverse on the right side of the Woodbury identity gives the identity matrix: : \begin & \left(A + UCV \right) \left A^ - A^U \left(C^ + VA^U \right)^ VA^ \right\\ = & \left\ + \left\ \\ = & \left\ - \left\ \\ = & I + UCVA^ - \left(U + UCVA^U\right) \left(C^ + VA^U\right)^VA^ \\ = & I + UCVA^ - UC \left(C^ + VA^U\right) \left(C^ + VA^U\right)^VA^ \\ = & I + UCVA^ - UCVA^ \\ = & I. \end


Alternative proofs

First consider these useful identities, : \begin U + UCV A^ U &= UC \left(C^ + V A^ U\right) = \left(A + UCV\right) A^ U \\ \left(A + UCV\right)^ U C &= A^U \left(C^ + VA^ U\right) ^ \end Now, : \begin A^ &= \left(A + UCV\right)^\left(A + UCV\right) A^\\ &= \left(A + UCV\right)^\left(I + UCVA^\right) \\ &= \left(A + UCV\right)^ + \left(A + UCV\right)^ UCVA^ \\ &= \left(A + UCV\right)^ + A^ U \left(C^ + VA^U \right)^ VA^. \end Deriving the Woodbury matrix identity is easily done by solving the following block matrix inversion problem : \begin A & U \\ V & -C^ \end\begin X \\ Y \end = \begin I \\ 0 \end. Expanding, we can see that the above reduces to :\begin AX + UY = I \\ VX - C^Y = 0\end which is equivalent to (A + UCV)X = I. Eliminating the first equation, we find that X = A^(I - UY), which can be substituted into the second to find VA^(I - UY) = C^Y. Expanding and rearranging, we have VA^ = \left(C^ + VA^U\right)Y, or \left(C^ + VA^U\right)^VA^ = Y. Finally, we substitute into our AX + UY = I, and we have AX + U\left(C^ + VA^U\right)^VA^ = I. Thus, :(A + UCV)^ = X = A^ - A^U\left(C^ + VA^U\right)^VA^. We have derived the Woodbury matrix identity. We start by the matrix :\begin A & U \\ V & C \end By eliminating the entry under the ''A'' (given that ''A'' is invertible) we get :\begin I & 0 \\ -VA^ & I \end \begin A & U \\ V & C \end = \begin A & U \\ 0 & C - VA^U \end Likewise, eliminating the entry above ''C'' gives :\begin A & U \\ V & C \end \begin I & -A^U \\ 0 & I \end = \begin A & 0 \\ V & C-VA^U \end Now combining the above two, we get : \begin I & 0 \\ -VA^ & I \end \begin A & U \\ V & C \end\begin I & -A^U \\ 0 & I \end = \begin A & 0 \\ 0 & C - VA^U \end Moving to the right side gives :\begin A & U \\ V & C \end = \begin I & 0 \\ VA^ & I \end \begin A & 0 \\ 0 & C - VA^U \end \begin I & A^U \\ 0 & I \end which is the LDU decomposition of the block matrix into an upper triangular, diagonal, and lower triangular matrices. Now inverting both sides gives : \begin \begin A & U \\ V & C \end^ &= \begin I & A^U \\ 0 & I \end^ \begin A & 0 \\ 0 & C - VA^U \end^ \begin I & 0 \\ VA^ & I \end^ \\ pt &= \begin I & -A^U \\ 0 & I \end \begin A^ & 0 \\ 0 & \left(C - VA^U\right)^ \end \begin I & 0 \\ -VA^ & I \end \\ pt &= \begin A^ + A^U\left(C - VA^U\right)^VA^ & -A^U\left(C - VA^U\right)^ \\ -\left(C - VA^U\right)^VA^ & \left(C - VA^U\right)^ \end \qquad\mathrm \end We could equally well have done it the other way (provided that ''C'' is invertible) i.e. : \begin A & U \\ V & C \end = \begin I & UC^ \\ 0 & I \end \begin A - UC^V & 0 \\ 0 & C \end \begin I & 0 \\ C^V & I\end Now again inverting both sides, : \begin \begin A & U \\ V & C \end^ &= \begin I & 0 \\ C^V & I\end^ \begin A - UC^V & 0 \\ 0 & C \end^ \begin I & UC^ \\ 0 & I \end^ \\ pt &= \begin I & 0 \\ -C^V & I\end \begin \left(A - UC^V\right)^ & 0 \\ 0 & C^ \end \begin I & -UC^ \\ 0 & I \end \\ pt &= \begin \left(A - UC^V\right)^ & -\left(A - UC^V\right)^UC^ \\ -C^V\left(A - UC^V\right)^ & C^ + C^V\left(A - UC^V\right)^UC^ \end \qquad\mathrm \end Now comparing elements (1, 1) of the RHS of (1) and (2) above gives the Woodbury formula :\left(A - UC^V\right)^ = A^ + A^U\left(C - VA^U\right)^VA^.


Applications

This identity is useful in certain numerical computations where ''A''−1 has already been computed and it is desired to compute (''A'' + ''UCV'')−1. With the inverse of ''A'' available, it is only necessary to find the inverse of ''C''−1 + ''VA''−1''U'' in order to obtain the result using the right-hand side of the identity. If ''C'' has a much smaller dimension than ''A'', this is more efficient than inverting ''A'' + ''UCV'' directly. A common case is finding the inverse of a low-rank update ''A'' + ''UCV'' of ''A'' (where ''U'' only has a few columns and ''V'' only a few rows), or finding an approximation of the inverse of the matrix ''A'' + ''B'' where the matrix ''B'' can be approximated by a low-rank matrix ''UCV'', for example using the
singular value decomposition In linear algebra, the singular value decomposition (SVD) is a factorization of a real or complex matrix. It generalizes the eigendecomposition of a square normal matrix with an orthonormal eigenbasis to any \ m \times n\ matrix. It is re ...
. This is applied, e.g., in the
Kalman filter For statistics and control theory, Kalman filtering, also known as linear quadratic estimation (LQE), is an algorithm that uses a series of measurements observed over time, including statistical noise and other inaccuracies, and produces estima ...
and
recursive least squares Recursive least squares (RLS) is an adaptive filter algorithm that recursively finds the coefficients that minimize a weighted linear least squares cost function relating to the input signals. This approach is in contrast to other algorithms such ...
methods, to replace the
parametric solution In mathematics, a parametric equation defines a group of quantities as functions of one or more independent variables called parameters. Parametric equations are commonly used to express the coordinates of the points that make up a geometric obj ...
, requiring inversion of a state vector sized matrix, with a condition equations based solution. In case of the Kalman filter this matrix has the dimensions of the vector of observations, i.e., as small as 1 in case only one new observation is processed at a time. This significantly speeds up the often real time calculations of the filter. In the case when ''C'' is the identity matrix ''I'', the matrix I+VA^U is known in
numerical linear algebra Numerical linear algebra, sometimes called applied linear algebra, is the study of how matrix operations can be used to create computer algorithms which efficiently and accurately provide approximate answers to questions in continuous mathematic ...
and
numerical partial differential equations Numerical methods for partial differential equations is the branch of numerical analysis that studies the numerical solution of partial differential equations (PDEs). In principle, specialized methods for hyperbolic, parabolic or elliptic parti ...
as the capacitance matrix.


See also

*
Sherman–Morrison formula In mathematics, in particular linear algebra, the Sherman–Morrison formula, named after Jack Sherman and Winifred J. Morrison, computes the inverse of the sum of an invertible matrix A and the outer product, u v^\textsf, of vectors u and v. Th ...
*
Schur complement In linear algebra and the theory of matrices, the Schur complement of a block matrix is defined as follows. Suppose ''p'', ''q'' are nonnegative integers, and suppose ''A'', ''B'', ''C'', ''D'' are respectively ''p'' × ''p'', ''p'' × ''q'', ''q'' ...
*
Matrix determinant lemma In mathematics, in particular linear algebra, the matrix determinant lemma computes the determinant of the sum of an invertible matrix A and the dyadic product, uvT, of a column vector u and a row vector vT. Statement Suppose A is an invertib ...
, formula for a rank-''k'' update to a
determinant In mathematics, the determinant is a scalar value that is a function of the entries of a square matrix. It characterizes some properties of the matrix and the linear map represented by the matrix. In particular, the determinant is nonzero if a ...
*
Invertible matrix In linear algebra, an -by- square matrix is called invertible (also nonsingular or nondegenerate), if there exists an -by- square matrix such that :\mathbf = \mathbf = \mathbf_n \ where denotes the -by- identity matrix and the multiplicati ...
* Moore–Penrose pseudoinverse#Updating the pseudoinverse


Notes

*


External links


Some matrix identities
* {{MathWorld, title=Woodbury formula, urlname=WoodburyFormula Lemmas in linear algebra Matrices Matrix theory