Quick answer

To perform Cholesky decomposition, verify A is symmetric positive definite, then compute L column by column using diagonal square roots and off-diagonal divisions.

Formula

  • A = L Lᵀ
  • Work columns j = 1..n
  • Within each column: diagonal first, then rows below

Introduction

Manual Cholesky is less about inspiration and more about disciplined order: finish column j before moving to j+1. The Cholesky Decomposition Calculator shows the same order of operations in the result grid.

Before any square root, confirm symmetry. A single transposed entry will make both hand work and software disagree with the true factorization target.

Pair this walkthrough with the formula article for compact notation and with worked examples when you want full matrices already solved.

What you are doing at each step

Cholesky is forward elimination specialized to SPD structure. Instead of producing both L and U as separate factors, you produce one triangular factor whose transpose completes the product.

Column order matters because L[i,j] for i > j depends on L[j,j]. Skipping ahead to a later column before finishing the diagonal in the current column is the most common organizational mistake.

Positive definiteness is not a separate optional check in theory: it is what keeps every radicand positive. In homework, instructors may give you SPD matrices so you can focus on arithmetic.

When teaching, many professors allow calculators for square roots but require shown sums. Write the sum over k before j explicitly until the pattern is automatic.

After building L, reconstruction is the best error detector. Do not skip A = L Lᵀ verification even when time is short.

For larger matrices, copy A once, then update only your L table. Crossing values out on A itself leads to confusion when multiple rows reuse the same A[i,j].

Formulas used in the procedure

  • L[i,i] = sqrt( A[i,i] - sum_{k<i} L[i,k]² )
  • L[i,j] = ( A[i,j] - sum_{k<j} L[i,k] L[j,k] ) / L[j,j]

Treat each column as a mini-lesson: diagonal first, then fill downward.

Keep a running row of L for the current i while you compute off-diagonals. Mixing rows between steps causes subtraction errors.

If division produces a value that makes later square roots fail, revisit the earliest column where arithmetic diverged.

Step-by-step procedure

  1. Write A and check symmetry. Compare A[i,j] and A[j,i] for every pair you entered.
  2. State the target A = L Lᵀ. Draw an empty lower-triangular L with the same dimension as A.
  3. For j = 1 to n, compute L[j,j]. Use only entries from rows and columns already completed.
  4. For i = j+1 to n, compute L[i,j]. Apply the off-diagonal formula with the sum over indices k before j.
  5. Reconstruct and compare to A. Multiply L Lᵀ entrywise and match within your rounding policy.

2×2 worked procedure

Let A = [[4, 2], [2, 3]]. Symmetry holds. Column 1: L[1,1] = 2, L[2,1] = 1.

Column 2: inside sqrt is 3 - 1² = 2, so L[2,2] = sqrt(2). Reconstruct: (L Lᵀ)[2,2] = 1² + (sqrt(2))² = 3.

Enter the same A in the calculator. The lower grid should show 2, blank, 1, sqrt(2) in the usual display convention.