HomeCalculatorsMathLinear AlgebraCholesky Factorization Calculator
Math calculator

Cholesky Factorization Calculator

Lower Cholesky factorization of a small real symmetric positive-definite matrix. Same engine as Linear System. Not LU. Not a CAS. Runs locally.

Instant result
Result
—

Enter values to calculate.

Inputs—
Mode—
Formula—
Trust summary CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance · all published modes
Input interpretation
Enter values to calculate.
Result
—
Verified scope
all published modes
Assurance
Core
Declared partition coverage
PASS · 19/19 declared partitions (solve, det, inverse, multiply, transpose, rank, eigen, lu, chol, qr, svd, lstsq, rref, condition, nullspace, columnspace, rowspace, leftnullspace, invalid-domain) · Matrix
Known limitations
  • Core CVP does not include live graph, viewport, or pointer interaction.
Model
A = LLᵀ for order 2–4, SPD only.
Scope
Real symmetric positive-definite matrices
Verification
Engine tested · Source checked · v1.14.16 · CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance · all published modes· View Manifest · CVP overview · Specification
Versions
Calculation 1.14.16 · CVP protocol 1.0.0-proposed · Evidence 2026-10-30.cholesky-numeric-contract-v2
Verification revision
2026-10-30.cholesky-numeric-contract-v2 · 10/10 property · digest 2f8af10fde34
Legacy regression
58/58 tests · Production surface contract 6/6
Trust layers
Verification VERIFIED · Production CURRENT · Overall CVP state: VERIFIED under CVP 1.0.0-proposed
Reference
O1 model · O2 expected_values · O2 expected_values · O2 expected_values · O2 expected_values · O2 expected_values · O2 expected_values · O2 numerical_behavior
Interfaces
PASS · UI (SSR) / REST / MCP — ui-ssr is query-result HTML, not a live browser session. Error-path engine·REST·MCP 24/24 (status, code, calculation_version). SSR compared on URL-canonical requested calculations; empty query is idle (not an error) and JSON-typed object/array inputs are REST/MCP-only. Raw HTTP REST/JSON-RPC transport rejection 5/5; raw-number source and conflicting pins are transport-only checks, not engine/SSR input-source parity.
Supplemental domain review
Not performed
Named expert review
Not performed
CVP suite
478/478 golden · 8/8 CVP boundary · 78/78 invalid · 10/10 property · 2/2 metamorphic · 3/3 round-trip · 67/67 cross-interface · 2/2 cross-calculator · 6/6 CVP contract · Manifest
Evidence
29 legacy golden · 6 legacy boundary · legacy regression suite · 478/478 oracle-backed golden · 78/78 invalid · Artifact integrity PASS
This calculator CURRENT · Public schema 1.14.16 matches · Semantic contract ✓ · Production attested · Public/cache ✓ · Origin ✓
Semantic contract
PASS
Full verification

Manifest identity, reference classes, interfaces, suite, and production records.

Formulas

Core equations used by this calculator.

FactorizationA = LLᵀ
Diagonalℓᵢᵢ = √(aᵢᵢ − Σₖ<ᵢ ℓᵢₖ²) > 0
iLower Cholesky with positive diagonal. Not LDLᵀ. Not pivoted Cholesky. Not LU. Asymmetric A → NOT_SYMMETRIC. Nonpositive pivot → NOT_POSITIVE_DEFINITE. Order ≤ 4. Float64.

How to use

1

Enter a square SPD matrix

2×2, 3×3 or 4×4. Larger composition lives at /workspace/matrix.

2

Read L

reconstruction_residual is ‖A − LLᵀ‖_F. Ill-conditioned matrices warn.

Example calculations

Common configurations with formula and result.

ϟ

[[4,2],[2,2]]

SPD 2×2

L = [[2,0],[1,1]]
residual ~ 0
ϟ

Wikipedia 3×3

[[4,12,−16],[12,37,−43],[−16,−43,98]]

L = [[2,0,0],[6,1,0],[−8,5,3]]
residual ~ 0

Cholesky Factorization calculator specification

Version 1.14.16 · Engine tested

Calculation status

Review policy · Evidence

Definition
A = LLᵀ factors a symmetric positive-definite matrix into a lower-triangular L with positive diagonal. This page is a discovery surface on the linear-algebra engine (mode=chol).
What it calculates
A = LLᵀ for order 2–4, SPD only.
Inputs
  • order
  • a11…
Outputs
  • L
  • reconstruction_residual
  • condition_number
Formula
A = LLᵀ
Assumptions
  • Real symmetric positive-definite matrices
  • Order ≤ 4
  • Planar ℝ² figure when order=2; order 3+ omits it
  • Float64
  • Not a CAS
