Woodbury matrix identity

From Wikipedia, the free encyclopedia

In mathematics (specifically linear algebra), the Woodbury matrix identity, named after Max A. Woodbury[1][2] says that the inverse of a rank-k correction of some matrix 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.[3]

The Woodbury matrix identity is [4]

 \left(A+UCV \right)^{-1} = A^{-1} - A^{-1}U \left(C^{-1}+VA^{-1}U \right)^{-1} VA^{-1},

where A, U, C and V all denote matrices of the correct size. Specifically, A is n-by-n, U is n-by-k, C is k-by-k and V is k-by-n. This can be derived using blockwise matrix inversion.

In the special case where C is the 1-by-1 unit matrix, this identity reduces to the Sherman–Morrison formula. In the special case when C is the identity matrix I, the matrix I + VA − 1U is often called the capacitance matrix.[3]

Contents

[edit] Derivation via blockwise elimination

Deriving the Woodbury matrix identity is easily done by solving the following block matrix inversion problem

\begin{bmatrix} A & U \\ V & -C^{-1} \end{bmatrix}\begin{bmatrix} X \\ Y \end{bmatrix} = \begin{bmatrix} I \\ 0 \end{bmatrix}

Expanding, we can see that the above reduces to AX + UY = I and VXC − 1Y = 0, which is equivalent to (A + UCV)X = I. Eliminating the first equation, we find that X = A − 1(IUY), which can be substituted into the second to find VA − 1(IUY) = C − 1Y. Expanding and rearranging, we have VA − 1 = (C − 1 + VA − 1U)Y, or (C − 1 + VA − 1U) − 1VA − 1 = Y. Finally, we substitute into our AX + UY = I, and we have AX + U(C − 1 + VA − 1U) − 1VA − 1 = I. Thus,

(A+UCV)^{-1} = X = A^{-1}-A^{-1}U\left(C^{-1}+VA^{-1}U\right)^{-1}VA^{-1}.

We have derived the Woodbury matrix identity.

[edit] Derivation from LDU Decomposition

We start by the matrix

\begin{bmatrix} A & U \\ V & C \end{bmatrix}

By eliminating the entry under the A (given that A is invertible) we get

\begin{bmatrix} I & 0 \\ -VA^{-1} & I \end{bmatrix} 
\begin{bmatrix} A & U \\ V & C \end{bmatrix} = \begin{bmatrix} A & U \\ 0 & C-VA^{-1}U \end{bmatrix}

Likewise, eliminating the entry above C gives

\begin{bmatrix} A & U \\ V & C \end{bmatrix} \begin{bmatrix} I & -A^{-1}U \\ 0 & I \end{bmatrix} 
= \begin{bmatrix} A & 0 \\ V & C-VA^{-1}U \end{bmatrix}

Now combining the above two, we get

\begin{bmatrix} I & 0 \\ -VA^{-1} & I \end{bmatrix} \begin{bmatrix} A & U \\ V & C \end{bmatrix} \begin{bmatrix} I & -A^{-1}U \\ 0 & I \end{bmatrix} 
= \begin{bmatrix} A & 0 \\ 0 & C-VA^{-1}U \end{bmatrix}

Moving to the right side gives

\begin{bmatrix} A & U \\ V & C \end{bmatrix} = \begin{bmatrix} I & 0 \\ VA^{-1} & I \end{bmatrix} \begin{bmatrix} A & 0 \\ 0 & C-VA^{-1}U \end{bmatrix} \begin{bmatrix} I & A^{-1}U \\ 0 & I \end{bmatrix}

which is the LDU decomposition of the block matrix into an upper triangular, diagonal, and lower triangular matrices.

Now inverting both sides, gives

\begin{bmatrix} A & U \\ V & C \end{bmatrix}^{-1} = \begin{bmatrix} I & A^{-1}U \\ 0 & I \end{bmatrix}^{-1} \begin{bmatrix} A & 0 \\ 0 & C-VA^{-1}U \end{bmatrix}^{-1} \begin{bmatrix} I & 0 \\ VA^{-1} & I \end{bmatrix}^{-1}
= \begin{bmatrix} I & -A^{-1}U \\ 0 & I \end{bmatrix} \begin{bmatrix} A^{-1} & 0 \\ 0 & (C-VA^{-1}U)^{-1} \end{bmatrix} \begin{bmatrix} I & 0 \\ -VA^{-1} & I \end{bmatrix}
= \begin{bmatrix} A^{-1}+A^{-1}U(C-VA^{-1}U)^{-1}VA^{-1} & -A^{-1}U(C-VA^{-1}U)^{-1} \\ -(C-VA^{-1}U)^{-1}VA^{-1} & (C-VA^{-1}U)^{-1} \end{bmatrix}  \qquad\mathrm{(1)}

We could equally well have done it the other way (provided that C is invertible) i.e.

\begin{bmatrix} A & U \\ V & C \end{bmatrix} = \begin{bmatrix} I & UC^{-1} \\ 0 & I \end{bmatrix} \begin{bmatrix} A-UC^{-1}V & 0 \\ 0 & C \end{bmatrix} \begin{bmatrix} I & 0 \\ C^{-1}V  & I\end{bmatrix}

Now again inverting both sides

\begin{bmatrix} A & U \\ V & C \end{bmatrix}^{-1} = \begin{bmatrix} I & 0 \\ C^{-1}V  & I\end{bmatrix}^{-1} \begin{bmatrix} A-UC^{-1}V & 0 \\ 0 & C \end{bmatrix}^{-1} \begin{bmatrix} I & UC^{-1} \\ 0 & I \end{bmatrix}^{-1}
= \begin{bmatrix} I & 0 \\ -C^{-1}V  & I\end{bmatrix} \begin{bmatrix} (A-UC^{-1}V)^{-1} & 0 \\ 0 & C^{-1} \end{bmatrix} \begin{bmatrix} I & -UC^{-1} \\ 0 & I \end{bmatrix}
= \begin{bmatrix} (A-UC^{-1}V)^{-1} & -(A-UC^{-1}V)^{-1}UC^{-1} \\ -C^{-1}V(A-UC^{-1}V)^{-1} & C^{-1}V(A-UC^{-1}V)^{-1}UC^{-1}+C^{-1} \end{bmatrix} \qquad\mathrm{(2)}

Now comparing elements (1,1) of the RHS of (1) and (2) above gives the Woodbury formula

\left( A-UC^{-1}V \right) ^{-1} = A^{-1}+A^{-1}U(C-VA^{-1}U)^{-1}VA^{-1}.


[edit] 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−1U 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.

This is applied, e.g., in the Kalman filter and recursive least squares methods, to replace the parametric solution, 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.

[edit] See also

[edit] References

  1. ^ Max A. Woodbury, Inverting modified matrices, Memorandum Rept. 42, Statistical Research Group, Princeton University, Princeton, NJ, 1950, 4pp MR38136
  2. ^ Max A. Woodbury, The Stability of Out-Input Matrices. Chicago, Ill., 1949. 5 pp. MR32564
  3. ^ a b William W. Hager, Updating the inverse of a matrix, SIAM Review 31 (1989) 221-239 DOI 10.1137/1031049 MR997457JSTOR
  4. ^ Gene H. Golub and Charles F. Van Loan, Matrix computations (3rd ed.), page 50, Johns Hopkins University Press, 1996 MR 1417720 ISBN 0-8018-5413-X; ISBN 0-8018-5414-8


[edit] External links