Low rank approximation using the SVD I have been looking at some LSI implementation which assumes that the following property always hold:
Given the Singular Value Decomposition of a real matrix $A$, $$A = U\Sigma V^T$$
and its approximation at the first $k$ singular values:
$$\hat{A_k} = U_k \Sigma_k V_k^T$$
it holds:
$$\hat{A_k} = U_k \Sigma_k V_k^T=AV_kV_k^T$$
Can you help me proving that this is true (or false) ?
Edit:
I have found this proof. 
The $V$ matrix is orthonormal, so $V^{-1} = V^T$, therefore:
$$AV = U\Sigma$$
and then truncating at the same level:
$$AV_k = U_k \Sigma_k$$
However, I'm not very convinced by this last step, do you think that it is correct?
 A: The last step is fine, just break $AV=U\Sigma$ into blocks and carry out the matrix multiplication. In particular, suppose $A$ is $n\times m$ and of rank $r$ and that $k\leq r$. Then,
$$\underbrace{U}_{n\times r}=\begin{bmatrix}U_k|\tilde{U}\end{bmatrix},\quad \underbrace{\Sigma}_{r\times r}=\begin{bmatrix}\Sigma_k&|&0\\\hline0&|&\tilde{\Sigma}\end{bmatrix},\quad \underbrace{V^T}_{r\times m}=\begin{bmatrix}V_k^T\\\hline \tilde{V}^T\end{bmatrix}$$
where $U_k$ is $n\times k$, $\tilde{U}$ is $n\times r-k$, $\Sigma_k$ is $k\times k$, $\tilde{\Sigma}$ is $r-k\times r-k$, $V_k$ is $m\times k$ and $\tilde{V}$ is $m\times r-k$. So,
$$AV=A\begin{bmatrix} V_k |\tilde{V}\end{bmatrix}=\begin{bmatrix} AV_k |A\tilde{V}\end{bmatrix},$$
$$U\Sigma=\begin{bmatrix}U_k|\hat{U}\end{bmatrix}\begin{bmatrix}\Sigma_k&|&0\\\hline0&|&\tilde{\Sigma}\end{bmatrix}=\begin{bmatrix}U_k\Sigma_k|\tilde{U}\tilde{\Sigma}\end{bmatrix}.$$
Thus,
$$AV=U\Sigma\Leftrightarrow \begin{bmatrix} AV_k |A\tilde{V}\end{bmatrix}=\begin{bmatrix}U_k\Sigma_k|\hat{U}\tilde{\Sigma}\end{bmatrix}\Rightarrow AV_k=U_k\Sigma_k.$$
