Function Repository Resource:

# RationalCholeskyDecomposition (1.0.0)current version: 2.0.0 »

Compute the rational Cholesky decomposition of a matrix

Contributed by: Jan Mangaldan
 ResourceFunction["RationalCholeskyDecomposition"][m] gives the rational Cholesky decomposition of a matrix m, given as a list {l,d} where l is a unit lower-triangular matrix and d is the diagonal of a diagonal matrix.

## Details

The rational Cholesky decomposition is also referred to as the decomposition.
The matrix m can be numerical or symbolic, but must be Hermitian and positive definite.
ResourceFunction["RationalCholeskyDecomposition"][m] yields a lower‐triangular matrix l and a list d so that l.DiagonalMatrix[d].ConjugateTranspose[l]m.

## Examples

### Basic Examples (2)

Perform a rational Cholesky decomposition on a matrix m:

 In[1]:=
 Out[1]=

Confirm that lm.DiagonalMatrix[dm].ConjugateTranspose[lm]m:

 In[2]:=
 Out[2]=

### Scope (3)

Hilbert matrices are symmetric and positive definite:

 In[3]:=
 Out[3]=

Compute the rational Cholesky decomposition with exact arithmetic:

 In[4]:=
 Out[4]=
 In[5]:=
 Out[5]=

Compute the rational Cholesky decomposition with machine arithmetic:

 In[6]:=
 Out[6]=

Compute the rational Cholesky decomposition with 24-digit precision arithmetic:

 In[7]:=
 Out[7]=

Compute the rational Cholesky decomposition of a random complex Hermitian matrix:

 In[8]:=
 Out[9]=

Use symbolic matrices:

 In[10]:=
 Out[10]=

### Properties and Relations (4)

Create a symmetric positive definite matrix:

 In[11]:=

Perform the RationalCholeskyDecomposition:

 In[12]:=
 Out[12]=

Compute the Cholesky decomposition from the result of RationalCholeskyDecomposition:

 In[13]:=
 Out[14]=

Compare with the result of CholeskyDecomposition:

 In[15]:=
 Out[15]=

## Version History

• 2.0.0 – 27 March 2024
• 1.0.0 – 06 January 2021