Cholesky decomposition decomposes a real, symmetric (hence square), and positive definite matrix
A into A = L * Lt, where L is a lower triangular matrix. For any
real, symmetric, positive definite matrix, there is a unique Cholesky decomposition, such that
L's diagonal entries are all positive. This implementation uses the Cholesky-Banachiewicz
algorithm, which starts from the upper left corner of the matrix L and proceeds to
calculate the matrix row by row.