Throughout, matrix products are associative and transposes reverse products (Algebraic Rules for Matrix Products, Matrix-Vector Products and Transposes (i) , Algebraic Rules for Matrix Products, Matrix-Vector Products and Transposes (vii) ), and two matrices of the same size are equal when they have the same columns M e k Me_{k} M e k (Algebraic Rules for Matrix Products, Matrix-Vector Products and Transposes (vi) ).
Step 1 (diagonalization and the rank r r r ). By The Spectral Theorem for Real Symmetric Matrices (i) there are Q ∈ O ( d ) Q\in\mathrm{O}(d) Q ∈ O ( d ) and λ ∈ R d \lambda\in\mathbb{R}^{d} λ ∈ R d with λ 1 ≥ ⋯ ≥ λ d \lambda_{1}\ge\dots\ge\lambda_{d} λ 1 ≥ ⋯ ≥ λ d and
Σ = Q diag ( λ ) Q ⊤ ; \Sigma=Q\operatorname{diag}(\lambda)Q^{\top}; Σ = Q diag ( λ ) Q ⊤ ;
every λ k ≥ 0 \lambda_{k}\ge0 λ k ≥ 0 by Every Positive Semidefinite Matrix Has Exactly One Positive Semidefinite Square Root (ii) , and Q ⊤ Q = I d Q^{\top}Q=I_{d} Q ⊤ Q = I d by Orthogonal Real Matrices (i) . Some λ k \lambda_{k} λ k is nonzero: otherwise diag ( λ ) = 0 d \operatorname{diag}(\lambda)=0_{d} diag ( λ ) = 0 d and Σ = Q 0 d Q ⊤ = 0 d \Sigma=Q\,0_{d}\,Q^{\top}=0_{d} Σ = Q 0 d Q ⊤ = 0 d , contrary to the hypothesis. If no λ k \lambda_{k} λ k vanishes, let r = d r=d r = d . Otherwise let k 0 k_{0} k 0 be the least k ∈ [ d ] k\in[d] k ∈ [ d ] with λ k = 0 \lambda_{k}=0 λ k = 0 , which exists because the natural numbers are well-ordered (The Order on Omega Is a Well-Order with Membership as Its Strict Order, and Nothing Lies between n and Its Successor (i) ); then k 0 ≥ 2 k_{0}\ge2 k 0 ≥ 2 , since λ 1 = 0 \lambda_{1}=0 λ 1 = 0 would force 0 ≤ λ k ≤ λ 1 = 0 0\le\lambda_{k}\le\lambda_{1}=0 0 ≤ λ k ≤ λ 1 = 0 for all k k k ; and we let r = k 0 − 1 r=k_{0}-1 r = k 0 − 1 . In both cases r ∈ [ d ] r\in[d] r ∈ [ d ] and
λ k ≠ 0 ( k ≤ r ) , λ i = 0 ( r < i ≤ d ) , \lambda_{k}\neq0\quad(k\le r),\qquad\lambda_{i}=0\quad(r<i\le d), λ k = 0 ( k ≤ r ) , λ i = 0 ( r < i ≤ d ) ,
the first by the choice of k 0 k_{0} k 0 , the second because 0 ≤ λ i ≤ λ k 0 = 0 0\le\lambda_{i}\le\lambda_{k_{0}}=0 0 ≤ λ i ≤ λ k 0 = 0 for i ≥ k 0 i\ge k_{0} i ≥ k 0 .
Step 2 (the factor). By Every Positive Semidefinite Matrix Has Exactly One Positive Semidefinite Square Root (i) there is a positive semidefinite R ∈ S ( d ) R\in\mathcal{S}(d) R ∈ S ( d ) with R R = Σ RR=\Sigma RR = Σ . By Every Positive Semidefinite Matrix Has Exactly One Positive Semidefinite Square Root (ii) , R = Q diag ( s ) Q ⊤ R=Q\operatorname{diag}(s)Q^{\top} R = Q diag ( s ) Q ⊤ with s = ( λ 1 , … , λ d ) s=(\sqrt{\lambda_{1}},\dots,\sqrt{\lambda_{d}}) s = ( λ 1 , … , λ d ) . Using Q ⊤ Q = I d Q^{\top}Q=I_{d} Q ⊤ Q = I d and the rules for diagonal matrices of Eigenvalues: the Determinant Criterion, Diagonal Matrices, Orthogonal Similarity and Orthogonality of Eigenvectors of Symmetric Matrices (ii) ,
diag ( s 1 2 , … , s d 2 ) = diag ( s ) diag ( s ) = Q ⊤ R R Q = Q ⊤ Σ Q = diag ( λ ) , \operatorname{diag}(s_{1}^{2},\dots,s_{d}^{2})=\operatorname{diag}(s)\operatorname{diag}(s)=Q^{\top}RRQ=Q^{\top}\Sigma Q=\operatorname{diag}(\lambda), diag ( s 1 2 , … , s d 2 ) = diag ( s ) diag ( s ) = Q ⊤ RRQ = Q ⊤ Σ Q = diag ( λ ) ,
so s k 2 = λ k s_{k}^{2}=\lambda_{k} s k 2 = λ k for every k ∈ [ d ] k\in[d] k ∈ [ d ] .
Let J ∈ R d × r J\in\mathbb{R}^{d\times r} J ∈ R d × r have the entries J i j = 1 J_{ij}=1 J ij = 1 if i = j i=j i = j and J i j = 0 J_{ij}=0 J ij = 0 otherwise, and put
B = Q diag ( s ) J ∈ R d × r . B=Q\operatorname{diag}(s)J\in\mathbb{R}^{d\times r}. B = Q diag ( s ) J ∈ R d × r .
As diag ( s ) ⊤ = diag ( s ) \operatorname{diag}(s)^{\top}=\operatorname{diag}(s) diag ( s ) ⊤ = diag ( s ) ,
B B ⊤ = Q [ diag ( s ) J J ⊤ diag ( s ) ] Q ⊤ . BB^{\top}=Q\bigl[\operatorname{diag}(s)JJ^{\top}\operatorname{diag}(s)\bigr]Q^{\top}. B B ⊤ = Q [ diag ( s ) J J ⊤ diag ( s ) ] Q ⊤ .
We compare the bracket with diag ( λ ) \operatorname{diag}(\lambda) diag ( λ ) column by column. For i ∈ [ d ] i\in[d] i ∈ [ d ] , the vector J ⊤ e i J^{\top}e_{i} J ⊤ e i is e i ∈ R r e_{i}\in\mathbb{R}^{r} e i ∈ R r if i ≤ r i\le r i ≤ r and 0 0 0 if i > r i>r i > r , so J J ⊤ e i = e i JJ^{\top}e_{i}=e_{i} J J ⊤ e i = e i if i ≤ r i\le r i ≤ r and J J ⊤ e i = 0 JJ^{\top}e_{i}=0 J J ⊤ e i = 0 if i > r i>r i > r (Algebraic Rules for Matrix Products, Matrix-Vector Products and Transposes (vi) , Algebraic Rules for Matrix Products, Matrix-Vector Products and Transposes (v) ). Since diag ( s ) e i = s i e i \operatorname{diag}(s)e_{i}=s_{i}e_{i} diag ( s ) e i = s i e i ,
diag ( s ) J J ⊤ diag ( s ) e i = { s i 2 e i = λ i e i , i ≤ r , 0 = λ i e i , i > r , \operatorname{diag}(s)JJ^{\top}\operatorname{diag}(s)e_{i}=\begin{cases}s_{i}^{2}e_{i}=\lambda_{i}e_{i}, & i\le r,\\ 0=\lambda_{i}e_{i}, & i>r,\end{cases} diag ( s ) J J ⊤ diag ( s ) e i = { s i 2 e i = λ i e i , 0 = λ i e i , i ≤ r , i > r ,
using λ i = 0 \lambda_{i}=0 λ i = 0 for i > r i>r i > r from Step 1. Also diag ( λ ) e i = λ i e i \operatorname{diag}(\lambda)e_{i}=\lambda_{i}e_{i} diag ( λ ) e i = λ i e i , so the bracket equals diag ( λ ) \operatorname{diag}(\lambda) diag ( λ ) , and B B ⊤ = Q diag ( λ ) Q ⊤ = Σ BB^{\top}=Q\operatorname{diag}(\lambda)Q^{\top}=\Sigma B B ⊤ = Q diag ( λ ) Q ⊤ = Σ .
Step 3 (B ⊤ B B^{\top}B B ⊤ B is invertible). Using Q ⊤ Q = I d Q^{\top}Q=I_{d} Q ⊤ Q = I d and diag ( s ) diag ( s ) = diag ( λ ) \operatorname{diag}(s)\operatorname{diag}(s)=\operatorname{diag}(\lambda) diag ( s ) diag ( s ) = diag ( λ ) from Step 2,
B ⊤ B = J ⊤ diag ( s ) Q ⊤ Q diag ( s ) J = J ⊤ diag ( λ ) J . B^{\top}B=J^{\top}\operatorname{diag}(s)Q^{\top}Q\operatorname{diag}(s)J=J^{\top}\operatorname{diag}(\lambda)J . B ⊤ B = J ⊤ diag ( s ) Q ⊤ Q diag ( s ) J = J ⊤ diag ( λ ) J .
For k ∈ [ r ] k\in[r] k ∈ [ r ] we have J e k = e k ∈ R d Je_{k}=e_{k}\in\mathbb{R}^{d} J e k = e k ∈ R d , diag ( λ ) e k = λ k e k \operatorname{diag}(\lambda)e_{k}=\lambda_{k}e_{k} diag ( λ ) e k = λ k e k and J ⊤ e k = e k ∈ R r J^{\top}e_{k}=e_{k}\in\mathbb{R}^{r} J ⊤ e k = e k ∈ R r , so B ⊤ B e k = λ k e k B^{\top}Be_{k}=\lambda_{k}e_{k} B ⊤ B e k = λ k e k ; comparing columns,
B ⊤ B = diag ( λ 1 , … , λ r ) . B^{\top}B=\operatorname{diag}(\lambda_{1},\dots,\lambda_{r}). B ⊤ B = diag ( λ 1 , … , λ r ) .
If B ⊤ B x = 0 B^{\top}Bx=0 B ⊤ B x = 0 for some x ∈ R r x\in\mathbb{R}^{r} x ∈ R r , then λ k x k = 0 \lambda_{k}x_{k}=0 λ k x k = 0 for every k ∈ [ r ] k\in[r] k ∈ [ r ] (Eigenvalues: the Determinant Criterion, Diagonal Matrices, Orthogonal Similarity and Orthogonality of Eigenvectors of Symmetric Matrices (ii) ), and λ k ≠ 0 \lambda_{k}\neq0 λ k = 0 by Step 1, so x = 0 x=0 x = 0 . Hence B ⊤ B B^{\top}B B ⊤ B has trivial kernel and is invertible by Criteria for Invertibility of a Square Real Matrix (vi) (with Criteria for Invertibility of a Square Real Matrix (i) ).