Transport of a Hilbert space along an isomorphism of RCLike fields #
RCLike is an open class, but it has exactly two models: RCLike.I_eq_zero_or_im_I_eq_one
says every RCLike field is isomorphic to โ or to โ. A theorem proved at
those two fields is therefore true at every RCLike field โ but only after the
statement has been carried across the isomorphism, and that is what this file
does.
The design is one transport, used twice. RCLikeIso ๐ ๐ is a field isomorphism
fixing the reals and I; RCLikeIso.real and RCLikeIso.complex build the two
instances from Mathlib's RCLike.realRingEquiv and RCLike.complexRingEquiv.
ScalarTransport e E is E with the ๐-structure its ๐-structure induces
through e. The type, the additive group, the topology and the norm are
unchanged; only the scalar action and the field the inner product takes values in
move. So most of what follows is a bijection between two spellings of the same
object, and the transported object is equal to the original wherever that makes
sense:
| object | transport | preserved |
|---|---|---|
Submodule ๐ E | ScalarTransport.submodule | the carrier, แฎ, Module.rank |
E โL[๐] F | ScalarTransport.clm | the function, โยทโ, adjoint, IsSelfAdjoint |
Submodule.starProjection | โ | it is the transported projection |
E โโ.[๐] F | ScalarTransport.pmap | the domain, the function, adjoint, IsSelfAdjoint |
Nothing here is specific to any application: it is the general statement that a
Hilbert space over an RCLike field is a Hilbert space over โ or โ, in a way
that carries the operator theory with it.
Why not restriction of scalars #
InnerProductSpace.rclikeToReal restricts a ๐-space to โ. That is a
different construction and it does not answer this question: over a complex-like
๐ it halves the scalars, doubling Module.rank and changing the singular-value
sequence of an operator. The transport here changes no ranks, because it changes
no scalars โ it renames the field.
Provenance #
- Original repository: Davis--Kahan/DKPS formalization (Kitware, Inc.).
- Original module: none. Written directly here, 2026-09-01, because the Palomar
Section 2 Challenge needs its four theorems at an arbitrary
RCLikefield and the development's endpoints are stated atโandโ. - Extraction class: new. It depends on nothing outside Mathlib, and is the
reason the two capability classes
ContinuousLinearMap.HasMinMaxLowerBoundEverywhereandTauCeti.DavisKahan.Sylvester.HasUnboundedSylvesterKyFanstopped being hypotheses. - Namespace:
TauCeti, perForTauCeti/README.mdsection 2. @[expose]on ten definitional carriers, each measured load-bearing by deleting the attribute and reading the compiler's complaint.- Original authors / copyright: Jon Crall, Claude Opus 5; Copyright (c) 2026 Kitware, Inc.; Apache 2.0.
- Spectra influence: none.
The isomorphism acts as a function.
Equations
- TauCeti.RCLikeIso.instCoeFunForall = { coe := fun (e : TauCeti.RCLikeIso ๐ ๐) => โe.toRingEquiv }
When I = 0 the field is โ.
Equations
- TauCeti.RCLikeIso.real h = { toRingEquiv := RCLike.realRingEquiv h, map_ofReal := โฏ, map_I := โฏ }
Instances For
When im I = 1 the field is โ.
Equations
- TauCeti.RCLikeIso.complex h = { toRingEquiv := RCLike.complexRingEquiv h, map_ofReal := โฏ, map_I := โฏ }
Instances For
The isomorphism is an isometry.
The field isomorphism is a homeomorphism.
Equations
- e.homeomorph = { toEquiv := e.toRingEquiv.toEquiv, continuous_toFun := โฏ, continuous_invFun := โฏ }
Instances For
E, carrying the ๐-Hilbert structure its ๐-structure induces through e.
The type, the additive group, the topology and the norm are unchanged; only the scalar action and the inner product's field of values move.
Equations
- TauCeti.ScalarTransport _e E = E
Instances For
The identity, as the passage from E to its transport.
Equations
Instances For
The transport does not touch the additive normed structure.
Equations
- One or more equations did not get rendered due to their size.
Scalars act through eโปยน.
Equations
Scalars act through eโปยน.
and isometrically, because e is.
Equations
- TauCeti.ScalarTransport.instNormedSpace = { toModule := TauCeti.ScalarTransport.instModule, norm_smul_le := โฏ }
The inner product is the original, carried across e.
Equations
- One or more equations did not get rendered due to their size.
Completeness is a fact about the metric, which is unchanged.
The transported inner product is the original, carried across e.
A real scalar acts the same on both sides.
and its real part is literally unchanged.
Subspaces #
A ๐-subspace of E, as a ๐-subspace of the transport, with the same carrier.
Equations
Instances For
Membership in a transported subspace is membership in the original.
and back again.
Equations
- TauCeti.ScalarTransport.submoduleSymm S = { carrier := {x : E | TauCeti.ScalarTransport.of x โ S}, add_mem' := โฏ, zero_mem' := โฏ, smul_mem' := โฏ }
Instances For
Membership in a subspace read back is membership in the original.
The two directions are mutually inverse.
The two directions are mutually inverse.
The transport preserves orthogonal complements.
Bounded operators #
A ๐-linear continuous map, as a ๐-linear one on the transports.
Equations
- TauCeti.ScalarTransport.clm T = { toFun := fun (x : TauCeti.ScalarTransport e E) => TauCeti.ScalarTransport.of (T x.out), map_add' := โฏ, map_smul' := โฏ, cont := โฏ }
Instances For
The transported operator is the original function.
The transport of operators is subtractive: it does not change the functions.
and has the same operator norm.
The transport of a bounded operator is a bijection onto the ๐-operators.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Rank #
The additive identity E โ+ ScalarTransport e E.
Equations
- TauCeti.ScalarTransport.addEquiv = { toFun := TauCeti.ScalarTransport.of, invFun := TauCeti.ScalarTransport.out, left_inv := โฏ, right_inv := โฏ, map_add' := โฏ }
Instances For
The additive identity intertwines the two scalar actions through e.
Rank is unchanged by the transport: the scalar action is the same up to e.
Hence the rank of a transported map.
Orthogonal projections #
A transported subspace inherits its orthogonal projection.
and the projection is the original projection.
The transported projection is the transport of the projection.
Adjoints #
The adjoint of a transported operator is the transport of its adjoint.
Self-adjointness is preserved and reflected by the transport.
Partial maps #
A point of the transported domain, read back in A.domain.
Equations
- TauCeti.ScalarTransport.domainOut A x = โจ(โx).out, โฏโฉ
Instances For
A ๐-linear partial map, as a ๐-linear one on the transports:
the same domain and the same function.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The transported partial map has the transported domain.
and the original function.
Density of the domain is unchanged: the carrier and the topology are.
The transported adjoint domain is the original one, because e is a homeomorphism.
The transported adjoint domain is the transport of the adjoint domain.
The transport of partial maps is injective.
The adjoint of a transported partial map is the transport of its adjoint.
Self-adjointness is preserved and reflected by the transport.