Documentation

TauCeti.Analysis.Matrix.FunctionalCalculus

Spectral projectors, traces, continuity and measurability of the Hermitian functional calculus #

For a Hermitian matrix A over ๐•œ = โ„ or โ„‚ (any RCLike field) and a real function f, Mathlib's continuous functional calculus defines the matrix cfc f A. Every real function is continuous on the finite spectrum of A, so cfc f A is meaningful for arbitrary f. This file relates it to the eigenspaces of A and studies its dependence on A.

Eigenvectors and spectral projectors. The Euclidean operator of cfc f A multiplies an eigenvector of A with eigenvalue ฮผ by f ฮผ, so it is the functional calculus LinearMap.IsSymmetric.cfc of the symmetric operator Matrix.toEuclideanLin A. For a set ฮฉ โІ โ„, the Euclidean operator of the star projection cfc (ฮฉ.indicator 1) A (see TauCeti.isStarProjection_cfc_indicator) is therefore the orthogonal projection onto the sum Module.End.pointSpectralSubspace A.toEuclideanLin ฮฉ of the eigenspaces of A at eigenvalues in ฮฉ. For ฮฉ = [c, โˆž) this is the fixed-threshold spectral projector P_[c,โˆž)(A), the cluster object used for spectral subspaces in the presence of eigenvalue multiplicity.

Intertwiners. A rectangular matrix V with A * V = V * B for Hermitian A and B also satisfies cfc f A * V = V * cfc f B, since both functional calculi agree with one polynomial on the two finite spectra. Compressing cfc f A to an A-invariant subspace thus gives the functional calculus of the compression of A.

Traces. The trace of cfc f A is โˆ‘แตข f(aแตข) over the eigenvalues aแตข of A. For a second Hermitian matrix B with eigenvalues bโฑผ, the trace of cfc f A * cfc g B is โˆ‘แตข โˆ‘โฑผ f(aแตข) g(bโฑผ) โ€–โŸชuแตข, vโฑผโŸซโ€–ยฒ, where uแตข and vโฑผ are the orthonormal eigenvectors. This reduces trace inequalities for noncommuting Hermitian matrices, such as the positivity of relative entropy, to scalar inequalities between eigenvalues.

Continuity. For continuous f, the map A โ†ฆ cfc f A is continuous on the Hermitian matrices for the entrywise topology. This is Mathlib's continuity of the isometric functional calculus in its operator variable, which is available for matrices under the scoped โ„“ยฒ operator norm.

Measurability. For continuous f, the map A โ†ฆ cfc f A is Borel measurable on all of Matrix n n ๐•œ: it is continuous on the closed set of Hermitian matrices and zero off it. Since the spectrum of a matrix is finite, pointwise convergence F k โ†’ f gives cfc (F k) A โ†’ cfc f A, so measurability passes to pointwise limits of continuous functions. The indicator of a closed set is such a limit, so spectral projectors A โ†ฆ cfc (ฮฉ.indicator 1) A for closed ฮฉ, in particular the fixed-threshold projectors, are Borel measurable even though they are not continuous. Composing with a measurable random matrix ฯ‰ โ†ฆ A ฯ‰ gives measurability of ฯ‰ โ†ฆ cfc f (A ฯ‰) and of ฯ‰ โ†ฆ P_[c,โˆž)(A ฯ‰); no Hermitian hypothesis on A ฯ‰ is needed for this.

Main results #

References #

