This chapter describes how the library encodes the spectral theory of bounded self-adjoint
operators on a complex Hilbert space, up to the spectral theorem. It corresponds to
Section 10.2
of the blueprint, which follows the presentation of Hall's
Quantum Theory for Mathematicians. The spectral
theorem for unbounded operators and Stone's theorem, in Sections 10.3 and 10.4 of the blueprint,
build on it.
2.1.Β Overviewπ
As you will recall, a Hermitian matrix A has real eigenvalues \lambda_k and mutually
orthogonal eigenprojections P_k summing to \mathbf{1}, so that
A = \sum_k \lambda_k P_k, and a function of A is f(A) = \sum_k f(\lambda_k) P_k. The spectral theorem for a bounded
self-adjoint operator A on a Hilbert space H says the same with the sum over eigenvalues
replaced by an integral over the spectrum \sigma(A) against a projection-valued measure
\mu^A:
A = \int_{\sigma(A)} \lambda \, d\mu^A(\lambda),
\qquad f(A) = \int_{\sigma(A)} f \, d\mu^A.
For a unit vector \psi, \langle \psi, \mu^A(E)\psi \rangle is the probability that a
measurement of A in the state \psi gives a value in E. The integral also covers
continuous spectrum: the multiplication operator (M\psi)(x) = x\,\psi(x) on L^2([0, 1]) has
spectrum [0, 1] and no eigenvalues.
The library proves the theorem as the blueprint does, in stages:
-
Spectrum and resolvent. The spectrum of a bounded operator is compact, and nonempty when
H \neq 0; the resolvent set is open, and the resolvent is a power series near each of its
points; the spectrum of a self-adjoint operator is real.
-
The continuous functional calculus. For self-adjoint A, f \mapsto f(A) on the continuous
real functions on \sigma(A) is the unique bounded linear map that extends
p \mapsto p(A) on polynomials. It is multiplicative and isometric, f(A) is self-adjoint,
non-negative when f \ge 0, and \sigma(f(A)) = f(\sigma(A)).
-
The associated measures. By the RieszβMarkovβKakutani theorem, for each \psi there is a
unique finite positive measure \mu_\psi on \sigma(A) with
\langle \psi, f(A)\psi \rangle = \int f \, d\mu_\psi for continuous f, of total mass
\|\psi\|^2.
-
Forms. A bounded quadratic form Q is \psi \mapsto \langle \psi, B\psi \rangle for a
unique bounded operator B. This is how operators are constructed in the rest of the section.
-
The Borel functional calculus. For a bounded Borel function f on \sigma(A),
Q_f(\psi) = \int f \, d\mu_\psi is a bounded quadratic form, and f(A) is its operator. The
map f \mapsto f(A) is linear and multiplicative, and f(A) is self-adjoint for real f.
The boundedness of Q_f and the multiplicativity are extended from continuous to Borel
functions by a monotone-class argument.
-
Projection-valued measures and their integrals. A projection-valued measure \mu gives a
measure \mu_\psi(E) = \langle \psi, \mu(E)\psi \rangle for each vector and an operator
\int f \, d\mu for each bounded measurable f, with
\langle \psi, (\int f \, d\mu)\psi \rangle = \int f \, d\mu_\psi. The integral is linear and
multiplicative, bounded by \sup |f|, and sends \bar f to the adjoint.
-
The spectral theorem. The projections \mu^A(E) = 1_E(A) form a projection-valued measure on
\sigma(A) that integrates the identity function to A, and it is the only one that does.
For bounded Borel f, f(A) = \int f \, d\mu^A.
Every statement of the section is proved in Lean. The standard results the blueprint states
without proof, such as the HeineβBorel, Riesz representation, StoneβWeierstrass and bounded
convergence theorems, are Mathlib theorems or short derivations from them. The declarations are in
the namespace Physicslib4.Spectral, written without the prefix below.
2.2.Β Designπ
The conventions inherited from Mathlib, among them realCalculus as Mathlib's cfcHom, are
collected in the conventions chapter under Implementation choices.
The blueprint is the specification. Where the library departs from the blueprint's route, this
section says so; where the blueprint records the departure in a formalization note or a
convention, the section links to it.
2.2.1.Β Operators, adjoints and the Hilbert spaceπ
A bounded operator is an element of H βL[β] H, Mathlib's continuous linear maps, which is the
blueprint's \mathcal{B}(H). Mathlib supplies the operator norm, the adjoint
(ContinuousLinearMap.adjoint), self-adjointness (IsSelfAdjoint), orthogonal projections
(IsStarProjection), and a C*-algebra structure on H βL[β] H. Its inner product is
conjugate-linear in the first argument, the physics convention that the blueprint fixes in
def:inner-product.
The blueprint takes H separable and nonzero, but only for convenience. No declaration assumes
separability; the convergence arguments use only completeness. Nonzero H appears as a
Nontrivial H hypothesis on just the statements that use it, such as the nonemptiness of the
spectrum
(conv:nonzero-hilbert-space).
2.2.2.Β Spectrum and resolvent are Mathlib'sπ
The spectrum and the resolvent set are Mathlib's spectrum β A and resolventSet β A. Mathlib
defines them through \lambda\mathbf{1} - A, the blueprint through A - \lambda\mathbf{1}; the
two give the same set, which mem_resolventSet_iff_isUnit_sub_smul records. Mathlib's
resolvent A Ξ» is (\lambda\mathbf{1} - A)^{-1}, the negative of the blueprint's resolvent.
Once \sigma(A) is known to be real for self-adjoint A (spectrum_subset_real), every later
statement uses Mathlib's real spectrum spectrum β A, a compact subset of \mathbb{R}, instead
of the blueprint's subset of \mathbb{C}. It is the type on which Mathlib's functional calculus
is indexed, and it carries the Borel Ο-algebra of its topology as a subspace of \mathbb{R}.
Functions on the spectrum are functions on this subtype, and the identity function \lambda is
fun l => ((l : β) : β), which Lean prints as fun l => ββl.
2.2.3.Β The continuous calculus is Mathlib'sπ
The blueprint builds f \mapsto f(A) by hand: polynomials first, then the extension to
continuous functions by density (the StoneβWeierstrass theorem) and the bounded linear
transformation theorem. Mathlib already has the continuous functional calculus for self-adjoint
elements of a C*-algebra, cfcHom, and the library uses it: realCalculus hA is cfcHom hA.
Its type, a *-algebra homomorphism C(spectrum β A, β) βββ[β] (H βL[β] H), records
multiplicativity and compatibility with the adjoint, and Mathlib proves the norm identity and
spectral mapping for it. What the library adds is the blueprint's characterisation: realCalculus
is the unique bounded linear map that sends each polynomial to p(A), proved from the density
of the polynomials (formalization note of
prpstn:hall-8.3).
As in the blueprint, the continuous calculus is for real functions; the Borel calculus below takes
complex ones.
2.2.4.Β Measures from the RieszβMarkovβKakutani theoremπ
The measure \mu_\psi is Mathlib's RieszβMarkovβKakutani measure RealRMK.rieszMeasure of the
positive functional f \mapsto \langle \psi, f(A)\psi \rangle. Mathlib states that theorem for
compactly supported functions; on the compact \sigma(A) these are all continuous functions.
Uniqueness of \mu_\psi is Mathlib's uniqueness of the representing measure, so the
associated-measure theorem is fully proved.
Two constructions in the section produce operators: the Borel calculus f(A) and the integral
\int f \, d\mu. Both go through the same lemma
(prpstn:hall-a.63):
a bounded quadratic form Q determines a unique bounded B with
Q(\psi) = \langle \psi, B\psi \rangle. The form in both cases is
Q_f(\psi) = \int f \, d\mu_\psi, so the hard work is to show that it is a bounded quadratic
form.
Sesquilinear forms are Mathlib's bundled semilinear maps: H βββ[β] H ββ[β] β, and, for bounded
ones, the continuous version H βLβ[β] H βL[β] β, whose continuity is the bound
|L(\varphi, \psi)| \le C\|\varphi\|\|\psi\|. A quadratic form is a property of a plain function
Q : H β β (IsQuadraticForm, IsBoundedQuadraticForm): Q_f arrives as a function, and
these properties are what must be proved of it. The operator IsBoundedQuadraticForm.toOperator
comes from the polarization of Q through Mathlib's Riesz representation of bounded sesquilinear
forms.
The operators borelCalculus hA f and ΞΌ.integral f are chosen from the existence-and-uniqueness
theorems, so their properties are theorems and not definitional: linearity is borelCalculus_add,
integral_add and their scalar versions. Both are defined on all functions, with the value 0
on functions that are not bounded and measurable, so every statement takes the hypothesis
f β BddMeasurable _ explicitly.
2.2.6.Β Bounded Borel functions and the monotone-class bootstrapπ
The bounded measurable functions on X form the complex subspace BddMeasurable X, a Mathlib
Submodule; membership is the pair "measurable, and bounded by a constant". It is the one spelling
of "bounded Borel function" in the section.
Three results extend a property from continuous to bounded Borel functions: that Q_f is a bounded
quadratic form, that the Borel calculus is multiplicative, and that two spectral measures of
A integrate every bounded Borel function to the same operator. All three use one lemma,
IsBorelGenerating.eq_bddMeasurable: a class of bounded measurable functions that is a subspace,
contains the continuous real functions, and is closed under uniformly bounded pointwise limits, is
all of BddMeasurable X. The proof follows the blueprint. The class \mathcal{L}_0 (L0) of
sets whose indicator is a bounded pointwise limit of continuous functions contains the closed sets
(by bump functions) and is an algebra of sets, and the monotone class theorem, proved in the
library, extends it to all Borel sets. Mathlib's dominated convergence theorem gives the bounded
convergence theorem, which is what passes the limits through \int \cdot \, d\mu_\psi. Each
application then defines its class and checks the three conditions: FClass for boundedness,
F1Class and F2Class for multiplicativity.
The lemma needs a metric space with its Borel Ο-algebra but not compactness. L0 omits the
blueprint's requirement that the set be measurable, since that follows
(measurableSet_of_mem_L0).
2.2.7.Β Projection-valued measuresπ
ProjectionValuedMeasure X H is a structure, with the blueprint's axioms as fields
(def:projection-valued-measure).
As for Mathlib's vector measures, the underlying map is defined on all subsets of X, and is
0 on non-measurable ones, so applying \mu to a set needs no measurability proof. Countable
additivity is strong: \sum_j \mu(E_j)v converges to \mu(\bigcup_j E_j)v for each vector v,
stated with Mathlib's unconditional HasSum, which for orthogonal vectors is the same as
convergence of the partial sums. \mu(\emptyset) = 0 is not a field, since it follows from
countable additivity. The blueprint's equivalence of projection-valued measures is equality.
2.2.8.Β Two routes to f(A) and uniquenessπ
The section has two Borel calculi. borelCalculus hA f is built from Q_f with the measures
\mu_\psi of the RieszβMarkovβKakutani theorem. The spectral measure is then
\mu^A(E) = 1_E(A), spectralMeasure hA, and functionalCalculus hA f is
\int f \, d\mu^A. They agree (borelCalculus_eq_integral), so f(A) is unambiguous.
The spectral theorem is stated with β! over projection-valued measures on spectrum β A.
Uniqueness follows the blueprint: two projection-valued measures that integrate \lambda to A
agree on polynomials, then on continuous functions by the complex StoneβWeierstrass theorem, then
on bounded Borel functions by the bootstrap, and so on indicator functions, which give the
projections themselves.
2.3.Β Main definitions and theoremsπ
Definitions are shown with their docstrings, which give the mathematics and the blueprint entry;
theorems with their statements, as Lean prints them, and a line or two of explanation. Each
subsection opens with the blueprint entries it covers. In the printed statements, inner β x y is
the inner product \langle x, y \rangle, hA : IsSelfAdjoint A is the hypothesis that A is
self-adjoint, β(spectrum β A) is the real spectrum as a type, and fun l => ββl is the function
\lambda on it. For the declarations not shown here, see the
API documentation
and the files listed at the end of the chapter. The subsections follow the order of the proof; the
blueprint introduces projection-valued measures before the continuous calculus.
2.3.1.Β Spectrum and resolventπ
Blueprint: def:bounded-operator-resolvent-and-spectrum, prpstn:hall-7.5,
prpstn:resolvent-holomorphy-and-neumann-series, prpstn:hall-7.7,
lmm:spectrum-is-compact-metric-measurable, def:spectral-radius,
thrm:gelfand-formula.
The spectrum and the resolvent set are Mathlib's. The library identifies them with the blueprint's,
in its sign convention:
open Physicslib4 Spectral in
Physicslib4.Spectral.mem_resolventSet_iff_isUnit_sub_smul.{u_1} {H : Type u_1} [NormedAddCommGroup H]
[InnerProductSpace β H] (A : H βL[β] H) (lam : β) : lam β resolventSet β A β IsUnit (A - lam β’ 1)#check mem_resolventSet_iff_isUnit_sub_smul
Physicslib4.Spectral.mem_resolventSet_iff_isUnit_sub_smul.{u_1} {H : Type u_1} [NormedAddCommGroup H]
[InnerProductSpace β H] (A : H βL[β] H) (lam : β) : lam β resolventSet β A β IsUnit (A - lam β’ 1)
The spectrum is compact
(isCompact_spectrum) and, for H \neq 0,
nonempty (spectrum_nonempty); the resolvent set
is open, and near each of its points the resolvent is a norm-convergent power series
(isOpen_resolventSet,
exists_hasSum_resolvent). The spectral
radius and Gelfand's formula are Mathlib's spectralRadius and
spectrum.pow_nnnorm_pow_one_div_tendsto_nhds_spectralRadius.
For a self-adjoint operator the spectrum is real:
open Physicslib4 Spectral in
Physicslib4.Spectral.spectrum_subset_real.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) : spectrum β A β {z | z.im = 0}#check spectrum_subset_real
Physicslib4.Spectral.spectrum_subset_real.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) : spectrum β A β {z | z.im = 0}
The proof takes this from Mathlib (IsSelfAdjoint.spectrumRestricts). The blueprint's estimate
behind it, \|(A - (a + ib)\mathbf{1})\psi\|^2 \ge b^2\|\psi\|^2 for real a and b, is
sq_norm_sub_smul_apply_le.
2.3.2.Β The continuous functional calculusπ
Blueprint: prpstn:hall-8.3, prpstn:hall-8.4, and its parts
prpstn:cfc-multiplicative to prpstn:cfc-spectral-mapping.
πdefPhysicslib4.Spectral.realCalculus.{u_1} {H : Type u_1}
[NormedAddCommGroup H] [InnerProductSpace β H] [CompleteSpace H]
{A : H βL[β] H} (hA : IsSelfAdjoint A) :
C(β(spectrum β A), β) βββ[β] H βL[β] H Physicslib4.Spectral.realCalculus.{u_1}
{H : Type u_1} [NormedAddCommGroup H]
[InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H}
(hA : IsSelfAdjoint A) :
C(β(spectrum β A), β) βββ[β] H βL[β] H
The real continuous functional calculus f β¦ f(A) of a self-adjoint bounded operator A.
For a continuous real function f on the spectrum Ο(A), f(A) is the norm limit of p_n(A) for any
polynomials p_n converging to f uniformly on Ο(A). In finite dimensions, where A has an
orthonormal eigenbasis, f(A) multiplies each eigenvector by f of its eigenvalue. The map is
linear, sends polynomials to the evident operators (realCalculus_polyOn), and is the unique
bounded linear map that does so (existsUnique_realCalculus). It is multiplicative, f(A) is
self-adjoint, f β₯ 0 gives a non-negative operator, βf(A)β = sup |f| on Ο(A), and
Ο(f(A)) = f(Ο(A)) (realCalculus_properties).
Implementation note: the definition is Mathlib's continuous functional calculus cfcHom at the
hypothesis hA, available because Mathlib makes H βL[β] H a C*-algebra; it is not
extracted from existsUnique_realCalculus. Its type, a StarAlgHom over β, records that
f β¦ f(A) is a *-algebra homomorphism and not only an β-linear map, which is part of
prpstn:hall-8.4. Ο(A) is Mathlib's real spectrum spectrum β A.
Blueprint: the map f β¦ f(A) of prpstn:hall-8.3
The blueprint's characterisation, with polyOn A p the polynomial p restricted to
\sigma(A):
open Physicslib4 Spectral in
Physicslib4.Spectral.existsUnique_realCalculus.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) :
β! T, β (p : Polynomial β), T (polyOn A p) = (Polynomial.aeval A) p#check existsUnique_realCalculus
Physicslib4.Spectral.existsUnique_realCalculus.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) :
β! T, β (p : Polynomial β), T (polyOn A p) = (Polynomial.aeval A) p
Here T ranges over the bounded β-linear maps C(spectrum β A, β) βL[β] (H βL[β] H), and
realCalculus_polyOn says that realCalculus is the one. The properties are separate theorems,
collected in realCalculus_properties; for
example, the norm identity \|f(A)\| = \sup_{\sigma(A)} |f|:
open Physicslib4 Spectral in
Physicslib4.Spectral.norm_realCalculus.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) (f : C(β(spectrum β A), β)) : β(realCalculus hA) fβ = βfβ#check norm_realCalculus
Physicslib4.Spectral.norm_realCalculus.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) (f : C(β(spectrum β A), β)) : β(realCalculus hA) fβ = βfβ
2.3.3.Β The associated measuresπ
Blueprint: thrm:riesz-representation, prpstn:associated-measures-self-adjoint,
lmm:associated-measures-are-finite.
πdefPhysicslib4.Spectral.assocMeasure.{u_1} {H : Type u_1}
[NormedAddCommGroup H] [InnerProductSpace β H] [CompleteSpace H]
{A : H βL[β] H} (hA : IsSelfAdjoint A) (Ο : H) :
MeasureTheory.Measure β(spectrum β A) Physicslib4.Spectral.assocMeasure.{u_1}
{H : Type u_1} [NormedAddCommGroup H]
[InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H}
(hA : IsSelfAdjoint A) (Ο : H) :
MeasureTheory.Measure β(spectrum β A)
The finite positive Borel measure ΞΌ_Ο on Ο(A) with β¨Ο, f(A)Οβ© = β« f dΞΌ_Ο for continuous real f.
For a unit vector Ο, ΞΌ_Ο is the probability distribution of the outcomes of a measurement of A in
the state Ο: ΞΌ_Ο(E) is the probability of finding a value in E. Its total mass is βΟβΒ²
(assocMeasure_univ), the integral identity is integral_assocMeasure, and ΞΌ_Ο is the only
finite measure with that identity (existsUnique_assocMeasure). It defines the quadratic form
Q_f(Ο) = β« f dΞΌ_Ο of the Borel functional calculus (borelForm).
Implementation note: the measure is Mathlib's RieszβMarkovβKakutani measure
RealRMK.rieszMeasure of assocFunctional hA Ο, not a choice from existsUnique_assocMeasure.
Blueprint: the measure ΞΌ_Ο of prpstn:associated-measures-self-adjoint
The associated-measure theorem, existence and uniqueness:
open Physicslib4 Spectral in
Physicslib4.Spectral.existsUnique_assocMeasure.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) (Ο : H) :
β! Ξ½,
MeasureTheory.IsFiniteMeasure Ξ½ β§
β (f : C(β(spectrum β A), β)), inner β Ο (((realCalculus hA) f) Ο) = β(β« (l : β(spectrum β A)), f l βΞ½)#check existsUnique_assocMeasure
Physicslib4.Spectral.existsUnique_assocMeasure.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) (Ο : H) :
β! Ξ½,
MeasureTheory.IsFiniteMeasure Ξ½ β§
β (f : C(β(spectrum β A), β)), inner β Ο (((realCalculus hA) f) Ο) = β(β« (l : β(spectrum β A)), f l βΞ½)
Here Ξ½ ranges over the measures on spectrum β A; the integral is real, and β embeds it in
\mathbb{C}. The total mass is
assocMeasure_univ,
\mu_\psi(\sigma(A)) = \|\psi\|^2, stated in Mathlib's extended non-negative reals, where
measures take their values. The RieszβMarkovβKakutani theorem itself,
for a positive functional on the continuous functions on a compact metric space, is
existsUnique_measure_of_positive_linear.
2.3.4.Β Sesquilinear and quadratic formsπ
Blueprint: def:bounded-sesquilinear-form, def:bounded-quadratic-form,
prpstn:hall-a.61, prpstn:hall-a.63.
The representation theorem for bounded quadratic forms:
open Physicslib4 Spectral in
Physicslib4.Spectral.existsUnique_operator_of_isBoundedQuadraticForm.{u_1} {H : Type u_1} [NormedAddCommGroup H]
[InnerProductSpace β H] [CompleteSpace H] {Q : H β β} (hQ : IsBoundedQuadraticForm Q) :
β! A, β (Ο : H), Q Ο = inner β Ο (A Ο)#check existsUnique_operator_of_isBoundedQuadraticForm
Physicslib4.Spectral.existsUnique_operator_of_isBoundedQuadraticForm.{u_1} {H : Type u_1} [NormedAddCommGroup H]
[InnerProductSpace β H] [CompleteSpace H] {Q : H β β} (hQ : IsBoundedQuadraticForm Q) :
β! A, β (Ο : H), Q Ο = inner β Ο (A Ο)
The operator is hQ.toOperator,
and it is self-adjoint when Q is real-valued (IsBoundedQuadraticForm.isSelfAdjoint_toOperator).
The polarization formula is
polarization. To apply the theorem to a candidate
Q_f, one proves the homogeneity Q_f(c\psi) = |c|^2 Q_f(\psi), the sesquilinearity of its
polarization and a bound |Q_f(\psi)| \le C\|\psi\|^2; for the Borel calculus these are the
propositions from
prpstn:F-homogeneous
to
prpstn:F-bounded.
2.3.5.Β Bounded Borel functions and the bootstrapπ
Blueprint: thrm:bounded-convergence-theorem, def:L0-class,
thrm:monotone-class-theorem, lmm:hall-prblm-8.3.3a,
lmm:hall-prblm-8.3.3b, lmm:hall-prblm-8.3.3c.
πdef
The complex vector space of bounded measurable complex-valued functions on a measurable space X.
A function f : X β β belongs to it when f is measurable and |f(x)| β€ C for some constant C and
every x β X. On the spectrum of an operator, with its Borel Ο-algebra, these are the bounded Borel
functions to which the Borel functional calculus applies: indicator functions 1_E of Borel sets E
(the spectral projections), step functions, and every bounded continuous function.
Implementation note: the class is a Submodule β (X β β), so membership packages the two
hypotheses Measurable f and β C, β x, βf xβ β€ C (mem_bddMeasurable), and closure under sums
and scalar multiples is part of the structure. It is the single spelling of "bounded Borel
function" in the spectral files.
Blueprint: the bounded Borel functions of def:hall-8.8 and thrm:operator-valued-integration
πstructure
A sequence of functions f_n : Ξ± β β is bounded by b uniformly in n and converges pointwise to g.
The hypotheses are |f_n(x)| β€ b(x) for every n and every x, and f_n(x) β g(x) for every x. The
convergence is pointwise, not uniform: its rate may depend on the point. This is the hypothesis
of the bounded convergence theorem (tendsto_integral_of_boundedPointwiseLimit), which
extends the functional calculus from continuous to bounded Borel functions.
Implementation note: the bound b is usually a constant fun _ => M; it may vary so that the
same predicate covers the quadratic bound fun Ο => C * βΟβ ^ 2 for sequences of quadratic forms in
Physicslib4/Spectral/Forms.lean.
Blueprint: the hypotheses of thrm:bounded-convergence-theorem
Fields
norm_le : β (n : β) (x : Ξ±), βf n xβ β€ b x
The sequence is dominated by b, uniformly in the index.
tendsto : β (x : Ξ±), Filter.Tendsto (fun n => f n x) Filter.atTop (nhds (g x))
The sequence converges to g pointwise.
πstructure
A class π of bounded measurable functions that is a subspace, contains the continuous real
functions, and is closed under bounded pointwise limits.
These are the hypotheses of the bootstrap from continuous to bounded Borel functions. On a metric
space with its Borel Ο-algebra such a class contains the indicator of every Borel set
(IsBorelGenerating.indicator_mem) and is in fact all bounded measurable functions
(IsBorelGenerating.eq_bddMeasurable). This is how a property known for continuous f, such as
multiplicativity of the functional calculus, is extended to every bounded Borel f: one shows that
the functions with the property form such a class (isBorelGenerating_F1Class,
isBorelGenerating_F2Class).
Implementation note: the structure assumes only a topology and a Ο-algebra on X; the metric and
Borel hypotheses are on the two theorems, which do not need compactness.
Blueprint: the hypotheses (1)β(3) of lmm:hall-prblm-8.3.3b
Fields
bddMeasurable : π β β(BddMeasurable X)
Every member is bounded and measurable.
smul_add_mem : β (Ξ± Ξ² : β) (f g : X β β), f β π β g β π β Ξ± β’ f + Ξ² β’ g β π
π is a complex subspace.
continuous_mem : β (f : C(X, β)), (fun x => β(f x)) β π
π contains the continuous real-valued functions.
tendsto_mem : β (f : β β X β β) (g : X β β) (M : β), (β (n : β), f n β π) β (BoundedPointwiseLimit f g fun x => M) β g β π
π is closed under uniformly bounded pointwise limits.
The conclusion of the bootstrap:
open Physicslib4 Spectral in
Physicslib4.Spectral.IsBorelGenerating.eq_bddMeasurable.{u_1} {X : Type u_1} [MetricSpace X] [MeasurableSpace X]
[BorelSpace X] {π : Set (X β β)} (hπ : IsBorelGenerating π) : π = β(BddMeasurable X)#check IsBorelGenerating.eq_bddMeasurable
Physicslib4.Spectral.IsBorelGenerating.eq_bddMeasurable.{u_1} {X : Type u_1} [MetricSpace X] [MeasurableSpace X]
[BorelSpace X] {π : Set (X β β)} (hπ : IsBorelGenerating π) : π = β(BddMeasurable X)
Its ingredients are the class L0, an algebra of sets
containing the open sets (isSetAlgebra_L0), the
monotone class theorem
(generateFrom_subset_of_isMonotoneClass),
and the indicator step
IsBorelGenerating.indicator_mem.
2.3.6.Β Projection-valued measures and the operator-valued integralπ
Blueprint: def:projection-valued-measure,
thrm:projection-valued-measures-associated-measure,
thrm:operator-valued-integration, prpstn:integral-of-indicator,
prpstn:integral-norm-bound, prpstn:integral-multiplicative,
prpstn:integral-conjugation.
πstructure
A projection-valued measure on X: an assignment E β¦ ΞΌ(E) of orthogonal projections on H to
measurable sets, with ΞΌ(X) = π, countably additive and multiplicative on intersections.
It is the object the spectral theorem attaches to a self-adjoint operator A, with ΞΌ(E) the
spectral projection of A for the set E of possible measured values. The axioms:
each ΞΌ(E) is a self-adjoint idempotent; ΞΌ(X) = π; for pairwise disjoint measurable E_1, E_2, β¦
and every vector v, ΞΌ(β E_j)v = Ξ£ ΞΌ(E_j)v with convergence in the norm of H; and
ΞΌ(E β© F) = ΞΌ(E)ΞΌ(F), so projections of disjoint sets have orthogonal ranges. For each vector Ο,
E β¦ β¨Ο, ΞΌ(E)Οβ© is then a finite positive measure (assoc), and bounded measurable functions
can be integrated against ΞΌ to give operators (integral).
Implementation note: as in Mathlib's MeasureTheory.VectorMeasure, ΞΌ is a total function
Set X β H βL[β] H that is 0 on non-measurable sets, so the coercion carries no measurability
side conditions. The blueprint's ΞΌ(β
) = 0 is not a field: countable additivity for the constant
family E_j = β
implies it, and a field would add a derivable obligation to every constructor.
Countable additivity is stated with Mathlib's HasSum, unordered summation; since the vectors
ΞΌ(E_j)v are pairwise orthogonal, this is equivalent to convergence of the partial sums.
The blueprint's equivalence of two projection-valued measures is equality
(ProjectionValuedMeasure.ext).
Blueprint: def:projection-valued-measure
Fields
toFun : Set X β H βL[β] H
The underlying assignment E β¦ ΞΌ(E) of operators to all subsets of X.
isStarProjection' : β (E : Set X), IsStarProjection (self.toFun E)
Every value ΞΌ(E) is an orthogonal projection: self-adjoint and idempotent.
notMeasurable' : β (E : Set X), Β¬MeasurableSet E β self.toFun E = 0
Non-measurable sets are sent to 0, so ΞΌ is determined by its values on measurable sets.
univ' : self.toFun Set.univ = 1
Normalisation: ΞΌ(X) is the identity operator.
hasSum' : β (E : β β Set X),
(β (j : β), MeasurableSet (E j)) β
(Pairwise fun i j => Disjoint (E i) (E j)) β
β (v : H), HasSum (fun j => (self.toFun (E j)) v) ((self.toFun (β j, E j)) v)
Countable additivity: for pairwise disjoint measurable sets E_j and every vector v, the series
Ξ£ ΞΌ(E_j)v converges in the norm of H to ΞΌ(β E_j)v.
inter' : β (E F : Set X), MeasurableSet E β MeasurableSet F β self.toFun (E β© F) = self.toFun E * self.toFun F
Multiplicativity: ΞΌ(E β© F) = ΞΌ(E)ΞΌ(F) for measurable E and F.
πdef
The finite positive measure ΞΌ_Ο(E) = β¨Ο, ΞΌ(E)Οβ© of a projection-valued measure ΞΌ and a vector Ο.
Since ΞΌ(E) is an orthogonal projection, β¨Ο, ΞΌ(E)Οβ© = βΞΌ(E)ΟβΒ² β₯ 0, and countable additivity of ΞΌ
makes E β¦ βΞΌ(E)ΟβΒ² a measure; its total mass is β¨Ο, Οβ© = βΟβΒ², by assoc_apply with E = X.
For a unit vector Ο and the spectral measure of an observable A, ΞΌ_Ο(E) is the probability that a
measurement of A in the state Ο gives a value in E. The values on measurable sets are
assoc_apply; the operator-valued integral satisfies β¨Ο, (β« f dΞΌ)Οβ© = β« f dΞΌ_Ο
(inner_integral).
Implementation note: the measure is chosen from existsUnique_assoc, which also gives its
uniqueness and finiteness (the MeasureTheory.IsFiniteMeasure instance).
Blueprint: the measure ΞΌ_Ο of thrm:projection-valued-measures-associated-measure
πdef
The operator-valued integral β« f dΞΌ of a bounded measurable f : X β β against a
projection-valued measure ΞΌ.
It is the bounded operator with β¨Ο, (β« f dΞΌ)Οβ© = β« f dΞΌ_Ο for every vector Ο
(inner_integral), where ΞΌ_Ο(E) = β¨Ο, ΞΌ(E)Οβ©. For a step function f = Ξ£ c_k 1_(E_k) it is
Ξ£ c_k ΞΌ(E_k), and in general a norm limit of such sums; the spectral theorem writes a
self-adjoint operator as A = β« Ξ» dΞΌ^A(Ξ»). The integral of 1_E is ΞΌ(E) (integral_indicator), it
is linear (integral_add, integral_smul) and multiplicative (integral_mul), satisfies
ββ« f dΞΌβ β€ sup |f| (norm_integral_le), and sends the complex conjugate fΜ to the adjoint
(integral_conj).
Implementation note: the operator is chosen from the unique linear map of
existsUnique_integral, built from the bounded quadratic form Q_f(Ο) = β« f dΞΌ_Ο, so linearity is
recovered by integral_add and integral_smul rather than definitional. On functions that are
not bounded and measurable the integral is defined to be 0, so it is a total function.
Blueprint: the integral β« f dΞΌ of thrm:operator-valued-integration
The integral comes from a unique linear map on the bounded measurable functions, characterised by
its expectation values:
open Physicslib4 Spectral in
Physicslib4.Spectral.ProjectionValuedMeasure.existsUnique_integral.{u_1, u_2} {X : Type u_1} [MeasurableSpace X]
{H : Type u_2} [NormedAddCommGroup H] [InnerProductSpace β H] [CompleteSpace H] (ΞΌ : ProjectionValuedMeasure X H) :
β! T, β (f : β₯(BddMeasurable X)) (Ο : H), inner β Ο ((T f) Ο) = β« (x : X), βf x βΞΌ.assoc Ο#check ProjectionValuedMeasure.existsUnique_integral
Physicslib4.Spectral.ProjectionValuedMeasure.existsUnique_integral.{u_1, u_2} {X : Type u_1} [MeasurableSpace X]
{H : Type u_2} [NormedAddCommGroup H] [InnerProductSpace β H] [CompleteSpace H] (ΞΌ : ProjectionValuedMeasure X H) :
β! T, β (f : β₯(BddMeasurable X)) (Ο : H), inner β Ο ((T f) Ο) = β« (x : X), βf x βΞΌ.assoc Ο
Here T ranges over the β-linear maps BddMeasurable X ββ[β] (H βL[β] H), βf is the function
underlying an element of the subspace, and ΞΌ.assoc Ο is \mu_\psi. That
Q_f(\psi) = \int f \, d\mu_\psi is a bounded quadratic form is proved in three stages, as in the
blueprint: for indicator functions, for simple functions, and for bounded measurable functions as
uniform limits of simple ones
(isBoundedQuadraticForm_integral_bddMeasurable).
It is multiplicative, the operator form of \int fg \, d\mu = (\int f \, d\mu)(\int g \, d\mu):
open Physicslib4 Spectral in
Physicslib4.Spectral.ProjectionValuedMeasure.integral_mul.{u_1, u_2} {X : Type u_1} [MeasurableSpace X] {H : Type u_2}
[NormedAddCommGroup H] [InnerProductSpace β H] [CompleteSpace H] (ΞΌ : ProjectionValuedMeasure X H) {f g : X β β}
(hf : f β BddMeasurable X) (hg : g β BddMeasurable X) : ΞΌ.integral (f * g) = ΞΌ.integral f * ΞΌ.integral g#check ProjectionValuedMeasure.integral_mul
Physicslib4.Spectral.ProjectionValuedMeasure.integral_mul.{u_1, u_2} {X : Type u_1} [MeasurableSpace X] {H : Type u_2}
[NormedAddCommGroup H] [InnerProductSpace β H] [CompleteSpace H] (ΞΌ : ProjectionValuedMeasure X H) {f g : X β β}
(hf : f β BddMeasurable X) (hg : g β BddMeasurable X) : ΞΌ.integral (f * g) = ΞΌ.integral f * ΞΌ.integral g
The bound \|\int f \, d\mu\| \le \sup_x |f(x)| is
norm_integral_le; its
proof first establishes the weaker bound 6\sup_x |f(x)|, which it uses to pass to the limit of
simple functions (formalization note of prpstn:integral-norm-bound). The identity
\int \bar f \, d\mu = (\int f \, d\mu)^* is
integral_conj. The measure
\mu_\psi exists and is unique by
existsUnique_assoc.
2.3.7.Β The Borel functional calculusπ
Blueprint: def:hall-8.6, prpstn:hall-8.7, def:F-class,
def:hall-8.8, lmm:lemma-3, prpstn:hall-8.9,
def:F1-F2-classes.
Every bounded Borel function gives a bounded quadratic form, by the bootstrap applied to
FClass:
open Physicslib4 Spectral in
Physicslib4.Spectral.isBoundedQuadraticForm_borelForm.{u_1} {H : Type u_1} [NormedAddCommGroup H]
[InnerProductSpace β H] [CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) {f : β(spectrum β A) β β}
(hf : f β BddMeasurable β(spectrum β A)) : IsBoundedQuadraticForm (borelForm hA f)#check isBoundedQuadraticForm_borelForm
Physicslib4.Spectral.isBoundedQuadraticForm_borelForm.{u_1} {H : Type u_1} [NormedAddCommGroup H]
[InnerProductSpace β H] [CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) {f : β(spectrum β A) β β}
(hf : f β BddMeasurable β(spectrum β A)) : IsBoundedQuadraticForm (borelForm hA f)
πdefPhysicslib4.Spectral.borelCalculus.{u_1} {H : Type u_1}
[NormedAddCommGroup H] [InnerProductSpace β H] [CompleteSpace H]
{A : H βL[β] H} (hA : IsSelfAdjoint A) (f : β(spectrum β A) β β) :
H βL[β] H Physicslib4.Spectral.borelCalculus.{u_1}
{H : Type u_1} [NormedAddCommGroup H]
[InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H}
(hA : IsSelfAdjoint A)
(f : β(spectrum β A) β β) : H βL[β] H
The bounded Borel functional calculus f β¦ f(A) of a self-adjoint bounded operator A.
For a bounded Borel function f on Ο(A), f(A) is the unique bounded operator with
β¨Ο, f(A)Οβ© = β« f dΞΌ_Ο for every vector Ο (inner_borelCalculus, existsUnique_borelCalculus).
It extends the continuous calculus to discontinuous functions; most importantly, the indicator
1_E of a Borel set E gives the spectral projection 1_E(A), from which the spectral measure is
built (spectralMeasure). The map is linear (borelCalculus_add, borelCalculus_smul) and
multiplicative, (fg)(A) = f(A)g(A) (borelCalculus_mul), and f(A) is self-adjoint for real f
(isSelfAdjoint_borelCalculus). On continuous real functions it agrees with realCalculus, and
it is the integral against the spectral measure, f(A) = β« f dΞΌ^A (borelCalculus_eq_integral).
Implementation note: the operator is chosen from existsUnique_borelCalculus, whose proof takes
IsBoundedQuadraticForm.toOperator of Q_f. On functions that are not bounded and measurable
the value is defined to be 0 (borelCalculus_of_notMem). The agreement with realCalculus is
proved as a private lemma of Physicslib4/Spectral/SpectralTheorem.lean.
Blueprint: def:hall-8.8
Multiplicativity, proved by the bootstrap twice, through the classes
F1Class and
F2Class:
open Physicslib4 Spectral in
Physicslib4.Spectral.borelCalculus_mul.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) {f g : β(spectrum β A) β β}
(hf : f β BddMeasurable β(spectrum β A)) (hg : g β BddMeasurable β(spectrum β A)) :
(borelCalculus hA fun l => f l * g l) = borelCalculus hA f * borelCalculus hA g#check borelCalculus_mul
Physicslib4.Spectral.borelCalculus_mul.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) {f g : β(spectrum β A) β β}
(hf : f β BddMeasurable β(spectrum β A)) (hg : g β BddMeasurable β(spectrum β A)) :
(borelCalculus hA fun l => f l * g l) = borelCalculus hA f * borelCalculus hA g
The first application shows that the bounded Borel f with (fg)(A) = f(A)g(A) for every
continuous real g form a class satisfying IsBorelGenerating, starting from the
multiplicativity of the continuous calculus. The second does the same for the g with
(fg)(A) = f(A)g(A) for every bounded Borel f, starting from the first.
2.3.8.Β The spectral theoremπ
Blueprint: thrm:hall-8.10, prpstn:mua-projection to
prpstn:mua-integrates-to-A, thrm:hall-prblm-8.3.4,
thrm:spectral-theorem-for-bounded-operators, def:functional-calculus.
πdef
The spectral measure ΞΌ^A of a self-adjoint bounded operator A: the projection-valued measure
E β¦ 1_E(A) on the Borel sets of Ο(A).
Each ΞΌ^A(E) is the spectral projection of A for the set E: in finite dimensions, the projection
onto the span of the eigenvectors whose eigenvalues lie in E. For a unit vector Ο,
β¨Ο, ΞΌ^A(E)Οβ© is the probability that a measurement of A in the state Ο gives a value in E. The
spectral measure integrates the identity function to A, A = β« Ξ» dΞΌ^A(Ξ»)
(spectralMeasure_integral_id), and it is the only projection-valued measure on Ο(A) that does
(existsUnique_spectralMeasure, the spectral theorem). Integrating a bounded Borel f against it
gives f(A) (borelCalculus_eq_integral).
Implementation note: the definition takes 1_E(A) = borelCalculus hA (E.indicator 1) on
measurable E and 0 otherwise (spectralMeasure_apply). The structure fields are discharged by
the propositions prpstn:mua-projection, prpstn:mua-multiplicative, prpstn:mua-empty-and-whole
and prpstn:mua-countably-additive. Ο(A) is Mathlib's real spectrum spectrum β A.
Blueprint: the projection-valued measure ΞΌ^A of thrm:hall-8.10
The headline theorem of the section:
open Physicslib4 Spectral in
Physicslib4.Spectral.existsUnique_spectralMeasure.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) : β! ΞΌ, (ΞΌ.integral fun l => ββl) = A#check existsUnique_spectralMeasure
Physicslib4.Spectral.existsUnique_spectralMeasure.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) : β! ΞΌ, (ΞΌ.integral fun l => ββl) = A
Here ΞΌ ranges over ProjectionValuedMeasure (spectrum β A) H, and the integrand is
\lambda. The blueprint's form of the existence half, with \mu^A(E) = 1_E(A) on Borel sets,
is exists_spectralMeasure. Existence is
spectralMeasure_integral_id and
uniqueness pvm_eq_of_integral_id_eq.
The two Borel calculi agree:
open Physicslib4 Spectral in
Physicslib4.Spectral.borelCalculus_eq_integral.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) {f : β(spectrum β A) β β}
(hf : f β BddMeasurable β(spectrum β A)) : borelCalculus hA f = (spectralMeasure hA).integral f#check borelCalculus_eq_integral
Physicslib4.Spectral.borelCalculus_eq_integral.{u_1} {H : Type u_1} [NormedAddCommGroup H] [InnerProductSpace β H]
[CompleteSpace H] {A : H βL[β] H} (hA : IsSelfAdjoint A) {f : β(spectrum β A) β β}
(hf : f β BddMeasurable β(spectrum β A)) : borelCalculus hA f = (spectralMeasure hA).integral f
πdef
The functional calculus f(A) = β« f dΞΌ^A of a self-adjoint bounded operator A, for bounded Borel f
on Ο(A).
This is the standard meaning of a function of an observable: in finite dimensions
f(A) = Ξ£_k f(Ξ»_k) P_k. For example, the indicator of E gives the spectral projection ΞΌ^A(E), and
f(Ξ») = e^(iΞ»t) gives the operator written e^(itA). By borelCalculus_eq_integral it agrees with the
operator borelCalculus obtained from the quadratic form Q_f, so the notation f(A) is
unambiguous, and the properties proved for borelCalculus (linearity, multiplicativity,
self-adjointness for real f) transfer to it through that equation.
Implementation note: the definition is (spectralMeasure hA).integral f, so it is 0 on
functions that are not bounded and measurable.
Blueprint: def:functional-calculus