Multiplicative action on the completion of a uniform space #
In this file we define typeclasses UniformContinuousConstVAdd
and
UniformContinuousConstSMul
and prove that a multiplicative action on X
with uniformly
continuous (•) c
can be extended to a multiplicative action on UniformSpace.Completion X
.
In later files once the additive group structure is set up, we provide
UniformSpace.Completion.DistribMulAction
UniformSpace.Completion.MulActionWithZero
UniformSpace.Completion.Module
TODO: Generalise the results here from the concrete Completion
to any AbstractCompletion
.
An additive action such that for all c
, the map fun x ↦ c +ᵥ x
is uniformly continuous.
- uniformContinuous_const_vadd (c : M) : UniformContinuous fun (x : X) => c +ᵥ x
Instances
A multiplicative action such that for all c
,
the map fun x ↦ c • x
is uniformly continuous.
- uniformContinuous_const_smul (c : M) : UniformContinuous fun (x : X) => c • x
Instances
A DistribMulAction
that is continuous on a uniform group is uniformly continuous.
This can't be an instance due to it forming a loop with
UniformContinuousConstSMul.to_continuousConstSMul
The action of Semiring.toModule
is uniformly continuous.
The action of Semiring.toOppositeModule
is uniformly continuous.
If a scalar action is central, then its right action is uniform continuous when its left action is.
If an additive action is central, then its right action is uniform continuous when its left action is.
Equations
- UniformSpace.Completion.instSMul M X = { smul := fun (c : M) => UniformSpace.Completion.map fun (x : X) => c • x }
Equations
- UniformSpace.Completion.instVAdd M X = { vadd := fun (c : M) => UniformSpace.Completion.map fun (x : X) => c +ᵥ x }