Solve for $ A $ from $ A {A}^{T} $

I'm sure that I knew how to do this once many moons ago and that it's really simple.

I have a matrix $ X $ which is defined as: $$ X = A {A}^{T} $$

How do I find $ A $ given $ X $?


Solution 1:

You can find a valid choice of $A$, but that choice is certainly not unique.

In particular, as long as $A$ is real, the matrix $X = AA^T$ is positive semi-definite. As such, there is a unique positive semi-definite matrix $B$ such that $B^2 = X$. Since $B$ is positive semidefinite, we also have $B = B^T$, so that $$ BB^T = B^2 = X $$ There are, however, more interesting ways to break up $A$ in such a manner. A particularly useful instance of this is the so-called Cholesky-decomposition.

To answer in the most general possible way: if $AA^T = X$, then we can take the matrix $B = AU$, where $U$ is any orthogonal matrix, and find that $BB^T = X$.

In fact, if $X$ doesn't have full rank, we can have $A$ be a $n \times m$ matrix, with $m$ greater than or equal to the rank of $X$.