A submodule of a topological module is a topological module #
A submodule carries the subspace topology. Of the three continuity classes that make that topology a module topology, Mathlib supplies one outright and one under extra hypotheses:
SMulMemClass.continuousSMulgives the jointly continuous actionA × ↥p → ↥pon anySetLikesubobject, with no side conditions beyond the ambientContinuousSMul A M. This file adds nothing there.Submodule.topologicalAddGroupgivesContinuousAdd ↥p, but only for aRing Aacting on anAddCommGroup Mthat is already a topological group.
So there are exactly two gaps, and they are what this file fills:
ContinuousAddat the generality of its own class — anAddCommMonoidambient withContinuousAddis outsideSubmodule.topologicalAddGroup's hypotheses, andAddSubmonoid.continuousAdd, which is at the right generality, is not keyed onSubmodule.ContinuousConstSMulwith no topology on the scalars —SMulMemClass.continuousSMulneeds a topology onAandContinuousSMul A M, whereasTauCeti.Huber.restrictedMvPowerSeriesSubmoduleasks only forContinuousConstSMul A MwithAuntopologised. That is the form this instance is for.
Main results #
Submodule.continuousAdd: addition on↥pis continuous, asking onlyContinuousAddof the ambient module rather than a topological group structure.Submodule.continuousConstSMul: each scalar acts continuously on↥p, with no topology on the scalars.
instance
Submodule.continuousAdd
{A : Type u_1}
{M : Type u_2}
[Semiring A]
[AddCommMonoid M]
[TopologicalSpace M]
[Module A M]
[ContinuousAdd M]
(p : Submodule A M)
:
Addition on a submodule is continuous. Mathlib has this for an AddSubmonoid, and for a
Submodule only through Submodule.topologicalAddGroup, which needs the ambient module to be a
topological group. A ContinuousAdd ambient is enough.
instance
Submodule.continuousConstSMul
{A : Type u_1}
{M : Type u_2}
[Semiring A]
[AddCommMonoid M]
[TopologicalSpace M]
[Module A M]
[ContinuousConstSMul A M]
(p : Submodule A M)
:
ContinuousConstSMul A ↥p
Each scalar acts continuously on a submodule, since it does so on the ambient module and the action is the restriction of that one.