def pdinv(A, *args):
L = jitchol(A, *args)<EOL>logdet = <NUM_LIT>*np.sum(np.log(np.diag(L)))<EOL>Li = dtrtri(L)<EOL>Ai, _ = dpotri(L, lower=<NUM_LIT:1>)<EOL>symmetrify(Ai)<EOL>return Ai, L, Li, logdet<EOL>
:param A: A DxD pd numpy array

:rval Ai: the inverse of A
:rtype Ai: np.ndarray
:rval L: the Cholesky decomposition of A
:rtype L: np.ndarray
:rval Li: the Cholesky decomposition of Ai
:rtype Li: np.ndarray
:rval logdet: the log of the determinant of A
:rtype logdet: float64