theorem Matrix.IsHermitian.mul_cfc {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {A : Matrix n n ๐•œ} (hA : A.IsHermitian) (f : โ„ โ†’ โ„) :
A * cfc f A = cfc (fun (x : โ„) => x * f x) A

Multiplying the functional calculus by its Hermitian matrix on the left multiplies the scalar function by the identity.

theorem Matrix.IsHermitian.cfc_mul {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {A : Matrix n n ๐•œ} (hA : A.IsHermitian) (f : โ„ โ†’ โ„) :
cfc f A * A = cfc (fun (x : โ„) => f x * x) A

Multiplying the functional calculus by its Hermitian matrix on the right multiplies the scalar function by the identity.

theorem Matrix.IsHermitian.cfc_mul_eq_mul_cfc {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {A : Matrix n n ๐•œ} {m : Type u_3} [Fintype m] [DecidableEq m] {B : Matrix m m ๐•œ} {V : Matrix n m ๐•œ} (hA : A.IsHermitian) (hB : B.IsHermitian) (h : A * V = V * B) (f : โ„ โ†’ โ„) :
cfc f A * V = V * cfc f B

The functional calculus preserves intertwiners. If a rectangular matrix V intertwines the Hermitian matrices A and B, that is A * V = V * B, then cfc f A * V = V * cfc f B for every real function f.

theorem Matrix.inv_sq_add_smul_mul_eq_cfc {n : Type u_1} [Fintype n] [DecidableEq n] {C : Matrix n n โ„} (hC : C.IsHermitian) {ฮต : โ„} (hฮต : 0 < ฮต) :
(C ^ 2 + ฮต โ€ข 1)โปยน * C = cfc (fun (x : โ„) => x / (x ^ 2 + ฮต)) C

For symmetric C and positive ฮต, (Cยฒ + ฮต I)โปยน C is the functional calculus of x โ†ฆ x / (xยฒ + ฮต) at C, including when C is singular.

theorem Matrix.IsHermitian.toEuclideanLin_cfc_apply_of_apply_eq_smul {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {A : Matrix n n ๐•œ} (hA : A.IsHermitian) (f : โ„ โ†’ โ„) {ฮผ : โ„} {x : EuclideanSpace ๐•œ n} (hx : (toEuclideanLin A) x = โ†‘ฮผ โ€ข x) :
(toEuclideanLin (cfc f A)) x = โ†‘(f ฮผ) โ€ข x

The functional calculus cfc f A of a Hermitian matrix multiplies an eigenvector of A with eigenvalue ฮผ by f ฮผ.

theorem Matrix.IsHermitian.toEuclideanLin_cfc {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {A : Matrix n n ๐•œ} (hA : A.IsHermitian) (f : โ„ โ†’ โ„) :
toEuclideanLin (cfc f A) = โ‹ฏ.cfc f

The Euclidean operator of the functional calculus cfc f A of a Hermitian matrix is the functional calculus LinearMap.IsSymmetric.cfc f of the symmetric operator A.toEuclideanLin.

theorem Matrix.IsHermitian.toEuclideanLin_cfc_indicator {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {A : Matrix n n ๐•œ} (hA : A.IsHermitian) (ฮฉ : Set โ„) :

The spectral projector of a Hermitian matrix. For ฮฉ โІ โ„, the Euclidean operator of cfc (ฮฉ.indicator 1) A is the orthogonal projection onto the sum of the eigenspaces of A at eigenvalues in ฮฉ. For ฮฉ = Set.Ici c this is the fixed-threshold projector P_[c,โˆž)(A).

theorem Matrix.IsHermitian.trace_cfc {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {A : Matrix n n ๐•œ} (hA : A.IsHermitian) (f : โ„ โ†’ โ„) :
(cfc f A).trace = โˆ‘ i : n, โ†‘(f (hA.eigenvalues i))

The trace of cfc f A is the sum of the values of f at the eigenvalues of A, counted with multiplicity.

theorem Matrix.IsHermitian.star_eigenvectorUnitary_mul_eigenvectorUnitary_apply {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {A B : Matrix n n ๐•œ} (hA : A.IsHermitian) (hB : B.IsHermitian) (i j : n) :
(star โ†‘hA.eigenvectorUnitary * โ†‘hB.eigenvectorUnitary) i j = inner ๐•œ (hA.eigenvectorBasis i) (hB.eigenvectorBasis j)

The entries of Uโ‹† V, for the eigenvector unitaries U of A and V of B, are the inner products of the eigenvectors of A with those of B.

theorem Matrix.IsHermitian.trace_cfc_mul_cfc {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {A B : Matrix n n ๐•œ} (hA : A.IsHermitian) (hB : B.IsHermitian) (f g : โ„ โ†’ โ„) :
(cfc f A * cfc g B).trace = โˆ‘ i : n, โˆ‘ j : n, โ†‘(f (hA.eigenvalues i) * g (hB.eigenvalues j) * โ€–inner ๐•œ (hA.eigenvectorBasis i) (hB.eigenvectorBasis j)โ€– ^ 2)

The trace of a product of two functional calculi. For Hermitian A and B with eigenvalues aแตข, bโฑผ and orthonormal eigenvectors uแตข, vโฑผ, Tr (f(A) g(B)) = โˆ‘แตข โˆ‘โฑผ f(aแตข) g(bโฑผ) โ€–โŸชuแตข, vโฑผโŸซโ€–ยฒ. The weights โ€–โŸชuแตข, vโฑผโŸซโ€–ยฒ form a doubly stochastic matrix (OrthonormalBasis.sum_sq_norm_inner_right and OrthonormalBasis.sum_sq_norm_inner_left); this identity reduces trace inequalities for pairs of noncommuting Hermitian matrices to scalar inequalities between their eigenvalues.

theorem Matrix.IsHermitian.re_trace_cfc_mul_cfc {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {A B : Matrix n n ๐•œ} (hA : A.IsHermitian) (hB : B.IsHermitian) (f g : โ„ โ†’ โ„) :
RCLike.re (cfc f A * cfc g B).trace = โˆ‘ i : n, โˆ‘ j : n, f (hA.eigenvalues i) * g (hB.eigenvalues j) * โ€–inner ๐•œ (hA.eigenvectorBasis i) (hB.eigenvectorBasis j)โ€– ^ 2

The real part of the trace formula Matrix.IsHermitian.trace_cfc_mul_cfc: re Tr (f(A) g(B)) = โˆ‘แตข โˆ‘โฑผ f(aแตข) g(bโฑผ) โ€–โŸชuแตข, vโฑผโŸซโ€–ยฒ, as an identity of real numbers.

theorem TauCeti.continuousOn_matrix_cfc {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {f : โ„ โ†’ โ„} (hf : Continuous f) :
ContinuousOn (cfc f) {A : Matrix n n ๐•œ | A.IsHermitian}

Continuity of the Hermitian functional calculus. For a continuous f : โ„ โ†’ โ„, the map A โ†ฆ cfc f A is continuous on the Hermitian matrices.

theorem TauCeti.tendsto_matrix_cfc_fun {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {ฮน : Type u_3} {l : Filter ฮน} {F : ฮน โ†’ โ„ โ†’ โ„} {f : โ„ โ†’ โ„} (hFf : โˆ€ (t : โ„), Filter.Tendsto (fun (k : ฮน) => F k t) l (nhds (f t))) (A : Matrix n n ๐•œ) :
Filter.Tendsto (fun (k : ฮน) => cfc (F k) A) l (nhds (cfc f A))

If F k โ†’ f pointwise along a filter l, then cfc (F k) A โ†’ cfc f A for every square matrix A. No continuity is needed, because the spectrum of a matrix is finite.

theorem TauCeti.measurable_matrix_cfc {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {f : โ„ โ†’ โ„} (hf : Continuous f) :

Measurability of the Hermitian functional calculus. For a continuous f : โ„ โ†’ โ„, the map A โ†ฆ cfc f A is Borel measurable on Matrix n n ๐•œ. It is continuous on the closed set of Hermitian matrices and zero elsewhere.

theorem TauCeti.measurable_matrix_cfc_of_tendsto {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {F : โ„• โ†’ โ„ โ†’ โ„} {f : โ„ โ†’ โ„} (hF : โˆ€ (k : โ„•), Continuous (F k)) (hFf : โˆ€ (t : โ„), Filter.Tendsto (fun (k : โ„•) => F k t) Filter.atTop (nhds (f t))) :

If f : โ„ โ†’ โ„ is a pointwise limit of continuous functions, then A โ†ฆ cfc f A is Borel measurable on Matrix n n ๐•œ, although it need not be continuous on the Hermitian matrices.

theorem TauCeti.measurable_matrix_cfc_indicator {n : Type u_1} {๐•œ : Type u_2} [RCLike ๐•œ] [Fintype n] [DecidableEq n] {ฮฉ : Set โ„} (hฮฉ : IsClosed ฮฉ) :
Measurable (cfc (ฮฉ.indicator 1))

Measurability of spectral projectors. For a closed set ฮฉ โІ โ„, the spectral projector A โ†ฆ cfc (ฮฉ.indicator 1) A is Borel measurable on Matrix n n ๐•œ. For ฮฉ = Set.Ici c this is the fixed-threshold projector P_[c,โˆž)(A).