Topological (sub)algebras #
A topological algebra over a topological semiring R
is a topological semiring with a compatible
continuous scalar multiplication by elements of R
. We reuse typeclass ContinuousSMul
for
topological algebras.
Results #
The topological closure of a subalgebra is still a subalgebra, which as an algebra is a topological algebra.
In this file we define continuous algebra homomorphisms, as algebra homomorphisms between
topological (semi-)rings which are continuous. The set of continuous algebra homomorphisms between
the topological R
-algebras A
and B
is denoted by A →A[R] B
.
TODO: add continuous algebra isomorphisms.
The inclusion of the base ring in a topological algebra as a continuous linear map.
Equations
- algebraMapCLM R A = { toFun := ⇑(algebraMap R A), map_add' := ⋯, map_smul' := ⋯, cont := ⋯ }
Instances For
If R
is a discrete topological ring, then any topological ring S
which is an R
-algebra
is also a topological R
-algebra.
NB: This could be an instance but the signature makes it very expensive in search. See https://github.com/leanprover-community/mathlib4/pull/15339 for the regressions caused by making this an instance.
Continuous algebra homomorphisms between algebras. We only put the type classes that are
necessary for the definition, although in applications M
and B
will be topological algebras
over the topological ring R
.
- toFun : A → B
- cont : Continuous (↑↑self.toRingHom).toFun
Instances For
Continuous algebra homomorphisms between algebras. We only put the type classes that are
necessary for the definition, although in applications M
and B
will be topological algebras
over the topological ring R
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
See Note [custom simps projection]. We need to specify this projection explicitly in this case, because it is a composition of multiple projections.
Equations
Instances For
See Note [custom simps projection].
Equations
Instances For
Copy of a ContinuousAlgHom
with a new toFun
equal to the old one. Useful to fix
definitional equalities.
Equations
- f.copy f' h = { toRingHom := f.copy f' h, commutes' := ⋯, cont := ⋯ }
Instances For
Any two continuous R
-algebra morphisms from R
are equal
If two continuous algebra maps are equal on a set s
, then they are equal on the closure
of the Algebra.adjoin
of this set.
If the subalgebra generated by a set s
is dense in the ambient module, then two continuous
algebra maps equal on s
are equal.
The topological closure of a subalgebra
Equations
- s.topologicalClosure = { toSubsemiring := s.topologicalClosure, algebraMap_mem' := ⋯ }
Instances For
Under a continuous algebra map, the image of the TopologicalClosure
of a subalgebra is
contained in the TopologicalClosure
of its image.
Under a dense continuous algebra map, a subalgebra
whose TopologicalClosure
is ⊤
is sent to another such submodule.
That is, the image of a dense subalgebra under a map with dense range is dense.
The identity map as a continuous algebra homomorphism.
Equations
- ContinuousAlgHom.id R A = { toAlgHom := AlgHom.id R A, cont := ⋯ }
Instances For
Equations
- ContinuousAlgHom.instOne R A = { one := ContinuousAlgHom.id R A }
Composition of continuous algebra homomorphisms.
Equations
- g.comp f = { toAlgHom := (↑g).comp ↑f, cont := ⋯ }
Instances For
Equations
- ContinuousAlgHom.instMul = { mul := ContinuousAlgHom.comp }
coercion from ContinuousAlgHom
to AlgHom
as a RingHom
.
Equations
- ContinuousAlgHom.toAlgHomMonoidHom = { toFun := AlgHomClass.toAlgHom, map_one' := ⋯, map_mul' := ⋯ }
Instances For
The cartesian product of two continuous algebra morphisms as a continuous algebra morphism.
Equations
- f₁.prod f₂ = { toAlgHom := (↑f₁).prod ↑f₂, cont := ⋯ }
Instances For
Prod.fst
as a ContinuousAlgHom
.
Equations
- ContinuousAlgHom.fst R A B = { toAlgHom := AlgHom.fst R A B, cont := ⋯ }
Instances For
Prod.snd
as a ContinuousAlgHom
.
Equations
- ContinuousAlgHom.snd R A B = { toAlgHom := AlgHom.snd R A B, cont := ⋯ }
Instances For
Prod.map
of two continuous algebra homomorphisms.
Equations
- f₁.prodMap f₂ = (f₁.comp (ContinuousAlgHom.fst R A C)).prod (f₂.comp (ContinuousAlgHom.snd R A C))
Instances For
ContinuousAlgHom.prod
as an Equiv
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Restrict codomain of a continuous algebra morphism.
Equations
- f.codRestrict p h = { toAlgHom := (↑f).codRestrict p h, cont := ⋯ }
Instances For
Restrict the codomain of a continuous algebra homomorphism f
to f.range
.
Equations
- f.rangeRestrict = f.codRestrict (↑f).range ⋯
Instances For
Subalgebra.val
as a ContinuousAlgHom
.
Equations
- p.valA = { toAlgHom := p.val, cont := ⋯ }
Instances For
If A
is an R
-algebra, then a continuous A
-algebra morphism can be interpreted as a
continuous R
-algebra morphism.
Equations
- ContinuousAlgHom.restrictScalars R f = { toAlgHom := AlgHom.restrictScalars R ↑f, cont := ⋯ }
Instances For
If a subalgebra of a topological algebra is commutative, then so is its topological closure.
See note [reducible non-instances].
Equations
- s.commSemiringTopologicalClosure hs = CommSemiring.mk ⋯
Instances For
This is really a statement about topological algebra isomorphisms, but we don't have those, so we use the clunky approach of talking about an algebra homomorphism, and a separate homeomorphism, along with a witness that as functions they are the same.
The topological closure of the subalgebra generated by a single element.
Equations
- Algebra.elemental R x = (Algebra.adjoin R {x}).topologicalClosure
Instances For
Alias of Algebra.elemental
.
The topological closure of the subalgebra generated by a single element.
Equations
Instances For
Alias of Algebra.elemental.self_mem
.
Equations
- Algebra.elemental.instCommSemiringSubtypeMemSubalgebraOfT2Space R = (Algebra.adjoin R {x}).commSemiringTopologicalClosure ⋯
The coercion from an elemental algebra to the full algebra is a IsClosedEmbedding
.
If a subalgebra of a topological algebra is commutative, then so is its topological closure. See note [reducible non-instances].
Equations
- s.commRingTopologicalClosure hs = CommRing.mk ⋯
Instances For
Equations
- instCommRingSubtypeMemSubalgebraElementalOfT2Space = CommRing.mk ⋯