Documentation

LeanPool.DavisKahan.ForTauCeti.Analysis.InnerProductSpace.Singular.Subspace

Gram-operator perturbation #

For A, Γ‚ : E β†’β‚—[π•œ] F between finite-dimensional inner product spaces, the singular subspaces are the spectral subspaces of the Gram operators A⋆A and Â⋆Â. The Yu–Wang–Samworth singular-vector bound applies the symmetric result to these Gram operators, so it needs the Gram perturbation Â⋆Â βˆ’ A⋆A bounded in terms of Γ‚ βˆ’ A.

Main results #

References #

theorem TauCeti.norm_adjoint_apply_le {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [FiniteDimensional π•œ F] {A : E β†’β‚—[π•œ] F} {c : ℝ} (hc : 0 ≀ c) (h : βˆ€ (x : E), β€–A xβ€– ≀ c * β€–xβ€–) (y : F) :

The adjoint preserves an operator-norm bound. If β€–A xβ€– ≀ c β€–xβ€– for all x, then β€–A⋆ yβ€– ≀ c β€–yβ€– for all y β€” the elementwise form of β€–A⋆‖ = β€–Aβ€–. Proof: β€–A⋆ yβ€–Β² = reβŸͺy, A (A⋆ y)⟫ ≀ β€–yβ€– β€–A (A⋆ y)β€– ≀ c β€–yβ€– β€–A⋆ yβ€–.

theorem TauCeti.norm_gram_sub_gram_apply_le {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [FiniteDimensional π•œ F] {A Γ‚ : E β†’β‚—[π•œ] F} {a Γ’ Ξ΅ : ℝ} (hΓ’ : 0 ≀ Γ’) (hΞ΅ : 0 ≀ Ξ΅) (hA : βˆ€ (x : E), β€–A xβ€– ≀ a * β€–xβ€–) (hΓ‚ : βˆ€ (x : E), β€–Γ‚ xβ€– ≀ Γ’ * β€–xβ€–) (hE : βˆ€ (x : E), β€–(Γ‚ - A) xβ€– ≀ Ξ΅ * β€–xβ€–) (x : E) :

Gram-operator perturbation bound. With A, Γ‚, Γ‚ βˆ’ A bounded by a, Γ’, Ξ΅ respectively, β€–(Â⋆Â βˆ’ A⋆A) xβ€– ≀ (a + Γ’) Ξ΅ β€–xβ€–. From the splitting Â⋆Â βˆ’ A⋆A = Â⋆(Γ‚ βˆ’ A) + (Γ‚ βˆ’ A)⋆A, the two pieces are bounded by Γ’ Ξ΅ and Ξ΅ a (using norm_adjoint_apply_le).

theorem TauCeti.sum_re_inner_abs_self_eq_sum_singularValues {π•œ : Type u_1} {E : Type u_2} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] (A : E β†’β‚—[π•œ] E) {n : β„•} (hn : Module.finrank π•œ E = n) (b : OrthonormalBasis (Fin n) π•œ E) :
βˆ‘ k : Fin n, RCLike.re (inner π•œ ((operatorAbs A) (b k)) (b k)) = βˆ‘ i : Fin n, A.singularValues ↑i

Trace of the modulus = sum of singular values. For an endomorphism A : E β†’β‚—[π•œ] E, βˆ‘β‚– reβŸͺ|A| bβ‚–, bβ‚–βŸ« = βˆ‘α΅’ Οƒα΅’(A) in any orthonormal basis b. The modulus |A| = √(A⋆A) is diagonal in the A⋆A-eigenbasis with entries √λᡒ(A⋆A) = Οƒα΅’(A), and the trace is basis-independent.

theorem TauCeti.singularValues_le_one_of_contraction {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [FiniteDimensional π•œ F] {A : E β†’β‚—[π•œ] F} (h : βˆ€ (x : E), β€–A xβ€– ≀ β€–xβ€–) {n : β„•} (hn : Module.finrank π•œ E = n) (i : Fin n) :

Contraction β‡’ singular values ≀ 1. If A is a contraction (β€–A xβ€– ≀ β€–xβ€–), then every singular value satisfies Οƒα΅’(A) ≀ 1. Each eigenvalue Ξ»α΅’(A⋆A) = reβŸͺA wα΅’, A wᡒ⟫ = β€–A wα΅’β€–Β² ≀ 1 (wα΅’ the unit eigenvector), and Οƒα΅’ = √λᡒ.

theorem TauCeti.sum_sq_singularValues {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [FiniteDimensional π•œ F] (A : E β†’β‚—[π•œ] F) {n : β„•} (hn : Module.finrank π•œ E = n) (b : OrthonormalBasis (Fin n) π•œ E) :
βˆ‘ i : Fin n, A.singularValues ↑i ^ 2 = βˆ‘ k : Fin n, β€–A (b k)β€– ^ 2

Squared Frobenius norm = sum of squared singular values. For any orthonormal basis b of E, βˆ‘α΅’ Οƒα΅’(A)Β² = βˆ‘β‚– β€–A bβ‚–β€–Β². Via the dictionary Οƒα΅’Β² = Ξ»α΅’(A⋆A), basis independence of the trace, and reβŸͺbβ‚–, A⋆A bβ‚–βŸ« = β€–A bβ‚–β€–Β².

theorem TauCeti.sum_sq_norm_le_sum_re_inner_abs_of_contraction {π•œ : Type u_1} {E : Type u_2} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] {A : E β†’β‚—[π•œ] E} (h : βˆ€ (x : E), β€–A xβ€– ≀ β€–xβ€–) {n : β„•} (hn : Module.finrank π•œ E = n) (b : OrthonormalBasis (Fin n) π•œ E) :
βˆ‘ k : Fin n, β€–A (b k)β€– ^ 2 ≀ βˆ‘ k : Fin n, RCLike.re (inner π•œ ((operatorAbs A) (b k)) (b k))

FrobeniusΒ² ≀ trace of the modulus, for a contraction. If A : E β†’β‚—[π•œ] E is a contraction, then βˆ‘β‚– β€–A bβ‚–β€–Β² ≀ βˆ‘β‚– reβŸͺ|A| bβ‚–, bβ‚–βŸ«, i.e. βˆ‘ Οƒα΅’Β² ≀ βˆ‘ Οƒα΅’ (each Οƒα΅’ ∈ [0, 1]). This is the core inequality of the aligned-basis (orthogonal-Procrustes) argument: βˆ‘β€–wβ±Ό βˆ’ uβ±Όβ€–Β² = 2d βˆ’ 2βˆ‘Οƒ ≀ 2d βˆ’ 2βˆ‘ΟƒΒ² = 2Β·sinΘ².

theorem TauCeti.sum_sq_norm_apply_unitary_comp {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [FiniteDimensional π•œ F] (A : E β†’β‚—[π•œ] F) (U : E ≃ₗᡒ[π•œ] E) {n : β„•} (hn : Module.finrank π•œ E = n) (b : OrthonormalBasis (Fin n) π•œ E) :
βˆ‘ k : Fin n, β€–A (U (b k))β€– ^ 2 = βˆ‘ k : Fin n, β€–A (b k)β€– ^ 2

Unitary invariance of the Frobenius sum. Pre-composing with a unitary U does not change βˆ‘β‚– β€–A (b k)β€–Β²: βˆ‘β‚– β€–A (U bβ‚–)β€–Β² = βˆ‘β‚– β€–A bβ‚–β€–Β². Both equal the sum of squared singular values (sum_sq_singularValues), since k ↦ U bβ‚– is another orthonormal basis.

theorem TauCeti.abs_sq_singularValues_sub_le {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [FiniteDimensional π•œ F] {A Γ‚ : E β†’β‚—[π•œ] F} {a Γ’ Ξ΅ : ℝ} (hΓ’ : 0 ≀ Γ’) (hΞ΅ : 0 ≀ Ξ΅) (hA : βˆ€ (x : E), β€–A xβ€– ≀ a * β€–xβ€–) (hΓ‚ : βˆ€ (x : E), β€–Γ‚ xβ€– ≀ Γ’ * β€–xβ€–) (hE : βˆ€ (x : E), β€–(Γ‚ - A) xβ€– ≀ Ξ΅ * β€–xβ€–) {n : β„•} (hn : Module.finrank π•œ E = n) (k : Fin n) :
|Γ‚.singularValues ↑k ^ 2 - A.singularValues ↑k ^ 2| ≀ (a + Γ’) * Ξ΅

Gram-transported Weyl bound for squared singular values. The k-th squared singular values of A and Γ‚ differ by at most the Gram perturbation bound: |Οƒβ‚–(Γ‚)Β² βˆ’ Οƒβ‚–(A)Β²| ≀ (a + Γ’) Ξ΅. Via the dictionary Οƒβ‚–Β² = Ξ»β‚–(·⋆·) (sq_singularValues_fin) and Weyl's inequality on the Gram operators, fed by the perturbation bound norm_gram_sub_gram_apply_le.

This is weaker than Weyl's inequality for singular values, in three ways, and the name is deliberately not "Weyl's inequality" on that account: it bounds the squares, its constant carries the extra factor a + Γ’ so the bound degrades with the size of the operators, and it needs the auxiliary hypotheses hA, hΓ‚ that the genuine theorem does not. The sharp form is ContinuousLinearMap.abs_singularValues_sub_singularValues_le (ForTauCeti/Analysis/OperatorIdeal/ApproximationNumber/FiniteDimensional.lean), |Οƒβ‚™(T) βˆ’ Οƒβ‚™(S)| ≀ β€–T βˆ’ Sβ€–, which implies this one but not conversely β€” dividing back out by Οƒβ‚–(A) + Οƒβ‚–(Γ‚) recovers nothing when the singular values are small. This version survives because it is the shape the Gram-side arguments produce.

Extreme singular values: variational characterization #

The largest singular value is the operator norm and the smallest is the minimum gain, both attained. These are the quantitative inputs for the operator-norm principal-angle identification.

theorem TauCeti.singularValues_last_mul_norm_le {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [FiniteDimensional π•œ F] {n : β„•} (A : E β†’β‚—[π•œ] F) (hn : Module.finrank π•œ E = n) (hn0 : 0 < n) (x : E) :

The smallest singular value is a lower bound for the gain: Οƒ_{n-1}(A) * β€–xβ€– ≀ β€–A xβ€–.

theorem TauCeti.exists_norm_apply_eq_singularValues_last {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [FiniteDimensional π•œ F] {n : β„•} (A : E β†’β‚—[π•œ] F) (hn : Module.finrank π•œ E = n) (hn0 : 0 < n) :
βˆƒ (x : E), β€–xβ€– = 1 ∧ β€–A xβ€– = A.singularValues (n - 1)

The smallest singular value is attained.

theorem TauCeti.norm_apply_le_singularValues_zero_mul {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [FiniteDimensional π•œ F] {n : β„•} (A : E β†’β‚—[π•œ] F) (hn : Module.finrank π•œ E = n) (hn0 : 0 < n) (x : E) :

The largest singular value bounds the gain: β€–A xβ€– ≀ Οƒβ‚€(A) * β€–xβ€– (the elementwise form of Οƒβ‚€ = β€–Aβ€–).

theorem TauCeti.exists_norm_apply_eq_singularValues_zero {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [FiniteDimensional π•œ F] {n : β„•} (A : E β†’β‚—[π•œ] F) (hn : Module.finrank π•œ E = n) (hn0 : 0 < n) :
βˆƒ (x : E), β€–xβ€– = 1 ∧ β€–A xβ€– = A.singularValues 0

The largest singular value is attained.

Singular values of the adjoint (square case) #

Οƒ(A⋆) = Οƒ(A) for a square operator A : E β†’β‚—[π•œ] E. The Gram operators A⋆A and A A⋆ are unitarily conjugate (A A⋆ = U (A⋆A) U⁻¹ with U = choosePolarUnitary A), so they have equal sorted eigenvalues, hence A and A⋆ have equal singular values. This is the symmetry cosPrincipalAngles needs (plan step W0.1(d)).

Provenance #

theorem TauCeti.isSymmetric_conj_unitary {π•œ : Type u_1} {E : Type u_2} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] {S : E β†’β‚—[π•œ] E} (hS : S.IsSymmetric) (U : E ≃ₗᡒ[π•œ] E) :

The conjugate U S U⁻¹ of a symmetric operator by a unitary is symmetric.

theorem TauCeti.eigenvalues_conj_unitary {π•œ : Type u_1} {E : Type u_2} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] {n : β„•} {S : E β†’β‚—[π•œ] E} (hS : S.IsSymmetric) (hn : Module.finrank π•œ E = n) (U : E ≃ₗᡒ[π•œ] E) :
β‹―.eigenvalues hn = hS.eigenvalues hn

Unitary conjugation preserves sorted eigenvalues. For a symmetric operator S and a unitary U, S and U S U⁻¹ have the same sorted eigenvalues. (Courant–Fischer: the Rayleigh minimax is invariant under the subspace bijection V ↦ U V.)

The Gram operators A A⋆ and A⋆A are unitarily conjugate: A A⋆ = U (A⋆A) U⁻¹ with U = choosePolarUnitary A. From A = U |A|, A⋆ = |A| U⁻¹, so A A⋆ = U |A|Β² U⁻¹ = U (A⋆A) U⁻¹.

theorem TauCeti.eigenvalues_gram_adjoint {π•œ : Type u_1} {E : Type u_2} [RCLike π•œ] [NormedAddCommGroup E] [InnerProductSpace π•œ E] [FiniteDimensional π•œ E] {n : β„•} (A : E β†’β‚—[π•œ] E) (hn : Module.finrank π•œ E = n) :
β‹―.eigenvalues hn = β‹―.eigenvalues hn

The Gram operators of A and A⋆ have equal sorted eigenvalues.