4

Suppose we have:

$$ S = \left[ \begin{matrix} 0 & 1 & 0 \\ 0 & 0 & 1 \\ 0 & 0 & 0 \\ \end{matrix} \right]$$

$$ X_0 = \left[ \begin{matrix} a & b & c \\ d & e & f \\ g & h & i \\ j & k & l \\ \end{matrix} \right]$$

$$ X_1 = X_0S + \left[ \begin{matrix} 0 & 0 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 0 \\ 1 & 1 & 1 \\ \end{matrix} \right] \left[ \begin{matrix} A & 0 & 0 \\ 0 & B & 0 \\ 0 & 0 & C \\ \end{matrix}\right] $$

Suppose we know $[X_0^{T}X_0]^{-1}$. Are there any matrix identities that would let us calculate $[X_1^{T}X_1]^{-1}$ quickly, rather than having to apply a matrix inversion algorithm to it?

I would like to generalise the result to cases where $X_0$ is $n * m$, where n and m can get very large.

1 Answers1

1

$X_1$ is a rank-$2$ perturbation of $X_0 R$, where $R$ is the permutation matrix $\left[\matrix{0 & 1 & 0\cr 0 & 0 & 1\cr 1 & 0 & 0\cr}\right]$. So if we write $X_1 = X_0 R + C$, we have $$ X_1^T X_1 = R^T X_0^T X_0 R + C^T X_0 R + (R^T X_0^T + C^T) C$$ where each of the last two terms has rank at most $2$, and you can apply the Woodbury matrix identity twice: see Wikipedia . This won't be very useful in the $3 \times 4$ case, but in a generalization where $m$ and $n$ are large it may be.

Robert Israel
  • 448,999