Bounded continuous functions #
The type of bounded continuous functions taking values in a metric space, with the uniform distance.
α →ᵇ β
is the type of bounded continuous functions α → β
from a topological space to a
metric space.
When possible, instead of parametrizing results over (f : α →ᵇ β)
,
you should parametrize over (F : Type*) [BoundedContinuousMapClass F α β] (f : F)
.
When you extend this structure, make sure to extend BoundedContinuousMapClass
.
- toFun : α → β
- continuous_toFun : Continuous self.toFun
Instances For
α →ᵇ β
is the type of bounded continuous functions α → β
from a topological space to a
metric space.
When possible, instead of parametrizing results over (f : α →ᵇ β)
,
you should parametrize over (F : Type*) [BoundedContinuousMapClass F α β] (f : F)
.
When you extend this structure, make sure to extend BoundedContinuousMapClass
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
BoundedContinuousMapClass F α β
states that F
is a type of bounded continuous maps.
You should also extend this typeclass when you extend BoundedContinuousFunction
.
Instances
Equations
- BoundedContinuousFunction.instFunLike = { coe := fun (f : BoundedContinuousFunction α β) => f.toFun, coe_injective' := ⋯ }
Equations
- BoundedContinuousFunction.instCoeTC = { coe := fun (f : F) => { toFun := ⇑f, continuous_toFun := ⋯, map_bounded' := ⋯ } }
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
A continuous function with an explicit bound is a bounded continuous function.
Equations
- BoundedContinuousFunction.mkOfBound f C h = { toContinuousMap := f, map_bounded' := ⋯ }
Instances For
A continuous function on a compact space is automatically a bounded continuous function.
Equations
- BoundedContinuousFunction.mkOfCompact f = { toContinuousMap := f, map_bounded' := ⋯ }
Instances For
If a function is bounded on a discrete space, it is automatically continuous, and therefore gives rise to an element of the type of bounded continuous functions.
Equations
- BoundedContinuousFunction.mkOfDiscrete f C h = { toFun := f, continuous_toFun := ⋯, map_bounded' := ⋯ }
Instances For
The uniform distance between two bounded continuous functions.
The pointwise distance is controlled by the distance between functions, by definition.
The distance between two functions is controlled by the supremum of the pointwise distances.
The type of bounded continuous functions, with the uniform distance, is a pseudometric space.
Equations
- One or more equations did not get rendered due to their size.
The type of bounded continuous functions, with the uniform distance, is a metric space.
Equations
- BoundedContinuousFunction.instMetricSpace = { toPseudoMetricSpace := BoundedContinuousFunction.instPseudoMetricSpace, eq_of_dist_eq_zero := ⋯ }
On an empty space, bounded continuous functions are at distance 0.
The topology on α →ᵇ β
is exactly the topology induced by the natural map to α →ᵤ β
.
Alias of BoundedContinuousFunction.isInducing_coeFn
.
The topology on α →ᵇ β
is exactly the topology induced by the natural map to α →ᵤ β
.
Constant as a continuous bounded function.
Equations
- BoundedContinuousFunction.const α b = { toContinuousMap := ContinuousMap.const α b, map_bounded' := ⋯ }
Instances For
If the target space is inhabited, so is the space of bounded continuous functions.
Equations
- BoundedContinuousFunction.instInhabited = { default := BoundedContinuousFunction.const α default }
When x
is fixed, (f : α →ᵇ β) ↦ f x
is continuous.
The evaluation map is continuous, as a joint function of u
and x
.
Bounded continuous functions taking values in a complete space form a complete space.
Composition of a bounded continuous function and a continuous function.
Equations
- f.compContinuous g = { toContinuousMap := f.comp g, map_bounded' := ⋯ }
Instances For
Restrict a bounded continuous function to a set.
Equations
- f.restrict s = f.compContinuous (ContinuousMap.restrict s (ContinuousMap.id α))
Instances For
Composition (in the target) of a bounded continuous function with a Lipschitz map again gives a bounded continuous function.
Equations
- BoundedContinuousFunction.comp G H f = { toFun := fun (x : α) => G (f x), continuous_toFun := ⋯, map_bounded' := ⋯ }
Instances For
The composition operator (in the target) with a Lipschitz map is Lipschitz.
The composition operator (in the target) with a Lipschitz map is uniformly continuous.
The composition operator (in the target) with a Lipschitz map is continuous.
Restriction (in the target) of a bounded continuous function taking values in a subset.
Equations
- BoundedContinuousFunction.codRestrict s f H = { toFun := Set.codRestrict (⇑f) s H, continuous_toFun := ⋯, map_bounded' := ⋯ }
Instances For
A version of Function.extend
for bounded continuous maps. We assume that the domain has
discrete topology, so we only need to verify boundedness.
Equations
- BoundedContinuousFunction.extend f g h = { toFun := Function.extend ⇑f ⇑g ⇑h, continuous_toFun := ⋯, map_bounded' := ⋯ }
Instances For
The indicator function of a clopen set, as a bounded continuous function.
Equations
- BoundedContinuousFunction.indicator s hs = { toFun := s.indicator 1, continuous_toFun := ⋯, map_bounded' := ⋯ }
Instances For
Equations
- BoundedContinuousFunction.instOne = { one := BoundedContinuousFunction.const α 1 }
Equations
- BoundedContinuousFunction.instZero = { zero := BoundedContinuousFunction.const α 0 }
Equations
- BoundedContinuousFunction.instMul = { mul := fun (f g : BoundedContinuousFunction α R) => { toFun := fun (x : α) => f x * g x, continuous_toFun := ⋯, map_bounded' := ⋯ } }
Equations
- BoundedContinuousFunction.instAdd = { add := fun (f g : BoundedContinuousFunction α R) => { toFun := fun (x : α) => f x + g x, continuous_toFun := ⋯, map_bounded' := ⋯ } }
Equations
- One or more equations did not get rendered due to their size.
Equations
- BoundedContinuousFunction.instPow = { pow := fun (f : BoundedContinuousFunction α R) (n : ℕ) => { toFun := fun (x : α) => f x ^ n, continuous_toFun := ⋯, map_bounded' := ⋯ } }
Equations
Equations
Equations
- BoundedContinuousFunction.instCommMonoid = { toMonoid := BoundedContinuousFunction.instMonoid, mul_comm := ⋯ }
Equations
- BoundedContinuousFunction.instAddCommMonoid = { toAddMonoid := BoundedContinuousFunction.instAddMonoid, add_comm := ⋯ }
Equations
- BoundedContinuousFunction.instMulOneClass = Function.Injective.mulOneClass (fun (f : BoundedContinuousFunction α R) => ⇑f) ⋯ ⋯ ⋯
Equations
- BoundedContinuousFunction.instAddZeroClass = Function.Injective.addZeroClass (fun (f : BoundedContinuousFunction α R) => ⇑f) ⋯ ⋯ ⋯
Composition on the left by a (lipschitz-continuous) homomorphism of topological monoids, as a
MonoidHom
. Similar to MonoidHom.compLeftContinuous
.
Equations
- MonoidHom.compLeftContinuousBounded α g hg = { toFun := fun (f : BoundedContinuousFunction α β) => BoundedContinuousFunction.comp (⇑g) hg f, map_one' := ⋯, map_mul' := ⋯ }
Instances For
Composition on the left by a (lipschitz-continuous) homomorphism of topological AddMonoid
s, as a
AddMonoidHom
. Similar to AddMonoidHom.compLeftContinuous
.
Equations
- AddMonoidHom.compLeftContinuousBounded α g hg = { toFun := fun (f : BoundedContinuousFunction α β) => BoundedContinuousFunction.comp (⇑g) hg f, map_zero' := ⋯, map_add' := ⋯ }
Instances For
Coercion of a NormedAddGroupHom
is an AddMonoidHom
. Similar to AddMonoidHom.coeFn
.
Equations
- BoundedContinuousFunction.coeFnAddHom = { toFun := DFunLike.coe, map_zero' := ⋯, map_add' := ⋯ }
Instances For
The additive map forgetting that a bounded continuous function is bounded.
Equations
- BoundedContinuousFunction.toContinuousMapAddHom α β = { toFun := BoundedContinuousFunction.toContinuousMap, map_zero' := ⋯, map_add' := ⋯ }
Instances For
The pointwise difference of two bounded continuous functions is again bounded continuous.
Equations
- BoundedContinuousFunction.instSub = { sub := fun (f g : BoundedContinuousFunction α R) => { toFun := fun (x : α) => f x - g x, continuous_toFun := ⋯, map_bounded' := ⋯ } }
Equations
- BoundedContinuousFunction.instNatCast = { natCast := fun (n : ℕ) => BoundedContinuousFunction.const α ↑n }
Equations
- BoundedContinuousFunction.instIntCast = { intCast := fun (m : ℤ) => BoundedContinuousFunction.const α ↑m }
Equations
IsBoundedSMul
(in particular, topological module) structure #
In this section, if β
is a metric space and a 𝕜
-module whose addition and scalar multiplication
are compatible with the metric structure, then we show that the space of bounded continuous
functions from α
to β
inherits a so-called IsBoundedSMul
structure (in particular, a
ContinuousMul
structure, which is the mathlib formulation of being a topological module), by
using pointwise operations and checking that they are compatible with the uniform distance.
Equations
- One or more equations did not get rendered due to their size.
Equations
- BoundedContinuousFunction.instMulAction = Function.Injective.mulAction (fun (f : BoundedContinuousFunction α β) => ⇑f) ⋯ ⋯
Equations
- BoundedContinuousFunction.instDistribMulAction = Function.Injective.distribMulAction { toFun := DFunLike.coe, map_zero' := ⋯, map_add' := ⋯ } ⋯ ⋯
Equations
- BoundedContinuousFunction.instModule = Function.Injective.module 𝕜 { toFun := DFunLike.coe, map_zero' := ⋯, map_add' := ⋯ } ⋯ ⋯
The evaluation at a point, as a continuous linear map from α →ᵇ β
to β
.
Equations
- BoundedContinuousFunction.evalCLM 𝕜 x = { toFun := fun (f : BoundedContinuousFunction α β) => f x, map_add' := ⋯, map_smul' := ⋯, cont := ⋯ }
Instances For
The linear map forgetting that a bounded continuous function is bounded.
Equations
- BoundedContinuousFunction.toContinuousMapLinearMap α β 𝕜 = { toFun := BoundedContinuousFunction.toContinuousMap, map_add' := ⋯, map_smul' := ⋯ }