Operator ideal families #
An operator ideal in the sense of Pietsch is a rule assigning to every pair
of spaces E, F a linear subspace of E โL[๐] F that is stable under
composition with arbitrary bounded maps on either side, together with a norm on
that subspace dominating the operator norm and submultiplicative against outer
compositions. Because Davis--Kahan compares operators between different
spaces, the ideal must be handled as a coherent family across all pairs at
once, not as a norm on a single endomorphism algebra.
The families here range over Hilbert spaces, with source and target still in independent universes. See "Why Hilbert and not Banach" below: the restriction is forced by the examples, not by the laws.
The single-field representation #
The family is presented by exactly one datum, an extended-real-valued gauge
gauge : (E โL[๐] F) โ โโฅ0โ
defined on all operators, with the ideal recovered as its finiteness domain
OperatorIdealFamily.carrier. This is the classical presentation of a symmetric
norming function (Gohberg--Krein): an operator lies in the ideal exactly when its
ideal norm is finite. Three things follow.
- Extensionality is structural. Two families with the same gauge are equal
(
OperatorIdealFamily.ext), because the gauge is the only field. A representation carrying membership and a gauge as independent data cannot have such a theorem: the gauge is then unconstrained off the ideal, so two families can agree on every ideal element and still differ. - Every law is unconditional. In
โโฅ0โthe triangle inequality, the homogeneitygauge (c โข A) = โcโโ * gauge A, and the ideal boundgauge (L โL A โL R) โค โLโโ * gauge A * โRโโall hold verbatim at non-members, so no law needs a membership hypothesis and no lemma needs to carry one. - The axiom list is short. Four laws suffice. Closure of the ideal under
0,+,โข,-, and finite sums is a consequence (it isSubmodulemembership forcarrier),gauge 0 = 0follows from homogeneity atc = 0, and definiteness follows fromenorm_le_gauge.
Why Hilbert and not Banach #
The four laws are statements about a norm, and every one of them is meaningful
verbatim for Banach E, F. The examples are not. Of the five gauges this
development has โ the operator norm, the finite Ky Fan gauges, Schatten p,
trace class and Hilbert--Schmidt โ only the first survives outside Hilbert
space, and the obstruction is gauge_add_le, not the definition. Concretely,
for the finite Ky Fan gauge โ_{n < k} aโ(A) the gauge is defined at full
Banach generality (ContinuousLinearMap.approximationNumber is stated for
seminormed spaces over a NontriviallyNormedField) while its subadditivity is
Hilbertian: the proof runs through singular values and majorization, and the
classical additivity of approximation numbers,
a_{m+n}(S + T) โค aโ(S) + aโ(T), does not recover it โ already at k = 2
that bound only gives aโ(S) + 2aโ(T) + aโ(S), which is not
โ_{n<2} aโ(S) + โ_{n<2} aโ(T).
So a Banach-wide version of this structure would be a notion with one instance and no way to acquire the motivating ones. The parameters are therefore Hilbert throughout. Re-widening is a purely mechanical edit should an instance ever appear: no proof in this file uses the inner product, only the norm.
Layering #
OperatorIdealFamily keeps independent source and target universes. Adjoint
symmetry cannot be added at that generality: Aโ swaps the roles of source and
target, so a family closed under adjoints must be defined on a single universe.
That is SymmetricOperatorIdealFamily, which extends the diagonal
instantiation.
The two universes occur only through max v w in the type of the structure
itself, so linter.checkUnivs flags them. They stay independent, and the
argument is the layering itself rather than an appeal to generality:
SymmetricOperatorIdealFamilyextendsOperatorIdealFamily.{u, v, v}โ it is the diagonal instantiation. Collapsevandwand.{u, v, v}becomes.{u, v}: the two structures acquire the same generality, and the distinction this section is about stops existing. The rectangular layer earns its second universe by being the thing the symmetric layer specializes.Family/OperatorNorm.leancarries a hand-written specialization ofinstIsCompleteOperatorNormIdealFamilyprecisely because the general instance is stated at three independent universes and instance search cannot see it once the symmetric family equates the last two.
So the independence is exercised, not merely declared; the linter's heuristic reads the structure's type, where it is invisible.
Main definitions #
TauCeti.OperatorIdealFamily: the gauge and its four laws.TauCeti.OperatorIdealFamily.carrier: the ideal, as aSubmodule.TauCeti.OperatorIdealFamily.Elem: the ideal as a normed space in its own right โ a type synonym for the carrier carrying the ideal norm rather than the operator norm inherited from the ambient space.TauCeti.OperatorIdealFamily.IsComplete: completeness of the ideal, expressed asCompleteSpacefor that norm rather than as a hand-rolled Cauchy criterion.TauCeti.SymmetricOperatorIdealFamily: the adjoint-invariant diagonal layer.
Provenance #
- Original repository: Davis--Kahan/DKPS formalization (Kitware, Inc.).
- Original module:
DavisKahan/OperatorIdeal/UnitarilyInvariant/RectangularFamily.lean(RectangularSymmetricIdealFamily, Jon Crall / OpenAI GPT-5.6 Thinking); Apache 2.0. - Extraction class: redesigned. Per the signature-polish backlog the free-data presentation
(
Memplus a total real gauge constrained only on members, one universe, hand-rolled completeness, fourteen fields) is replaced here by the single-gauge presentation above, and this is the only presentation of an operator ideal in the library. The legacy structure was retired downstream on 2026-08-27, together with both directions of the conversion between the two and the four concrete ideals that were built by converting a canonical family into a legacy record and back. Its free data survives only asSymmetricOperatorIdealFamily.CoreinDavisKahan/OperatorIdeal/UnitarilyInvariant/FamilyCore.lean: constructor arguments forofCore, carrying no gauge of their own and used by the two source-facing Hilbert--Schmidt ideals, which are families from the moment they are defined.
A rectangular operator ideal family over ๐, presented by its gauge.
gauge A is the ideal norm of A, taken in โโฅ0โ so that it is defined on
every bounded operator: A belongs to the ideal exactly when gauge A โ โ
(OperatorIdealFamily.carrier). Source and target are Hilbert spaces in
independent universes (see the module docstring for why Hilbert); adjoint
symmetry is added on the diagonal by SymmetricOperatorIdealFamily.
- gauge {E : Type v} {F : Type w} [NormedAddCommGroup E] [InnerProductSpace ๐ E] [CompleteSpace E] [NormedAddCommGroup F] [InnerProductSpace ๐ F] [CompleteSpace F] : (E โL[๐] F) โ ENNReal
The ideal norm, extended by
โoff the ideal. - gauge_add_le {E : Type v} {F : Type w} [NormedAddCommGroup E] [InnerProductSpace ๐ E] [CompleteSpace E] [NormedAddCommGroup F] [InnerProductSpace ๐ F] [CompleteSpace F] (A B : E โL[๐] F) : self.gauge (A + B) โค self.gauge A + self.gauge B
The gauge is subadditive.
- gauge_smul {E : Type v} {F : Type w} [NormedAddCommGroup E] [InnerProductSpace ๐ E] [CompleteSpace E] [NormedAddCommGroup F] [InnerProductSpace ๐ F] [CompleteSpace F] (c : ๐) (A : E โL[๐] F) : self.gauge (c โข A) = โcโโ * self.gauge A
The gauge is absolutely homogeneous. At
c = 0this forcesgauge 0 = 0, ruling out the everywhere-infinite gauge. - enorm_le_gauge {E : Type v} {F : Type w} [NormedAddCommGroup E] [InnerProductSpace ๐ E] [CompleteSpace E] [NormedAddCommGroup F] [InnerProductSpace ๐ F] [CompleteSpace F] (A : E โL[๐] F) : โAโโ โค self.gauge A
The gauge dominates the operator norm. Together with
gauge_add_lethis makes the gauge a genuine norm on the ideal rather than a seminorm. - gauge_comp_le {E H : Type v} {F G : Type w} [NormedAddCommGroup E] [InnerProductSpace ๐ E] [CompleteSpace E] [NormedAddCommGroup F] [InnerProductSpace ๐ F] [CompleteSpace F] [NormedAddCommGroup G] [InnerProductSpace ๐ G] [CompleteSpace G] [NormedAddCommGroup H] [InnerProductSpace ๐ H] [CompleteSpace H] (L : F โL[๐] G) (A : E โL[๐] F) (R : H โL[๐] E) : self.gauge (L โSL A โSL R) โค โLโโ * self.gauge A * โRโโ
The two-sided ideal law. Finiteness of
โLโโandโRโโmakes this imply that the ideal is stable under outer composition.
Instances For
Two ideal families with the same gauge are equal.
This is the theorem the free-data presentation cannot have: there, the gauge is unconstrained off the ideal, so equality of the gauges on members โ the only thing the laws talk about โ does not determine the structure.
The gauge of the zero operator is zero.
The gauge is definite: only the zero operator has gauge zero. This is forced rather than
assumed -- it follows from enorm_le_gauge, since the operator norm is already definite.
Definiteness as an iff.
The gauge is unchanged by negation.
Triangle inequality in subtracted form, the shape convergence arguments use.
Subadditivity over a finite sum.
Unlike its counterpart for the historical record, this needs no membership
hypotheses: at a non-member the right-hand side is โ.
Left composition by a bounded map, the R = 1 case of the ideal law.
Right composition by a bounded map, the L = 1 case of the ideal law.
Left composition by a contraction does not increase the gauge.
Right composition by a contraction does not increase the gauge.
Two-sided composition by contractions does not increase the gauge.
The ideal itself: the operators of finite gauge, as a submodule.
Closure under 0, + and โข is a consequence of the gauge laws, so the
module structure of the ideal does not have to be assumed.
Equations
Instances For
Membership in the ideal is exactly finiteness of the gauge; the carrier is defined that way,
so this is Iff.rfl and exists only to spare call sites the unfolding.
Members of the ideal have finite gauge.
Members of the ideal have gauge < โ, the strict form.
Membership in the ideal is stable under outer composition.
The ideal is closed under finite sums โ Submodule.sum_mem for the
carrier, with no separate closure axiom.
The ideal between E and F, as a type carrying the ideal norm.
This is deliberately a type synonym rather than the subtype itself: the subtype
already inherits the operator norm from E โL[๐] F, and the two norms differ.
@[expose], and this is the one place in the group that needs it. Elem is
a type: the compiler has to see that it is a subtype in order to infer the same
representation for Elem.val and Elem.mk here as in any consuming module, and
it says so โ "locally inferred compilation type differs from type that would be
inferred in other modules". That is not the api-design rubric's
expose-instead-of-a-lemma anti-pattern, which is about proofs relying on defeq;
no lemma can substitute for a type's representation.
Instances For
The underlying operator of an ideal element.
Instances For
The underlying operator of an ideal element lies in the ideal.
An ideal element has finite gauge -- the fact that makes toReal lossless on it, and hence
the reason the ideal norm can be real-valued while the gauge is โโฅ0โ-valued.
An operator of finite gauge, as an element of the ideal.
Equations
Instances For
Building an ideal element and taking its value is the identity.
Ideal elements are equal when their underlying operators are. Tagged @[ext], so ext
reduces any such goal to the operators.
Taking an ideal element's value and rebuilding is the identity โ the
companion of val_mk, in the direction a round-trip equivalence needs.
Written when Family/OperatorNorm.lean's left_inv field stopped being rfl:
without Elem's body exposed, mk A.val_mem = A is not definitional, and the
right answer to that is the lemma rather than the exposure.
The ideal is an additive subgroup of the bounded operators, inherited from its carrier.
Equations
- One or more equations did not get rendered due to their size.
The ideal is a ๐-submodule, inherited from its carrier.
Equations
- One or more equations did not get rendered due to their size.
The zero ideal element is the zero operator.
Addition of ideal elements is addition of operators.
Negation of an ideal element is negation of the operator.
Subtraction of ideal elements is subtraction of operators.
Scaling an ideal element scales the operator.
The ideal norm, as a real-valued norm on the ideal.
Equations
- One or more equations did not get rendered due to their size.
The ideal norm is the gauge, brought down to โ. Lossless because gauge_val_ne_top.
Going back up: the extended norm of an ideal element is its gauge exactly, with no toReal
round-trip loss.
The ideal norm is a norm on a ๐-vector space; homogeneity transfers from gauge_smul
through toReal.
Equations
- TauCeti.OperatorIdealFamily.Elem.instNormedSpace = { toModule := TauCeti.OperatorIdealFamily.Elem.instModule, norm_smul_le := โฏ }
The ideal embeds contractively into the bounded operators: the ideal norm dominates the operator norm.
A gauge-Cauchy sequence is operator-norm Cauchy, because the ideal norm dominates the operator norm.
This is the first step of every IsComplete proof: get a limit in the ambient
bounded operators, then show it stays in the ideal. It was written out
identically in all four of HilbertSchmidt, KyFan, Schatten and
TraceClass, three of them character for character.
Completeness of an ideal family, stated as CompleteSpace for the ideal
norm rather than as a hand-rolled Cauchy criterion.
Completeness of the target is available from the ambient assumptions, exactly as
for E โL[๐] F: an ideal norm cannot repair an incomplete target.
- completeSpace {E : Type v} {F : Type w} [NormedAddCommGroup E] [InnerProductSpace ๐ E] [CompleteSpace E] [NormedAddCommGroup F] [InnerProductSpace ๐ F] [CompleteSpace F] : CompleteSpace (N.Elem E F)
Instances
Unpacks IsComplete into the CompleteSpace instance that instance search needs; the class
quantifies over the two spaces, so it cannot be used directly.
Block sums: the gauge is squeezed between the maximum and the sum of the two block gauges.
For an operator split as T = Qโ T Pโ + Qโ T Pโ with all four factors
contractive โ the shape a block-diagonal decomposition of source and target
produces.
Both halves are formal from the family laws. The upper bound is
gauge_add_le on the splitting; the lower is gauge_comp_le, the two-sided
ideal law, with the contractivity hypotheses collapsing โQโโ * ยท * โPโโ to ยท.
No approximation-number reasoning enters.
The general block statement โ that the approximation-number sequence of a block-diagonal sum is the decreasing rearrangement of the union of the summands' sequences โ is genuinely harder and is not what this needs; anyone reaching for a rearrangement theorem here is solving the wrong problem.
A symmetric (adjoint-invariant) operator ideal family on Hilbert spaces.
Adjoint invariance is stated on the diagonal instantiation of
OperatorIdealFamily because ContinuousLinearMap.adjoint exchanges the source
and target spaces: a family closed under adjoints cannot keep the two universes
independent.
- gauge {E F : Type v} [NormedAddCommGroup E] [InnerProductSpace ๐ E] [CompleteSpace E] [NormedAddCommGroup F] [InnerProductSpace ๐ F] [CompleteSpace F] : (E โL[๐] F) โ ENNReal
- gauge_add_le {E F : Type v} [NormedAddCommGroup E] [InnerProductSpace ๐ E] [CompleteSpace E] [NormedAddCommGroup F] [InnerProductSpace ๐ F] [CompleteSpace F] (A B : E โL[๐] F) : self.gauge (A + B) โค self.gauge A + self.gauge B
- gauge_smul {E F : Type v} [NormedAddCommGroup E] [InnerProductSpace ๐ E] [CompleteSpace E] [NormedAddCommGroup F] [InnerProductSpace ๐ F] [CompleteSpace F] (c : ๐) (A : E โL[๐] F) : self.gauge (c โข A) = โcโโ * self.gauge A
- enorm_le_gauge {E F : Type v} [NormedAddCommGroup E] [InnerProductSpace ๐ E] [CompleteSpace E] [NormedAddCommGroup F] [InnerProductSpace ๐ F] [CompleteSpace F] (A : E โL[๐] F) : โAโโ โค self.gauge A
- gauge_comp_le {E H F G : Type v} [NormedAddCommGroup E] [InnerProductSpace ๐ E] [CompleteSpace E] [NormedAddCommGroup F] [InnerProductSpace ๐ F] [CompleteSpace F] [NormedAddCommGroup G] [InnerProductSpace ๐ G] [CompleteSpace G] [NormedAddCommGroup H] [InnerProductSpace ๐ H] [CompleteSpace H] (L : F โL[๐] G) (A : E โL[๐] F) (R : H โL[๐] E) : self.gauge (L โSL A โSL R) โค โLโโ * self.gauge A * โRโโ
- gauge_adjoint {E F : Type v} [NormedAddCommGroup E] [InnerProductSpace ๐ E] [CompleteSpace E] [NormedAddCommGroup F] [InnerProductSpace ๐ F] [CompleteSpace F] (A : E โL[๐] F) : self.gauge (ContinuousLinearMap.adjoint A) = self.gauge A
The gauge is unchanged by passing to the adjoint.
Instances For
A symmetric family is determined by its gauge, the same way an
OperatorIdealFamily is: the extra field is a Prop, so once the underlying
families agree there is nothing left to compare.
Without this, an equality of two symmetric families has to be proved by destructuring both, which does not go through โ the hypothesis still mentions the undestructured terms.
The ideal of a symmetric family is stable under adjoints.