generalizing Sherman–Morrison–Woodbury formula to more than 2 matrices?

913 Views Asked by At

Is there a generalization of Sherman–Morrison–Woodbury formula to find inverses of sums of more than 2 matrices? https://en.wikipedia.org/wiki/Sherman%E2%80%93Morrison_formula seems to be for 2 matrices.

1

There are 1 best solutions below

0
On

The Sherman-Morrison-Woodbury formula lets you find the inverse of a matrix $A$ plus a rank-$1$ matrix $vv^T$.

The natural generalization is the Woodbury matrix identity which let's you find the inverse of a matrix $A$ plus a rank-$k$ matrix $UCV^T$ (where $U,V \in \mathbb{R}^{n \times k}$ and $C \in \mathbb{R}^{k \times k}$).

If you want the inverse of a sum of three matrices $A + U_1C_1V_1^T + U_2C_2V_2^T$ where $U_i,V_i \in \mathbb{R}^{n \times k_i}$ and $C_i \in \mathbb{R}^{k_i \times k_i}$ (so the last two have ranks at most $k_1$ and $k_2$ respectively), then you can combine the two low-rank matrices into one matrix whose rank is at most $k_1+k_2$. To do this, set $U = \begin{bmatrix}U_1 & U_2\end{bmatrix}$, $V = \begin{bmatrix}V_1 & V_2\end{bmatrix}$, and $C = \begin{bmatrix}C_1 & 0 \\ 0 & C_2\end{bmatrix}$, and then write $A + U_1C_1V_1^T + U_2C_2V_2^T = A+UCV^T$. Then, just apply the Woodbury matrix identity.