Singular value decomposition of a Hilbert-space operator #
A non-negative real Ο is a singular value of S : Hβ βL[π] Hβ if
there is a singular vector pair (u, v): unit vectors u β Hβ,
v β Hβ with S u = Ο β’ v and S* v = Ο β’ u.
This file develops the SVD of a compact operator via the singular-value
iteration (peeling off the top singular pair given by
norm_isSingularValue), and the scalar factorisation for general
operators.
Main results #
SVD.IsCompactOperator.norm_isSingularValueβ every compact operator attains its operator norm as a singular value.SVD.IsCompactOperator.schmidtRepresentationβ the singular value decomposition / Schmidt representationS x = Ξ£ aβ β¨uβ,xβ© vβ. Needs the infinite iteration plus the convergence factsΟβ β 0,HasSum.SVD.IsCompactOperator.truncation_residual_eq_approxNumberβ EckartβYoungβS - Sββ = aβ(S), identifying singular values with approximation numbers.SVD.IsCompactOperator.diagonalFactorisationβ the factorisationB β S β A = diag(aβ, β¦, aβ)throughβββΏβΊΒΉ. Needs only the topn+1singular pairs β a finite truncation that (pinning the exactaβ) requiresScompact.SVD.exists_scalar_factorisationβB β S β A = c β’ idforc < aβ(S), for an arbitrary boundedS.SVD.mul_approximationNumber_le_of_factorizationβ for a compactT = TβTβ,(n+1)Β·aβ(T) β€ βTββ_HSΒ·βTββ_HS(Pietsch 2.11.23), with the two HilbertβSchmidt norms entering only as hypothesised bounds onββ βTβ uββΒ²andββ βTβ* vββΒ², so that no Schatten-class theory is needed;SVD.sum_norm_sq_apply_le_of_rowsderives such a bound from the rows of an operator (Bessel plus a row bound).
Orthonormal-or-zero families #
The SVD below is indexed by β, but a genuinely β-indexed Orthonormal
family cannot exist in a finite-dimensional space. We therefore index the
SVD by the finite-dimension-compatible relaxation OrthonormalOrZero: each
vector is a unit vector or zero, and distinct vectors are orthogonal. In a
finite-dimensional space all but finitely many vectors are zero (those with
singular value 0), so the family genuinely exists; Orthonormal is the
special case with no zeros.
OrthonormalOrZero π u: each u i is a unit vector or zero, and distinct
vectors are orthogonal.
Equations
Instances For
Orthonormal families are OrthonormalOrZero.
Inner products of an orthonormal-or-zero family: βͺuα΅’, uβ±Όβ« = Ξ΄α΅’β±Ό βuα΅’βΒ²
(with βuα΅’βΒ² β {0, 1}).
Restricting away the zeros. An OrthonormalOrZero family, reindexed along
an injective map that only hits unit vectors, is Orthonormal. This is how a
finite subfamily of an SVD family β the indices with non-zero singular value β is
recognised as an orthonormal basis of its span.
Finite Pythagoras for an orthonormal-or-zero family:
ββ cβ β’ uββΒ² = β βcββΒ² βuββΒ² (zero vectors drop out).
The Ο-weighted inner product of an orthonormal-or-zero family collapses
to a Kronecker delta: Οβ±ΌΒ·βͺuβ±Ό, uββ« = Ξ΄β±ΌβΒ·Οβ, given the tie uβ = 0 β Οβ = 0
(so that a zero vector carries a zero weight, and a nonzero one is unit).
Finite Pythagoras, weighted form: if the coefficient vanishes wherever the
vector does (uβ = 0 β cβ = 0), the zero vectors drop and we recover the
clean ββ cβ β’ uββΒ² = β βcββΒ².
Reindexing an orthonormal-or-zero family by an injection stays orthonormal-or-zero.
Bessel's inequality for an orthonormal-or-zero family:
β ββͺuβ, xβ«βΒ² β€ βxβΒ². Proof via the partial projection p := β βͺuβ,xβ«Β·uβ:
βpβΒ² = βββͺuβ,xβ«βΒ² = reβͺp, xβ« β€ βpβΒ·βxβ, hence βpβ β€ βxβ.
A non-negative real Ο is a singular value of S if there exist
unit vectors u β Hβ, v β Hβ with S u = Ο β’ v and S* v = Ο β’ u.
Equations
Instances For
Every compact operator between Hilbert spaces
attains its norm as a singular value: there exist unit vectors u, v
with S u = βSβ β’ v and S* v = βSβ β’ u.
Proof sketch: take a maximising sequence xβ (unit, βS xββ β βSβ),
extract a strongly convergent subsequence S xββ β y by compactness,
let v := βSββ»ΒΉ β’ y and u' := S* v. CauchyβSchwarz on
β¨u', xβββ© = β¨v, S xβββ© β βSβ shows βu'β = βSβ; equality in CβS
forces xββ β βSββ»ΒΉ β’ u' =: u, so by continuity S u = y = βSβ β’ v.
The Schmidt iteration #
svdState S hS n carries the n-th deflated operator Sβ together with a
proof it is still compact (Sβ = S; Sβββ = Sβ - βͺuβ, Β·β« (Οβ β’ vβ), where
(uβ, vβ) attain Οβ = βSββ as a singular value, norm_isSingularValue).
The projections svdT/svdU/svdV read off Sβ, uβ, vβ.
Step properties of the iteration #
Orthogonality (the variational step) #
Telescoping and the full-operator relations #
Orthogonality of the right singular vectors (the adjoint side) #
The singular values tend to zero #
Singular value decomposition / Schmidt representation. Every compact operator between Hilbert spaces has a Schmidt expansion
S x = Ξ£ Οβ β¨uβ, xβ© vβ,
with orthonormal sequences (uβ) β Hβ, (vβ) β Hβ and singular values
Οβ β₯ Οβ β₯ β― β 0.
Proof outline (by iterating norm_isSingularValue):
Iteration. Set
Sβ := S. GivenSβ(compact), applyIsCompactOperator.norm_isSingularValueto obtain unit vectorsuβ, vβwithSβ uβ = βSββ β’ vβandSβ* vβ = βSββ β’ uβ. SetΟβ := βSββandSβββ := Sβ - Οβ β’ rankOne π vβ uβ. The rank-one subtrahend is compact (its image is finite-dimensional), andIsCompactOperatoris closed under subtraction (IsCompactOperator.sub), so the recursion stays inside the compact-operator class.Orthogonality. By construction
Sβββ uβ = 0, so by inductionSβ uβ = 0for allm > n. The variational characterisation ofuβ(the maximiser ofβSβ xβon the unit sphere) then forcesuβ β₯ uβ: writinguβ = Ξ± uβ + wwithw β₯ uβand usingβSβ uββΒ² = βSβ wβΒ² β€ βSββΒ² (1 - |Ξ±|Β²) = ΟβΒ² (1 - |Ξ±|Β²)together withβSβ uββ = ΟβgivesΞ± = 0(assumingΟβ > 0). Symmetrically,vβ β₯ vβ(usingSβββ* vβ = 0).Οβ β 0. SinceS uβ = Οβ vβ(usinguβ β₯ uβform < n) and thevβare orthonormal,βS uβ - S uββΒ² = ΟβΒ² + ΟβΒ². IfΟβstayedβ₯ Ξ΅ > 0, the bounded sequence(uβ)would map underSto a sequence with no Cauchy subsequence, contradicting compactness ofS.Convergence.
βS - Ξ£β<n Οβ β’ rankOne π vβ uββ = βSββ = Οβ β 0, so the Schmidt partial sums converge toSin operator norm; the pointwiseHasSumfollows.
EckartβYoung: singular values are the approximation numbers #
The truncation Sβ := Ξ£_{k < n} Οβ β¨uβ, Β·β© vβ is the best rank-n
approximation, with residual βS - Sββ = Οβ. Since the truncation has
rank β€ n, this is β₯ aβ(S), and minimality gives equality: the k-th
singular value equals the k-th approximation number, Οβ = aβ(S).
From the SVD data, S uβ = Οβ vβ (collapse the HasSum at uβ).
The truncated SVD #
Both halves of EckartβYoung below use the truncation
Lβ = β_{k<m} Οβ βͺuβ, Β·β« vβ, and need exactly two facts about it: its rank is at
most m, and the residual S β Lβ has norm at most Οβ. Those are recorded
once here.
EckartβYoung. From any SVD of S (OrthonormalOrZero singular vectors
with the nonzero-Ο tie, and the HasSum Schmidt expansion), the m-th singular
value equals the m-th approximation number: Ο m = aβ(S).
EckartβYoung. Some rank-n operator L attains the approximation
number: βS - Lβ = aβ(S) (the truncated SVD). In particular the infimum
defining aβ(S) is attained on Hilbert spaces.
Diagonal factorisation through βββΏβΊΒΉ #
B β S β A = diag(aβ, β¦, aβ), with A : βββΏβΊΒΉ β Hβ the isometric inclusion
eβ β¦ uβ and B : Hβ β βββΏβΊΒΉ the contraction y β¦ Ξ£_{k β€ n} β¨vβ, yβ© eβ.
This uses only the top n+1 singular pairs (uβ, vβ, Οβ)_{k β€ n} β a
finite slice of the SVD obtained by n+1 iterations of
norm_isSingularValue. It needs neither Οβ β 0 nor the HasSum
convergence of the full SVD.
Diagonal factorisation through βββΏβΊΒΉ. There is an isometric
inclusion A : βββΏβΊΒΉ βL[π] Hβ with βAβ β€ 1 and a contraction
B : Hβ βL[π] βββΏβΊΒΉ with βBβ β€ 1 such that on each basis vector,
(B β S β A)(eβ) = aβ(S) Β· eβ,
i.e. B β S β A = diag(aβ(S), β¦, aβ(S)). Built from the top n+1 singular
pairs only.
Scalar factorisation (general operators) #
Whereas diagonalFactorisation pins the exact values aβ (so needs S
compact, see its note), the scalar factorisation asks only for
B β S β A = c β’ id with c < aβ(S) strict. It therefore holds for an
arbitrary bounded S: for c < aβ(S) there is an (n+1)-dimensional
subspace M β Hβ on which βS xβ β₯ c βxβ (the variational characterisation
of aβ, valid even when aβ(S) is not attained β e.g. continuous
spectrum); take A to embed βββΏβΊΒΉ isometrically onto M, and B to be
c times a left inverse of the bounded-below S|_M.
This is the single input the uniqueness theorem for s-numbers
(SNumbers.Uniqueness) consumes: chaining (S3) over B β S β A = c β’ id
with the (S5) normalisation sβ(id) = 1 gives c β€ sβ(S) for every
c < aβ(S), hence aβ(S) β€ sβ(S).
Scalar factorisation. For any bounded S : Hβ βL[π] Hβ between
Hilbert spaces and any real c with 0 β€ c < aβ(S), there are contractions
A : βββΏβΊΒΉ βL[π] Hβ, B : Hβ βL[π] βββΏβΊΒΉ with
B β S β A = c β’ id_{βββΏβΊΒΉ}.
Proved from SpectralRepresentation.exists_lowerBound_subspace: take an
orthonormal basis of the lower-bound subspace M for A, set T := S β A
(bounded below by c), and B := c Β· (T*T)β»ΒΉ β T* (well-defined since T*T
is a unit, via isUnit_of_forall_le_norm_inner_map). No compactness needed.
The leading singular values of a product of HilbertβSchmidt operators #
For a compact operator T = TβTβ, the sum of the first n+1 singular values is
bounded by the product of the HilbertβSchmidt norms of the two factors,
(n+1) Β· aβ(T) β€ β_{k β€ n} Οβ(T) β€ βTββ_HS Β· βTββ_HS ,
the qualitative content of "the nuclear norm is at most the product of the
HilbertβSchmidt norms of the factors" (Pietsch, Eigenvalues and s-numbers,
2.11.23). No Schatten-class theory is needed: the singular values are read off the
Schmidt decomposition above, where Οβ = aβ(T) by EckartβYoung
(svd_sigma_eq_approx), and the estimate comes from
Οβ = re βͺvβ, T uββ« = re βͺTβ* vβ, Tβ uββ« β€ βTβ* vββ Β· βTβ uββ
by CauchyβSchwarz over k β€ n. The HilbertβSchmidt property of the factors
therefore enters only through the two hypotheses
ββ βTβ uββΒ² β€ aΒ² and ββ βTβ* vββΒ² β€ bΒ²
along arbitrary orthonormal-or-zero families. Those two hypotheses are in turn
produced from row data by sum_norm_sq_apply_le_of_rows below, whose input is
what BasicResults.LittleGrothendieck supplies for the inclusion ββ β β_β in
SNumbers.Examples.IdentityL1Linfty.
Bessel plus a row bound. Suppose the operator S is described by a
family w of "rows", in the sense that βS xβΒ² = ββ±Ό |βͺwβ±Ό, xβ«|Β², and that the
partial sums of βwβ±ΌβΒ² are bounded by c. Then ββ βS uββΒ² β€ c along every
orthonormal-or-zero family u.
This is the HilbertβSchmidt estimate that
mul_approximationNumber_le_of_factorization needs for each of its two factors:
interchange the two summations (hasSum_sum), apply Bessel's inequality
(OrthonormalOrZero.sum_inner_products_le) for each fixed row, and finish with
the row bound.
A single singular value of a factored operator is bounded by the norms of the
two factors evaluated at the corresponding singular vectors:
Οβ β€ βTβ* vββ Β· βTβ uββ. Indeed T uβ = Οβ vβ with βvββ = 1 (or Οβ = 0),
so Οβ = re βͺvβ, T uββ« = re βͺTβ* vβ, Tβ uββ«.
(n+1)Β·aβ(T) β€ βTββ_HSΒ·βTββ_HS for a factored compact operator.
Let T = TβTβ be compact, and suppose that along every orthonormal-or-zero
family the two factors satisfy the HilbertβSchmidt bounds
ββ βTβ uββΒ² β€ aΒ² and ββ βTβ* vββΒ² β€ bΒ². Then
(n+1)Β·aβ(T) β€ β_{kβ€n} Οβ(T) β€ bΒ·a for every n.
The first inequality is antitonicity of the singular values, the second is
svd_sigma_le_mul_of_factorization followed by CauchyβSchwarz and the two
hypotheses.