Maths WorkshopMaths problems with full solutions
Exercise 2051Topology › Topology of Mn(ℝ) › Continuity of matrix mapsM1Added 7 Nov 2026

Cholesky: a homeomorphism from T_+ onto PD

#Cholesky decomposition#positive definite matrices#QR#homeomorphism

Statement

Show that R↦RTRR\mapsto R^TR is a homeomorphism from T+T_+ (upper triangular matrices with positive diagonal) onto the cone PD\mathrm{PD} of symmetric positive definite matrices.

Hint

For the inverse, combine the square root A↦AA\mapsto\sqrt A with the QR decomposition of Problem 91.

Injectivity: if RTR=R′TR′R^TR=R'^TR' then R′R−1R'R^{-1} is orthogonal and upper triangular.

Show solutionHide solution

Solution

Idea. The map R↦RTRR\mapsto R^TR is polynomial; its inverse is constructed by composing already-known continuous maps.

Step 1: well-defined. For R∈T+R\in T_+, RR is invertible, RTRR^TR is symmetric and xTRTRx=∣Rx∣2>0x^TR^TRx=|Rx|^2>0 for x≠0x\ne0: RTR∈PDR^TR\in\mathrm{PD}. The map is polynomial in the entries, hence continuous.

Step 2: injective. If RTR=R′TR′R^TR=R'^TR' with R,R′∈T+R,R'\in T_+, put M=R′R−1M=R'R^{-1}, upper triangular with positive diagonal (products and inverses of such matrices are such). Then
MTM=R−TR′TR′R−1=R−TRTRR−1=I,M^TM=R^{-T}R'^TR'R^{-1}=R^{-T}R^TRR^{-1}=I,
so MM is orthogonal and upper triangular with positive diagonal; as in Problem 91, M=IM=I, i.e. R′=RR'=R.

Step 3: surjective, with a continuous inverse. Let A∈PDA\in\mathrm{PD}, S=AS=\sqrt A (positive definite, symmetric, hence in GLnGL_n). By Problem 91, S=QRS=QR with QQ orthogonal and R∈T+R\in T_+. Then
A=S2=STS=RTQTQR=RTR.A=S^2=S^TS=R^TQ^TQR=R^TR.
The assignment A↦RA\mapsto R is the composite of A↦AA\mapsto\sqrt A (continuous, Problem 89) and S↦RS\mapsto R from the QR decomposition (continuous, Problem 91). It is a right and left inverse of R↦RTRR\mapsto R^TR by the injectivity just proved.

Dimension count. T+≅(0,∞)n×Rn(n−1)/2T_+\cong(0,\infty)^n\times\mathbb{R}^{n(n-1)/2}, and dim⁡Symn=n(n+1)2=n+n(n−1)2\dim\mathrm{Sym}_n=\frac{n(n+1)}2=n+\frac{n(n-1)}2.

Numeric check. `numpy.linalg.cholesky` returns the lower factor L=RTL=R^T with positive diagonal, and LLT=PLL^T=P held to 9⋅10−169\cdot10^{-16}.

Remark. Cholesky's factorisation is the standard way to test positive definiteness and solve linear systems; the topological content here is that the factor depends *continuously* on the matrix, so it is stable under small perturbations. As a by-product, PD\mathrm{PD} is homeomorphic to Rn(n+1)/2\mathbb{R}^{n(n+1)/2}.