Using SVDs to prove $C(XX^{\prime}) = C(X)$ Let $C$ denote the column space. I would like to prove $C(XX^{\prime}) = C(X)$ for $X \in M_{n \times p}$, $X^{\prime}$ denoting the transpose of $X$.
This answer suggests using singular value decomposition. So sure, $XX^{\prime}$ is symmetric and thus $$XX^{\prime} = PD\left(\lambda_i\right)P^{-1}$$
for some orthogonal $P$. Since $P$ is orthogonal, I know that its rows and columns form an orthonormal basis for $\mathbb{R}^n$. 
However, I'm not sure how to relate this to $C(X)$. 
Edit: I am not allowed to assume $r(XX^{\prime}) = r(X)$, where $r$ is the rank.
 A: *

*First, prove that $C(XX') \subset C(X)$. 


This is easy since the $i$th column of $XX'$, denoted as $(XX')_i$, equals to $X(X')_i$, i.e., the multiplication of $X$ and the $i$th column of $X'$. Thus, each column of $XX'$ is just a linear combination of columns of $X$. We've proved $C(XX') \subset C(x)$.


*

*Next, we prove that $C(X) \subset C(XX')$. 


Let $X = U\Sigma V'$ be the SVD of $X$, where $U \in \Re^{n \times d}$, $\Sigma \in \Re^{d\times d}$ whose diagonal entries are all non-zero and other entries are $0$, $V \in \Re^{p \times d}$. $d$ is the # of non-zero singular values here. Remind that columns of $U$ are unit and orthogonal (same for $V$).
Thus we have:
$$
XX'\cdot U\Sigma^{-1}V' = U\Sigma^2U'\cdot U\Sigma^{-1}V' = U\Sigma V' = X
$$
Therefore, the $i$th column of $X$, denoted as $(X)_i$, satifies:
$$
(X)_i = XX'\cdot (U\Sigma^{-1}V')_i
$$
Each column of $X$ is still a linear combination of columns of $XX'$, proving that $C(X) \subset C(XX')$.


*

*Finally, $C(X) \subset C(XX')$ and $C(XX') \subset C(x)$ $\implies C(X) = C(XX')$

