Continuous functions vanishing at infinity #
The type of continuous functions vanishing at infinity. When the domain is compact
C(α, β) ≃ C₀(α, β)
via the identity map. When the codomain is a metric space, every continuous
map which vanishes at infinity is a bounded continuous function. When the domain is a locally
compact space, this type has nice properties.
TODO #
- Create more intances of algebraic structures (e.g.,
NonUnitalSemiring
) once the necessary type classes (e.g.,TopologicalRing
) are sufficiently generalized. - Relate the unitization of
C₀(α, β)
to the Alexandroff compactification.
C₀(α, β)
is the type of continuous functions α → β
which vanish at infinity from a
topological space to a metric space with a zero element.
When possible, instead of parametrizing results over (f : C₀(α, β))
,
you should parametrize over (F : Type*) [ZeroAtInftyContinuousMapClass F α β] (f : F)
.
When you extend this structure, make sure to extend ZeroAtInftyContinuousMapClass
.
- toFun : α → β
- continuous_toFun : Continuous self.toFun
- zero_at_infty' : Filter.Tendsto self.toFun (Filter.cocompact α) (nhds 0)
The function tends to zero along the
cocompact
filter.
Instances For
C₀(α, β)
is the type of continuous functions α → β
which vanish at infinity from a
topological space to a metric space with a zero element.
When possible, instead of parametrizing results over (f : C₀(α, β))
,
you should parametrize over (F : Type*) [ZeroAtInftyContinuousMapClass F α β] (f : F)
.
When you extend this structure, make sure to extend ZeroAtInftyContinuousMapClass
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
C₀(α, β)
is the type of continuous functions α → β
which vanish at infinity from a
topological space to a metric space with a zero element.
When possible, instead of parametrizing results over (f : C₀(α, β))
,
you should parametrize over (F : Type*) [ZeroAtInftyContinuousMapClass F α β] (f : F)
.
When you extend this structure, make sure to extend ZeroAtInftyContinuousMapClass
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
ZeroAtInftyContinuousMapClass F α β
states that F
is a type of continuous maps which
vanish at infinity.
You should also extend this typeclass when you extend ZeroAtInftyContinuousMap
.
- map_continuous : ∀ (f : F), Continuous ⇑f
- zero_at_infty : ∀ (f : F), Filter.Tendsto (⇑f) (Filter.cocompact α) (nhds 0)
Each member of the class tends to zero along the
cocompact
filter.
Instances
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : ZeroAtInftyContinuousMapClass (ZeroAtInftyContinuousMap α β) α β) = (_ : ZeroAtInftyContinuousMapClass (ZeroAtInftyContinuousMap α β) α β)
Equations
- One or more equations did not get rendered due to their size.
Copy of a ZeroAtInftyContinuousMap
with a new toFun
equal to the old one. Useful
to fix definitional equalities.
Equations
- ZeroAtInftyContinuousMap.copy f f' h = { toContinuousMap := ContinuousMap.mk f', zero_at_infty' := (_ : Filter.Tendsto (ContinuousMap.mk f').toFun (Filter.cocompact α) (nhds 0)) }
Instances For
A continuous function on a compact space is automatically a continuous function vanishing at infinity.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A continuous function on a compact space is automatically a continuous function vanishing at infinity. This is not an instance to avoid type class loops.
Algebraic structure #
Whenever β
has suitable algebraic structure and a compatible topological structure, then
C₀(α, β)
inherits a corresponding algebraic structure. The primary exception to this is that
C₀(α, β)
will not have a multiplicative identity.
Equations
- ZeroAtInftyContinuousMap.instZero = { zero := { toContinuousMap := 0, zero_at_infty' := (_ : Filter.Tendsto (fun (x : α) => inst.1) (Filter.cocompact α) (nhds inst.1)) } }
Equations
- ZeroAtInftyContinuousMap.instInhabited = { default := 0 }
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : IsCentralScalar R (ZeroAtInftyContinuousMap α β)) = (_ : IsCentralScalar R (ZeroAtInftyContinuousMap α β))
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : IsScalarTower R (ZeroAtInftyContinuousMap α β) (ZeroAtInftyContinuousMap α β)) = (_ : IsScalarTower R (ZeroAtInftyContinuousMap α β) (ZeroAtInftyContinuousMap α β))
Equations
- (_ : SMulCommClass R (ZeroAtInftyContinuousMap α β) (ZeroAtInftyContinuousMap α β)) = (_ : SMulCommClass R (ZeroAtInftyContinuousMap α β) (ZeroAtInftyContinuousMap α β))
Metric structure #
When β
is a metric space, then every element of C₀(α, β)
is bounded, and so there is a natural
inclusion map ZeroAtInftyContinuousMap.toBCF : C₀(α, β) → (α →ᵇ β)
. Via this map C₀(α, β)
inherits a metric as the pullback of the metric on α →ᵇ β
. Moreover, this map has closed range
in α →ᵇ β
and consequently C₀(α, β)
is a complete space whenever β
is complete.
Equations
- (_ : BoundedContinuousMapClass F α β) = (_ : BoundedContinuousMapClass F α β)
Construct a bounded continuous function from a continuous function vanishing at infinity.
Equations
- ZeroAtInftyContinuousMap.toBCF f = { toContinuousMap := ↑f, map_bounded' := (_ : ∃ (C : ℝ), ∀ (x y : α), dist (f x) (f y) ≤ C) }
Instances For
The type of continuous functions vanishing at infinity, with the uniform distance induced by the
inclusion ZeroAtInftyContinuousMap.toBCF
, is a pseudo-metric space.
Equations
- ZeroAtInftyContinuousMap.instPseudoMetricSpace = PseudoMetricSpace.induced ZeroAtInftyContinuousMap.toBCF inferInstance
The type of continuous functions vanishing at infinity, with the uniform distance induced by the
inclusion ZeroAtInftyContinuousMap.toBCF
, is a metric space.
Equations
- ZeroAtInftyContinuousMap.instMetricSpace = MetricSpace.induced ZeroAtInftyContinuousMap.toBCF (_ : Function.Injective ZeroAtInftyContinuousMap.toBCF) inferInstance
Convergence in the metric on C₀(α, β)
is uniform convergence.
Continuous functions vanishing at infinity taking values in a complete space form a complete space.
Equations
- (_ : CompleteSpace (ZeroAtInftyContinuousMap α β)) = (_ : CompleteSpace (ZeroAtInftyContinuousMap α β))
Normed space #
The norm structure on C₀(α, β)
is the one induced by the inclusion toBCF : C₀(α, β) → (α →ᵇ b)
,
viewed as an additive monoid homomorphism. Then C₀(α, β)
is naturally a normed space over a normed
field 𝕜
whenever β
is as well.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Star structure #
It is possible to equip C₀(α, β)
with a pointwise star
operation whenever there is a continuous
star : β → β
for which star (0 : β) = 0
. We don't have quite this weak a typeclass, but
StarAddMonoid
is close enough.
The StarAddMonoid
and NormedStarGroup
classes on C₀(α, β)
are inherited from their
counterparts on α →ᵇ β
. Ultimately, when β
is a C⋆-ring, then so is C₀(α, β)
.
Equations
- One or more equations did not get rendered due to their size.
Equations
- ZeroAtInftyContinuousMap.instStarAddMonoid = StarAddMonoid.mk (_ : ∀ (f g : ZeroAtInftyContinuousMap α β), star (f + g) = star f + star g)
Equations
- (_ : NormedStarGroup (ZeroAtInftyContinuousMap α β)) = (_ : NormedStarGroup (ZeroAtInftyContinuousMap α β))
Equations
- (_ : StarModule 𝕜 (ZeroAtInftyContinuousMap α β)) = (_ : StarModule 𝕜 (ZeroAtInftyContinuousMap α β))
Equations
- ZeroAtInftyContinuousMap.instStarRing = let src := ZeroAtInftyContinuousMap.instStarAddMonoid; StarRing.mk (_ : ∀ (r s : ZeroAtInftyContinuousMap α β), star (r + s) = star r + star s)
Equations
- (_ : CstarRing (ZeroAtInftyContinuousMap α β)) = (_ : CstarRing (ZeroAtInftyContinuousMap α β))
C₀ as a functor #
For each β
with sufficient structure, there is a contravariant functor C₀(-, β)
from the
category of topological spaces with morphisms given by CocompactMap
s.
Composition of a continuous function vanishing at infinity with a cocompact map yields another continuous function vanishing at infinity.
Equations
- ZeroAtInftyContinuousMap.comp f g = { toContinuousMap := ContinuousMap.comp ↑f ↑g, zero_at_infty' := (_ : Filter.Tendsto (⇑f ∘ fun (x : β) => ↑g x) (Filter.cocompact β) (nhds 0)) }
Instances For
Composition as an additive monoid homomorphism.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Composition as a semigroup homomorphism.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Composition as a linear map.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Composition as a non-unital algebra homomorphism.
Equations
- One or more equations did not get rendered due to their size.