Why is $A^TA$ invertible if $A$ has independent columns?
Consider the following: $$A^TAx=\mathbf 0$$ Here, $Ax$, an element in the range of $A$, is in the null space of $A^T$. However, the null space of $A^T$ and the range of $A$ are orthogonal complements, so $Ax=\mathbf 0$.
If $A$ has linearly independent columns, then $Ax=\mathbf 0 \implies x=\mathbf 0$, so the null space of $A^TA=\{\mathbf 0\}$. Since $A^TA$ is a square matrix, this means $A^TA$ is invertible.
If $A $ is a real $m \times n $ matrix then $A $ and $A^T A $ have the same null space. Proof: $A^TA x =0\implies x^T A^T Ax =0 \implies (Ax)^TAx=0 \implies \|Ax\|^2 = 0 \implies Ax = 0 $.
Let $A \in \mathbb R^{m \times n}$. Note that
$$f (x) := x^T A^T A x = \|A x\|_2^2$$
is positive semidefinite. Function $f$ vanishes when $A x = 0_m$. If $A$ has full column rank, i.e., if its $n$ columns are linearly independent, then $A x =0_m$ implies that $x = 0_n$, i.e., $f$ is positive definite and, hence, $A^T A$ is positive definite and, thus, invertible.