Prove that rank(A) = rank(A$^\dagger$)=rank(AA$^\dagger$)=rank(A$^\dagger$A) using the SVD decomposition.
$A^\dagger$ is a Moore-Penrose inverse of A.
I managed to prove the first equation, $rank(A) = rank(A^\dagger)$ easily using the decomposition.
What bothers me is how to finish the next one.
My attempt:
A= $U\left[\begin{matrix} \Sigma_+ & 0 \\ 0 & 0 \end{matrix}\right]V^*$ is a SVD, where $\Sigma_+\in\mathbb{R}^{r\times r}$ (for $r=rank(A)$, $\Sigma_+ = diag(\sigma_1,\ldots,\sigma_r)$
What I did is this:
$AA^\dagger = U\left[\begin{matrix} \Sigma_+ & 0 \\ 0 & 0 \end{matrix}\right]V^*V\left[\begin{matrix} \Sigma_+^{-1} & 0 \\ 0 & 0 \end{matrix}\right]U^*=U\left[\begin{matrix}I & 0\\0 & 0\end{matrix}\right]U^* = U\left[\begin{matrix}I & 0\\0 & 0\end{matrix}\right]\left[\begin{matrix}I & 0\\0 & 0\end{matrix}\right]U^* = U_rU_r^*$
where $U_r$ represents the first r columns of the matrix $U$.
I just can't finish this. I can't find the argument for $rank(U_rU_r^*)=r$.
Did I do something wrong? Or can you help me end the proof?
I'm aware that $rank(U_rU_r^*)\leq r$ (since it's a product of the two matrices whose $rank=r$), but I don't think that's the way this proof is meant to be.
If I manage to do this part of the task, I'll also do the last one since it sums up to $V_rV_r^*$
Thanks in advance! Any hints would be helpful.
The Moore-Penrose pseudoinverse of $$ A=UDV^* $$ is $A^\dagger=VD^\dagger U^*$ and it is plain how to compute the pseudoinverse of a diagonal matrix: just invert the nonzero entries in the diagonal.
Multiplying by an invertible matrix doesn't change the rank. The rank of a diagonal matrix is the number of nonzero entries in the diagonal.