Units
  • dimensionless
Boundary conditions
  • asymmetric A → NOT_SYMMETRIC
  • nonpositive pivot → NOT_POSITIVE_DEFINITE
  • rectangular A → INVALID_INPUT (qr/svd/lstsq only)
  • unknown mode (including jordan-form) → INVALID_MODE
Example
[[4,2],[2,2]] → L=[[2,0],[1,1]]
Validation cases

2 published on this page · 58/58 tests · Production surface contract 6/6 · View evidence

  • order=2 a11=4 a12=2 a21=2 a22=2 → L[[2,0],[1,1]] reconstruction_residual≈0
  • order=2 a11=1 a12=2 a21=0 a22=1 → NOT_SYMMETRIC
Sources
  • ISO 80000-2:2019 Quantities and units — Mathematics
    Supports: Mathematical symbols and notation. This standard is not numerical verification or an endorsement of this implementation.
  • NumPy — numpy.linalg.cholesky
    Supports: Cholesky factorization A = LLᴴ (or UᴴU) for Hermitian positive-definite matrices, with the real symmetric case A = LLᵀ. This states the factorization and domain, not CalculatorX implementation details. Mathematical reference only; not validation or endorsement of this implementation.
Calculation version
1.14.16

Background

Interpretation and common distinctions.

What does this cholesky factorization calculator compute?

A = LLᵀ factors a symmetric positive-definite matrix into a lower-triangular L with positive diagonal.

The published formula or method is A = LLᵀ. The following references support the stated mathematics or method:

  • NumPy — numpy.linalg.cholesky: Cholesky factorization A = LLᴴ (or UᴴU) for Hermitian positive-definite matrices, with the real symmetric case A = LLᵀ. This states the factorization and domain, not CalculatorX implementation details. Mathematical reference only; not validation or endorsement of this implementation.

Which inputs and limits should you check?

Rank, inverse, subspace, and least-squares decisions depend on the stated tolerance and conditioning. Inspect residuals and warnings before interpreting a nearly singular matrix.

The worked example uses SPD 2×2 with L = [[2,0],[1,1]]. Compare it with the Example calculations and the complete result for the same inputs.

How can you verify and cite this result?

CalculatorX is responsible for this page. The mathematical references above explain the model; implementation checks and their scope are documented separately in the math.linear_algebra v1.14.16 Evidence and capability contract. Read the displayed verification and production state together with the specification's numerical limits.

Use the clean calculator URL to cite the tool. A shared input link identifies a particular calculation. Content updates, numerical verification, and domain reviews have separate dates and scopes.

Input replay and numerical range

All entries share math.linear_algebra v1.14.16. Enter every cell as a finite decimal, including scientific notation. Empty cells and nonzero decimals below the binary64 range are rejected. QR, SVD, and least squares accept dimensions from 2 to 4; other operations require square matrices. Matching aliases may be supplied, while conflicting aliases or nested and flat cells are rejected.

A singular system may be consistent with infinitely many solutions or inconsistent; read the status and warnings. Tolerance-based rank and subspace decisions are not exact symbolic certificates. Results outside the numerical range refuse with NUMERIC_PRECISION_LIMIT. An unavailable auxiliary determinant is omitted with a warning, rather than reported as zero or null.

Calculations run locally in the browser. Shared query links contain inputs, are sent to the server when opened, and may appear in server or third-party logs. Anyone receiving a shared link can read its inputs. JSON and CSV exports include the original inputs, complete structured result, warnings, and calculation version.

Cholesky keeps the original matrix A and the computed L at binary64 round-trip precision. Symmetry is checked pairwise after dividing each pair by its largest magnitude (tolerance 1e-12, no absolute floor). An accepted difference uses the lower triangle, publishes effective_A and emits symmetry_adjusted. The result shows the current L, not only the factorization formula.

The relative reconstruction residual is ‖A−LLᵀ‖F/‖A‖F, evaluated with common scaling against the original A and published L. Absolute residuals can underflow; zero is not proof of exact real arithmetic. κ₁ is a 1-norm estimate; ill_conditioned is reported at 1e8. Exact binary64 leading-minor signs reject non-SPD effective matrices; a positive-definite input that cannot be resolved in binary64 returns NUMERIC_PRECISION_LIMIT rather than a mathematical non-SPD claim.

Frequently asked questions

Key distinctions behind the calculation.

Is this a second Cholesky solver?

No. It is mode=chol on math.linear_algebra, the same engine as /calc/math/linear-system and /workspace/matrix.

What if A is not SPD?

Asymmetric A returns NOT_SYMMETRIC. A symmetric matrix with a nonpositive pivot returns NOT_POSITIVE_DEFINITE. LU remains available for general square A.