Documentation

Mathlib.Topology.ContinuousMap.ContinuousMapZero

Continuous maps sending zero to zero #

This is the type of continuous maps from X to R such that (0 : X) ↦ (0 : R) for which we provide the scoped notation C(X, R)₀. We provide this as a dedicated type solely for the non-unital continuous functional calculus, as using various terms of type Ideal C(X, R) were overly burdensome on type class synthesis.

Of course, one could generalize to maps between pointed topological spaces, but that goes beyond the purpose of this type.

structure ContinuousMapZero (X : Type u_1) (R : Type u_2) [Zero X] [Zero R] [TopologicalSpace X] [TopologicalSpace R] extends C(X, R) :
Type (max u_1 u_2)

The type of continuous maps which map zero to zero.

Note that one should never use the structure projection ContinuousMapZero.toContinuousMap and instead favor the coercion (↑) : C(X, R)₀ → C(X, R) available from the instance of ContinuousMapClass. All the instances on C(X, R)₀ from C(X, R) passes through this coercion, not the structure projection. Of course, the two are definitionally equal, but not reducibly so.

Instances For

    The type of continuous maps which map zero to zero.

    Note that one should never use the structure projection ContinuousMapZero.toContinuousMap and instead favor the coercion (↑) : C(X, R)₀ → C(X, R) available from the instance of ContinuousMapClass. All the instances on C(X, R)₀ from C(X, R) passes through this coercion, not the structure projection. Of course, the two are definitionally equal, but not reducibly so.

    Equations
      Instances For
        def Set.zeroOfFactMem {X : Type u_4} [Zero X] (s : Set X) [Fact (0 s)] :
        Zero s

        not marked as an instance because it would be a bad one in general, but it can be useful when working with ContinuousMapZero and the non-unital continuous functional calculus.

        Equations
          Instances For
            theorem ContinuousMapZero.ext {X : Type u_1} {R : Type u_3} [Zero X] [Zero R] [TopologicalSpace X] [TopologicalSpace R] {f g : ContinuousMapZero X R} (h : ∀ (x : X), f x = g x) :
            f = g
            theorem ContinuousMapZero.ext_iff {X : Type u_1} {R : Type u_3} [Zero X] [Zero R] [TopologicalSpace X] [TopologicalSpace R] {f g : ContinuousMapZero X R} :
            f = g ∀ (x : X), f x = g x
            @[simp]
            theorem ContinuousMapZero.coe_mk {X : Type u_1} {R : Type u_3} [Zero X] [Zero R] [TopologicalSpace X] [TopologicalSpace R] {f : C(X, R)} {h0 : f 0 = 0} :
            { toContinuousMap := f, map_zero' := h0 } = f

            Composition of continuous maps which map zero to zero.

            Equations
              Instances For
                @[simp]
                theorem ContinuousMapZero.comp_apply {X : Type u_1} {Y : Type u_2} {R : Type u_3} [Zero X] [Zero Y] [Zero R] [TopologicalSpace X] [TopologicalSpace Y] [TopologicalSpace R] (g : ContinuousMapZero Y R) (f : ContinuousMapZero X Y) (x : X) :
                (g.comp f) x = g (f x)
                theorem ContinuousMapZero.le_def {X : Type u_1} {R : Type u_3} [Zero X] [Zero R] [TopologicalSpace X] [TopologicalSpace R] [PartialOrder R] (f g : ContinuousMapZero X R) :
                f g ∀ (x : X), f x g x
                def ContinuousMapZero.id {R : Type u_3} [Zero R] [TopologicalSpace R] (s : Set R) [Fact (0 s)] :

                The identity function as an element of C(s, R)₀ when 0 ∈ (s : Set R).

                Equations
                  Instances For
                    @[simp]
                    theorem ContinuousMapZero.id_toFun {R : Type u_3} [Zero R] [TopologicalSpace R] (s : Set R) [Fact (0 s)] (a✝ : s) :
                    (ContinuousMapZero.id s) a✝ = a✝
                    noncomputable def ContinuousMapZero.mkD {X : Type u_1} {R : Type u_2} [Zero R] [TopologicalSpace X] [TopologicalSpace R] [Zero X] (f : XR) (default : ContinuousMapZero X R) :

                    Interpret f : α → β as an element of C(α, β)₀, falling back to the default value default : C(α, β)₀ if f is not continuous or does not map 0 to 0. This is mainly intended to be used for C(α, β)₀-valued integration. For example, if a family of functions f : ι → α → β satisfies that f i is continuous and maps 0 to 0 for almost every i, you can write the C(α, β)₀-valued integral "∫ i, f i" as ∫ i, ContinuousMapZero.mkD (f i) 0.

                    Equations
                      Instances For
                        theorem ContinuousMapZero.mkD_of_continuous {X : Type u_1} {R : Type u_2} [Zero R] [TopologicalSpace X] [TopologicalSpace R] [Zero X] {f : XR} {g : ContinuousMapZero X R} (hf : Continuous f) (hf₀ : f 0 = 0) :
                        mkD f g = { toFun := f, continuous_toFun := hf, map_zero' := hf₀ }
                        theorem ContinuousMapZero.mkD_of_not_continuous {X : Type u_1} {R : Type u_2} [Zero R] [TopologicalSpace X] [TopologicalSpace R] [Zero X] {f : XR} {g : ContinuousMapZero X R} (hf : ¬Continuous f) :
                        mkD f g = g
                        theorem ContinuousMapZero.mkD_of_not_zero {X : Type u_1} {R : Type u_2} [Zero R] [TopologicalSpace X] [TopologicalSpace R] [Zero X] {f : XR} {g : ContinuousMapZero X R} (hf : f 0 0) :
                        mkD f g = g
                        theorem ContinuousMapZero.mkD_apply_of_continuous {X : Type u_1} {R : Type u_2} [Zero R] [TopologicalSpace X] [TopologicalSpace R] [Zero X] {f : XR} {g : ContinuousMapZero X R} {x : X} (hf : Continuous f) (hf₀ : f 0 = 0) :
                        (mkD f g) x = f x
                        theorem ContinuousMapZero.mkD_of_continuousOn {X : Type u_1} {R : Type u_2} [Zero R] [TopologicalSpace X] [TopologicalSpace R] {s : Set X} [Zero s] {f : XR} {g : ContinuousMapZero (↑s) R} (hf : ContinuousOn f s) (hf₀ : f 0 = 0) :
                        mkD (s.restrict f) g = { toFun := s.restrict f, continuous_toFun := , map_zero' := hf₀ }
                        theorem ContinuousMapZero.mkD_of_not_continuousOn {X : Type u_1} {R : Type u_2} [Zero R] [TopologicalSpace X] [TopologicalSpace R] {s : Set X} [Zero s] {f : XR} {g : ContinuousMapZero (↑s) R} (hf : ¬ContinuousOn f s) :
                        mkD (s.restrict f) g = g
                        theorem ContinuousMapZero.mkD_apply_of_continuousOn {X : Type u_1} {R : Type u_2} [Zero R] [TopologicalSpace X] [TopologicalSpace R] {s : Set X} [Zero s] {f : XR} {g : ContinuousMapZero (↑s) R} {x : s} (hf : ContinuousOn f s) (hf₀ : f 0 = 0) :
                        (mkD (s.restrict f) g) x = f x
                        theorem ContinuousMapZero.mkD_eq_mkD_of_map_zero {X : Type u_1} {R : Type u_2} [Zero R] [TopologicalSpace X] [TopologicalSpace R] [Zero X] (f : XR) (g : ContinuousMapZero X R) (f_zero : f 0 = 0) :
                        (mkD f g) = ContinuousMap.mkD f g

                        Link between ContinuousMapZero.mkD and ContinuousMap.mkD.

                        theorem ContinuousMapZero.mkD_eq_self {X : Type u_1} {R : Type u_2} [Zero R] [TopologicalSpace X] [TopologicalSpace R] [Zero X] {f g : ContinuousMapZero X R} :
                        mkD (⇑f) g = f
                        @[simp]
                        theorem ContinuousMapZero.coe_zero {X : Type u_1} {R : Type u_2} [Zero X] [TopologicalSpace X] [TopologicalSpace R] [Zero R] :
                        0 = 0
                        @[simp]
                        theorem ContinuousMapZero.coe_add {X : Type u_1} {R : Type u_2} [Zero X] [TopologicalSpace X] [TopologicalSpace R] [AddZeroClass R] [ContinuousAdd R] (f g : ContinuousMapZero X R) :
                        ⇑(f + g) = f + g
                        @[simp]
                        theorem ContinuousMapZero.coe_neg {X : Type u_1} {R : Type u_2} [Zero X] [TopologicalSpace X] [TopologicalSpace R] [NegZeroClass R] [ContinuousNeg R] (f : ContinuousMapZero X R) :
                        ⇑(-f) = -f
                        @[simp]
                        theorem ContinuousMapZero.coe_sub {X : Type u_1} {R : Type u_2} [Zero X] [TopologicalSpace X] [TopologicalSpace R] [SubNegZeroMonoid R] [ContinuousSub R] (f g : ContinuousMapZero X R) :
                        ⇑(f - g) = f - g
                        @[simp]
                        theorem ContinuousMapZero.coe_mul {X : Type u_1} {R : Type u_2} [Zero X] [TopologicalSpace X] [TopologicalSpace R] [MulZeroClass R] [ContinuousMul R] (f g : ContinuousMapZero X R) :
                        ⇑(f * g) = f * g
                        @[simp]
                        theorem ContinuousMapZero.coe_smul {X : Type u_1} {R : Type u_2} [Zero X] [TopologicalSpace X] [TopologicalSpace R] {M : Type u_3} [Zero R] [SMulZeroClass M R] [ContinuousConstSMul M R] (m : M) (f : ContinuousMapZero X R) :
                        ⇑(m f) = m f

                        The coercion C(X, R)₀ → C(X, R) bundled as a non-unital star algebra homomorphism.

                        Equations
                          Instances For

                            The coercion C(X, R)₀ → C(X, R) bundled as a continuous linear map.

                            Equations
                              Instances For
                                def ContinuousMapZero.evalCLM {X : Type u_1} {R : Type u_2} [Zero X] [TopologicalSpace X] [TopologicalSpace R] [CommSemiring R] [IsTopologicalSemiring R] (𝕜 : Type u_3) [Semiring 𝕜] [Module 𝕜 R] [ContinuousConstSMul 𝕜 R] (x : X) :

                                The evaluation at a point, as a continuous linear map from C(X, R)₀ to R.

                                Equations
                                  Instances For
                                    @[simp]
                                    theorem ContinuousMapZero.evalCLM_apply {X : Type u_1} {R : Type u_2} [Zero X] [TopologicalSpace X] [TopologicalSpace R] [CommSemiring R] [IsTopologicalSemiring R] {𝕜 : Type u_3} [Semiring 𝕜] [Module 𝕜 R] [ContinuousConstSMul 𝕜 R] (x : X) (f : ContinuousMapZero X R) :
                                    (evalCLM 𝕜 x) f = f x

                                    Coercion to a function as an AddMonoidHom. Similar to ContinuousMap.coeFnAddMonoidHom.

                                    Equations
                                      Instances For
                                        @[simp]
                                        theorem ContinuousMapZero.coe_sum {X : Type u_1} {R : Type u_2} [Zero X] [TopologicalSpace X] [TopologicalSpace R] [CommSemiring R] [IsTopologicalSemiring R] {ι : Type u_3} (s : Finset ι) (f : ιContinuousMapZero X R) :
                                        (s.sum f) = is, (f i)
                                        def UniformEquiv.arrowCongrLeft₀ {X : Type u_1} {R : Type u_2} [Zero X] [TopologicalSpace X] [Zero R] [UniformSpace R] {Y : Type u_3} [TopologicalSpace Y] [Zero Y] (f : X ≃ₜ Y) (hf : f 0 = 0) :

                                        The uniform equivalence C(X, R)₀ ≃ᵤ C(Y, R)₀ induced by a homeomorphism of the domains sending 0 : X to 0 : Y.

                                        Equations
                                          Instances For

                                            The functor C(·, R)₀ from topological spaces with zero (and ContinuousMapZero maps) to non-unital star algebras.

                                            Equations
                                              Instances For

                                                The functor C(X, ·)₀ from non-unital topological star algebras (with non-unital continuous star homomorphisms) to non-unital star algebras.

                                                Equations
                                                  Instances For
                                                    @[simp]
                                                    theorem ContinuousMapZero.nonUnitalStarAlgHom_postcomp_apply (X : Type u_1) {M : Type u_3} {R : Type u_4} {S : Type u_5} [Zero X] [CommSemiring M] [TopologicalSpace X] [TopologicalSpace R] [TopologicalSpace S] [CommSemiring R] [StarRing R] [IsTopologicalSemiring R] [ContinuousStar R] [CommSemiring S] [StarRing S] [IsTopologicalSemiring S] [ContinuousStar S] [Module M R] [Module M S] [ContinuousConstSMul M R] [ContinuousConstSMul M S] (φ : R →⋆ₙₐ[M] S) ( : Continuous φ) (f : ContinuousMapZero X R) :
                                                    (nonUnitalStarAlgHom_postcomp X φ ) f = { toFun := φ, continuous_toFun := , map_zero' := }.comp f
                                                    noncomputable instance ContinuousMapZero.instMetricSpace {α : Type u_1} {R : Type u_3} [TopologicalSpace α] [CompactSpace α] [Zero α] [MetricSpace R] [Zero R] :
                                                    Equations
                                                      noncomputable instance ContinuousMapZero.instNorm {α : Type u_1} {R : Type u_3} [TopologicalSpace α] [CompactSpace α] [Zero α] [NormedAddCommGroup R] :
                                                      Equations
                                                        noncomputable instance ContinuousMapZero.instNormedSpaceOfNormedAlgebra {α : Type u_1} {𝕜 : Type u_2} {R : Type u_3} [TopologicalSpace α] [CompactSpace α] [Zero α] [NormedField 𝕜] [NormedCommRing R] [NormedAlgebra 𝕜 R] :
                                                        Equations