Compact operators #
In this file we define compact linear operators between two topological vector spaces (TVS).
Main definitions #
IsCompactOperator
: predicate for compact operators
Main statements #
isCompactOperator_iff_isCompact_closure_image_ball
: the usual characterization of compact operators from a normed space to a T2 TVS.IsCompactOperator.comp_clm
: precomposing a compact operator by a continuous linear map gives a compact operatorIsCompactOperator.clm_comp
: postcomposing a compact operator by a continuous linear map gives a compact operatorIsCompactOperator.continuous
: compact operators are automatically continuousisClosed_setOf_isCompactOperator
: the set of compact operators is closed for the operator norm
Implementation details #
We define IsCompactOperator
as a predicate, because the space of compact operators inherits all
of its structure from the space of continuous linear maps (e.g we want to have the usual operator
norm on compact operators).
The two natural options then would be to make it a predicate over linear maps or continuous linear maps. Instead we define it as a predicate over bare functions, although it really only makes sense for linear functions, because Lean is really good at finding coercions to bare functions (whereas coercing from continuous linear maps to linear maps often needs type ascriptions).
References #
- [N. Bourbaki, Théories Spectrales, Chapitre 3][bourbaki2023]
Tags #
Compact operator
A compact operator between two topological vector spaces. This definition is usually given as "there exists a neighborhood of zero whose image is contained in a compact set", but we choose a definition which involves fewer existential quantifiers and replaces images with preimages.
We prove the equivalence in isCompactOperator_iff_exists_mem_nhds_image_subset_compact
.
Instances For
The submodule of compact continuous linear maps.
Equations
- compactOperator σ₁₄ M₁ M₄ = { carrier := {f : M₁ →SL[σ₁₄] M₄ | IsCompactOperator ⇑f}, add_mem' := ⋯, zero_mem' := ⋯, smul_mem' := ⋯ }
Instances For
If a compact operator preserves a closed submodule, its restriction to that submodule is compact.
Note that, following mathlib's convention in linear algebra, restrict
designates the restriction
of an endomorphism f : E →ₗ E
to an endomorphism f' : ↥V →ₗ ↥V
. To prove that the restriction
f' : ↥U →ₛₗ ↥V
of a compact operator f : E →ₛₗ F
is compact, apply
IsCompactOperator.codRestrict
to f ∘ U.subtypeL
, which is compact by
IsCompactOperator.comp_clm
.
If a compact operator preserves a complete submodule, its restriction to that submodule is compact.
Note that, following mathlib's convention in linear algebra, restrict
designates the restriction
of an endomorphism f : E →ₗ E
to an endomorphism f' : ↥V →ₗ ↥V
. To prove that the restriction
f' : ↥U →ₛₗ ↥V
of a compact operator f : E →ₛₗ F
is compact, apply
IsCompactOperator.codRestrict
to f ∘ U.subtypeL
, which is compact by
IsCompactOperator.comp_clm
.
Upgrade a compact LinearMap
to a ContinuousLinearMap
.
Equations
- ContinuousLinearMap.mkOfIsCompactOperator hf = { toLinearMap := f, cont := ⋯ }
Instances For
The set of compact operators from a normed space to a complete topological vector space is closed.