Inverse of a matrix

I'm trying to show that $$P^H ( I_M + PBP^H) ^{-1} P = \big( (P^H P)^{-1} + B \big)^{-1},$$ where $P$ is an $M$-by-$N$ matrix, $I_M$ is the $M$-by-$M$ identity matrix, $B$ is an $N$-by-$N$ matrix, and $(P^H P)$ is invertible.

I've used various versions of matrix inversion lemmas, but I'm stuck.

How can the above equality be shown?

• Have you tried some low-dimensional cases with explicit values for $M$ and $N$? – Deane Jan 3 '14 at 18:16
• I verified that equation by Matlab, and it seems to be true for arbitrary integers M and N. Alsi, it can be verified mathematically with Ardakov's answer below. – user45020 Jan 3 '14 at 20:53

Let $X = P^H(I + PBP^H)^{-1}P$ and $Y = (P^HP)^{-1} + B$. Since $X$ and $Y$ are both square matrices of the same size ($N$-by-$N$), it's enough to show that $XY = I$ say.
Now $Y = (I + BP^H P)(P^HP)^{-1}$ and $P(BP^HP) = (PBP^H)P$. So
$XY = P^H ( I + PBP^H)^{-1}P (I + BP^HP)(P^HP)^{-1} = P^H(I + PBP^H)^{-1}(I + PBP^H)P (P^HP)^{-1} = P^HP (P^HP)^{-1} =I.$