'Returns the Cholesky decomposition L of a matrix A
such that L * L.T = A
A must be a square, symmetric, positive-definite
and non-singular matrix.
Examples
>>> from sympy.matrices import Matrix
>>> A = Matrix(((25, 15, -5), (15, 18, 0), (-5, 0, 11)))
>>> A.cholesky()
Matrix([
[ 5, 0, 0],
[ 3, 3, 0],
[-1, 1, 3]])
>>> A.cholesky() * A.cholesky().T
Matrix([
[25, 15, -5],
[15, 18,  0],
[-5,  0, 11]])
See Also
LDLdecomposition
LUdecomposition
QRdecomposition'

def cholesky(self):

    if (not self.is_square):
        raise NonSquareMatrixError('Matrix    must    be    square.')
    if (not self.is_symmetric()):
        raise ValueError('Matrix    must    be    symmetric.')
    return self._cholesky()
