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
        Equations
          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} [Zero s] (h0 : 0 = 0) :

                  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} [Zero s] (h0 : 0 = 0) (a✝ : s) :
                      (ContinuousMapZero.id h0) 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
                          Equations
                            @[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
                            Equations
                              @[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