Reducing subspaces for bounded operators #
General RCLike infrastructure for invariant and reducing subspaces of bounded
operators on inner-product spaces. This module is independent of the
Davis--Kahan theory.
Provenance #
- Original repository: Davis--Kahan/DKPS formalization (Kitware, Inc.).
- Original module: authored directly in
ForMathlibat Davis--Kahan commitdf036cd; it has had no prior home. - Extraction class: authored in place, for Tau Ceti —
ForMathlibwas retired on 2026-07-29 andForTauCetiis the single staging library, whose destination is Tau Ceti and not Mathlib (ForTauCeti/README.md). - Original authors / copyright: Jon Crall, GPT 5.6 High; Copyright (c) 2026 Kitware, Inc.; Apache 2.0.
- Spectra influence: none — the
ForTauCetiimport firewall admits only Mathlib,TauCetiandForTauCeti(enforced byscripts/check_dependency_layers.py).
A subspace reduces a bounded operator when it and its orthogonal complement are invariant.
Instances For
An invariant subspace of a symmetric operator is reducing.
The orthogonal projection onto a reducing subspace commutes with the operator.
Pointwise form of starProjection_comp_comm_of_reduces.
A symmetric map that nearly reduces Z moves Zᗮ only slightly into Z.
If ‖T x - Z.starProjection (T x)‖ ≤ ρ ‖x‖ for every x ∈ Z -- the quantitative form of
"T reduces Z" -- then for w ⊥ Z the part of T w lying in Z is at most ρ ‖w‖.
Symmetry is what lets the estimate be read on either side of the inner product.
At ρ = 0 this is the qualitative statement: a symmetric map reducing Z maps Zᗮ into
Zᗮ, which is ContinuousLinearMap.IsSymmetric.reduces_of_invariant above in bounded
form.
A subspace admitting an orthogonal projection is complete when the ambient space is complete.
A subspace admitting an orthogonal projection inside a complete ambient space is itself complete, as an instance.
scoped rather than global, because the search CompleteSpace ↥U is one that
fires on every subspace coercion and the cost of that is not worth paying in
modules that do not need it. Activate it with
open scoped TauCeti.CompleteSubspace
Use this one. It exists because the same three-line local instance was
written out forty-three times across DavisKahan and ForTauCeti, each under a
different name. That is not only duplication: the instance name is part of the
elaborated type of every theorem whose statement compresses to a subspace, so
two modules holding private copies state provably identical theorems that the
comparator, and any exact signature comparison, reports as different. A new
copy would put that back.