Suppose **A** is an m*n matrix with real values. It has a Null Space **N(A)** and a rank **r**. Can we infer **N(A ^{T}A)** and its rank?

We know that N(A) is contained in N(A^{T}A), because if Ax = 0 then A^{T}Ax = 0. But how can we be sure that no x exists such that Ax != 0 but A^{T}Ax = 0?

Ax is a combinations of the columns of A, so it belongs to the columns space of A ( C(A) ) or equivalently to the row space of A^{T}. At the same time, if A^{T}(Ax) = 0, then it means that Ax belongs to the null space of A^{T}. But we know that these 2 vector subspaces are orthogonal and share only the 0 vector; otherwise it would be that (Ax)^{T}(Ax) = 0 while Ax != 0, but the inner product of a real vector is the square of its length, so it cannot be 0 for a non zero vector!

And this demonstrate that N(A^{T}A) = N(A).

Because the rank of a matrix m*n is equal to **n – dimension of N(matrix)**, we can also say that the rank(A^{T}A) = rank(A).