Domain-aware infrastructure for partial linear maps #
Reusable algebra for unbounded operators represented canonically by Mathlib's
LinearPMap: domain transport, extension, symmetry, graph norms, relative
bounds, and elementary real resolvent predicates.
The declarations deliberately take raw partial maps. Closedness, dense domain, and self-adjointness are separate hypotheses supplied by the theorem that needs them; they are not bundled into a parallel operator structure.
Provenance #
- Original repository: Davis--Kahan/DKPS formalization (Kitware, Inc.).
- Original module:
DavisKahan/SpectralTheory/ClosedOperator/Basic.lean. - Extraction class: representation migration. The original declarations
were methods of a bundled
ClosedOperatorrecord -- aLinearPMapwith dense domain and closed graph as fields, since deleted downstream; this module restates their reusable content directly over MathlibLinearPMap. - Spectra influence: none. This module imports only Mathlib.
LinearPMap.IsClosed is stated on the graph, while the canonical
reducing-restriction API states closedness as a range. The two are the same set,
so this is a reindexing lemma used in both directions.
Two partial linear maps have the same operator domain.
Equations
- TauCeti.LinearPMap.SameDomain A B = (A.domain = B.domain)
Instances For
Equality of partial-map domains is reflexive.
Equality of partial-map domains is symmetric.
Equality of partial-map domains is transitive.
A bounded map sends the domain of B into the domain of A.
Equations
- TauCeti.LinearPMap.MapsDomainTo A B X = โ (x : โฅB.domain), X โx โ A.domain
Instances For
The identity bounded map preserves every partial-map domain.
Domain transport composes with bounded maps.
A subspace is invariant under a partial linear map on its domain.
Equations
- TauCeti.LinearPMap.InvariantSubspace A U = โ (x : โฅA.domain), โx โ U โ โA x โ U
Instances For
A subspace reduces a partial linear map when both orthogonal projections preserve its domain and both summands are invariant.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Build a ReducesSubspace from its four components. The definition is a
conjunction whose body is not exposed across module boundaries, so this is the
supported way for a consumer to construct one.
The projection onto a reducing subspace preserves the partial-map domain.
The complementary projection of a reducing subspace preserves the domain.
The selected summand of a reducing subspace is invariant.
The complementary summand of a reducing subspace is invariant.
Orthogonal complementation preserves the reducing-subspace property.
The operator domain inside a reducing subspace.
Equations
Instances For
Membership in the restricted domain is membership of the ambient vector in
A.domain: restricting the domain to U adds no condition beyond lying in U,
which the subtype already carries.
A restricted-domain vector viewed in the ambient partial-map domain.
Equations
- TauCeti.LinearPMap.reducingRestrictionDomainToAmbient A U x = โจโโx, โฏโฉ
Instances For
Viewing a restricted-domain vector in the ambient domain does not move it. The two subtypes differ only in which membership proof they carry.
Action of a partial map restricted to a reducing subspace.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The restricted map acts by the ambient one: A|_U x = A x, read through the
two coercions. This is where ReducesSubspace earns its keep โ it is what
makes A x land back in U so the corestriction typechecks.
Projection of an ambient domain vector into the restricted domain.
Equations
- TauCeti.LinearPMap.projectDomainToReducingRestriction A U hred x = โจโจU.starProjection โx, โฏโฉ, โฏโฉ
Instances For
Projecting an ambient domain vector into the restricted domain is the
orthogonal projection onto U. It stays in the domain because A reduces
U.
The partial map induced on a reducing subspace. Density and closedness are properties supplied separately by the theorem using this construction.
Equations
- TauCeti.LinearPMap.reducingRestriction A U hred = { domain := TauCeti.LinearPMap.reducingRestrictionDomain A U, toFun := TauCeti.LinearPMap.reducingRestrictionLinearMap A U hred }
Instances For
The restricted partial map has the restricted domain, definitionally.
Membership in the restricted domain, stated without naming the intermediate
domain submodule. This is the form a consumer outside this module can use: the
restricted operator's domain is U-vectors that already lay in A.domain.
The reducing restriction acts by the ambient partial map, read through
the two coercions and indexed by an ambient-domain proof rather than by the
restricted domain's subtype. coe_reducingRestrictionLinearMap says the same
about the underlying linear map; this is the partial-map form, and it is what a
consumer needs to compute with a restriction it did not build.
A dense partial-map domain remains dense after restriction to a reducing subspace.
Closedness of the graph is preserved by restriction to a reducing subspace. The hypothesis is stated as a graph range to make it directly applicable to compatibility records as well as raw partial maps.
Adjoint-domain membership of a reducing restriction is exactly ambient adjoint-domain membership for the included vector.
Symmetry passes to a reducing restriction of a partial map.
A linear map on a submodule has a bounded extension to the ambient space.
The bounded ambient extension agreeing with the specified map on its submodule.
Instances For
Extension relation for partial linear maps.
Equations
Instances For
Every partial linear map extends itself.
Extension of partial linear maps is transitive.
Domain obtained by pulling a partial-map domain back through a continuous linear equivalence.
Equations
- TauCeti.LinearPMap.pullbackDomain A e = Submodule.comap (โโe) A.domain
Instances For
x lies in the pulled-back domain exactly when e x lies in the original
one โ the pullback domain is the preimage, so the condition is on the image.
A vector in a pulled-back domain, transported to the original domain.
Equations
- TauCeti.LinearPMap.pullbackDomainToOriginal A e = { toFun := fun (x : โฅ(TauCeti.LinearPMap.pullbackDomain A e)) => โจe โx, โฏโฉ, map_add' := โฏ, map_smul' := โฏ }
Instances For
Transporting a pulled-back domain vector applies e. Unlike the reducing
restriction, this map genuinely moves the vector.
Action of the partial map pulled back through a continuous linear equivalence.
Equations
Instances For
The pulled-back action is eโปยน โ A โ e: push forward by e, apply A,
pull back by eโปยน. Conjugation, written on the domain subtypes.
Pull a partial map back through a continuous linear equivalence. Density and graph closedness are separate properties of the resulting partial map.
Equations
- TauCeti.LinearPMap.pullback A e = { domain := TauCeti.LinearPMap.pullbackDomain A e, toFun := TauCeti.LinearPMap.pullbackLinearMap A e }
Instances For
The pulled-back partial map has the pulled-back domain, definitionally.
Pullback through a continuous linear equivalence preserves a dense domain.
Pullback through a continuous linear equivalence preserves graph closedness.
A bounded operator is unitary when it is norm preserving and surjective.
Equations
- TauCeti.LinearPMap.IsUnitaryOperator W = ((โ (x : E), โW xโ = โxโ) โง Function.Surjective โW)
Instances For
Two partial maps are unitarily equivalent when mutually inverse unitary maps transport both domains and both actions.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Pullback through a unitary equivalence is unitarily equivalent to the original partial map.
The explicit product domain of two partial maps, transported to the
Lยฒ Hilbert direct sum.
Equations
- TauCeti.LinearPMap.directSumDomain A B = Submodule.comap (โ(WithLp.linearEquiv 2 ๐ (E ร F))) (A.domain.prod B.domain)
Instances For
A vector lies in the direct-sum domain exactly when each coordinate lies in
the corresponding domain. The WithLp 2 wrapper carries the Hilbert norm and
changes nothing about membership.
First coordinate of a direct-sum domain vector.
Equations
- TauCeti.LinearPMap.directSumDomainFst A B z = โจ(โz).fst, โฏโฉ
Instances For
Second coordinate of a direct-sum domain vector.
Equations
- TauCeti.LinearPMap.directSumDomainSnd A B z = โจ(โz).snd, โฏโฉ
Instances For
First-coordinate extraction as a linear map on a direct-sum domain.
Equations
- TauCeti.LinearPMap.directSumDomainFstLinearMap A B = { toFun := TauCeti.LinearPMap.directSumDomainFst A B, map_add' := โฏ, map_smul' := โฏ }
Instances For
Second-coordinate extraction as a linear map on a direct-sum domain.
Equations
- TauCeti.LinearPMap.directSumDomainSndLinearMap A B = { toFun := TauCeti.LinearPMap.directSumDomainSnd A B, map_add' := โฏ, map_smul' := โฏ }
Instances For
Componentwise partial-map action on a direct-sum domain.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The direct sum of two partial maps. Density and closedness remain separate properties.
Equations
- TauCeti.LinearPMap.directSum A B = { domain := TauCeti.LinearPMap.directSumDomain A B, toFun := TauCeti.LinearPMap.directSumLinearMap A B }
Instances For
The direct-sum partial map has the direct-sum domain, definitionally.
The direct sum of dense partial-map domains is dense.
The direct sum of closed partial-map graphs is closed.
A partial linear map is symmetric on its operator domain.
Equations
Instances For
Characteristic form of symmetry for a partial linear map.
This theorem is the public unfolding interface for IsSymmetric. Keep downstream
modules on this theorem rather than depending on definitional transparency across
module boundaries.
A self-adjoint partial map is symmetric on its operator domain.
The converse fails: symmetry compares A with Aโ only on dom A, while
self-adjointness also asserts that the two domains agree.
A self-adjoint partial map restricts to a self-adjoint partial map on every reducing subspace.
Graph norm associated with a partial linear map.
Instances For
The graph norm is nonnegative.
The ambient norm is controlled by the graph norm.
The operator-value norm is controlled by the graph norm.
Add a bounded ambient perturbation to a partial map on its original domain. Closedness remains a separate property of the resulting map.
Equations
- TauCeti.LinearPMap.addBounded A V = { domain := A.domain, toFun := A.toFun + (โV).domRestrict A.domain }
Instances For
A bounded perturbation leaves the domain unchanged โ V is everywhere
defined, so A + V is defined exactly where A is. This is what makes
perturbation arguments comparable on the nose rather than up to a domain
inclusion.
A bounded perturbation is undone by its negation, on the nose.
addBounded leaves the domain alone, so (A + V) + (-V) is A as a partial map
rather than merely an extension of it. This is what lets a theorem stated with
the roles of the unperturbed and perturbed operators exchanged be applied without
any domain bookkeeping.
A bounded left inverse for the real shift of a partial map.
Equations
Instances For
A bounded two-sided inverse for the real shift of a partial map, with the domain transport required by the right-inverse leg.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A two-sided shifted inverse supplies its left-inverse component.
Relative boundedness of a domain-defined perturbation with respect to a partial linear map.
Equations
Instances For
The zero perturbation has zero relative bound.
Relative bounds may be weakened by increasing either coefficient.
Relative bounds add under addition of perturbations.
Relative bounds scale by the norm of the scalar.
Relative bounds are preserved by negation.
Relative bounds add under subtraction of perturbations.
Restricting a bounded ambient operator to the domain gives relative bound
(โVโ, 0).
Real resolvent set of a partial linear map. A parameter belongs to the set when the shifted map has a bounded two-sided inverse with explicit domain transport for the right-inverse leg.
Equations
Instances For
Unfolds real resolvent membership through a stable public API.
realResolventSet is intentionally kept abstract across module boundaries; downstream
proofs should use this theorem instead of depending on definitional transparency.
Real spectrum defined as the complement of realResolventSet.
Instances For
A real scalar is spectral exactly when it is not a real resolvent point.
A real eigenvalue is a real spectral point. A left inverse of the shifted map
would have to send 0 back to the eigenvector, so no such bounded inverse exists.
This is the introduction rule for realSpectrum: every other lemma about it either
consumes membership or proves a containment, and a containment is vacuously true of an
operator with no spectrum at all. Only the surjectivity half of realResolventSet is
unused here, so the hypotheses are the weakest possible โ no closedness, no dense domain,
and no symmetry.
Spectral-set separation for two partial maps, possibly on different Hilbert spaces.
Equations
- TauCeti.LinearPMap.SpectralSetsSeparated A B s t d = โ a โ TauCeti.LinearPMap.realSpectrum A, a โ s โ โ b โ TauCeti.LinearPMap.realSpectrum B, b โ t โ d โค |a - b|
Instances For
Spectral-set separation is symmetric in the two maps.
Weakening the required gap preserves spectral-set separation.
Restricting either selected spectral set preserves separation.