Documentation

Mathlib.Topology.MetricSpace.Basic

Basic properties of metric spaces, and instances. #

@[instance 100]
instance MetricSpace.instT0Space {γ : Type w} [MetricSpace γ] :
Equations
  • =
theorem Metric.isUniformEmbedding_iff' {β : Type v} {γ : Type w} [MetricSpace γ] [MetricSpace β] {f : γβ} :
IsUniformEmbedding f (∀ ε > 0, δ > 0, ∀ {a b : γ}, dist a b < δdist (f a) (f b) < ε) δ > 0, ε > 0, ∀ {a b : γ}, dist (f a) (f b) < εdist a b < δ

A map between metric spaces is a uniform embedding if and only if the distance between f x and f y is controlled in terms of the distance between x and y and conversely.

@[deprecated Metric.isUniformEmbedding_iff']
theorem Metric.uniformEmbedding_iff' {β : Type v} {γ : Type w} [MetricSpace γ] [MetricSpace β] {f : γβ} :
IsUniformEmbedding f (∀ ε > 0, δ > 0, ∀ {a b : γ}, dist a b < δdist (f a) (f b) < ε) δ > 0, ε > 0, ∀ {a b : γ}, dist (f a) (f b) < εdist a b < δ

Alias of Metric.isUniformEmbedding_iff'.


A map between metric spaces is a uniform embedding if and only if the distance between f x and f y is controlled in terms of the distance between x and y and conversely.

@[reducible, inline]

If a PseudoMetricSpace is a T₀ space, then it is a MetricSpace.

Equations
Instances For
    @[instance 100]

    A metric space induces an emetric space

    Equations
    theorem Metric.isClosed_of_pairwise_le_dist {γ : Type w} [MetricSpace γ] {s : Set γ} {ε : } (hε : 0 < ε) (hs : s.Pairwise fun (x y : γ) => ε dist x y) :
    theorem Metric.isClosedEmbedding_of_pairwise_le_dist {γ : Type w} [MetricSpace γ] {α : Type u_2} [TopologicalSpace α] [DiscreteTopology α] {ε : } (hε : 0 < ε) {f : αγ} (hf : Pairwise fun (x y : α) => ε dist (f x) (f y)) :
    @[deprecated Metric.isClosedEmbedding_of_pairwise_le_dist]
    theorem Metric.closedEmbedding_of_pairwise_le_dist {γ : Type w} [MetricSpace γ] {α : Type u_2} [TopologicalSpace α] [DiscreteTopology α] {ε : } (hε : 0 < ε) {f : αγ} (hf : Pairwise fun (x y : α) => ε dist (f x) (f y)) :

    Alias of Metric.isClosedEmbedding_of_pairwise_le_dist.

    theorem Metric.isUniformEmbedding_bot_of_pairwise_le_dist {α : Type u} [PseudoMetricSpace α] {β : Type u_2} {ε : } (hε : 0 < ε) {f : βα} (hf : Pairwise fun (x y : β) => ε dist (f x) (f y)) :

    If f : β → α sends any two distinct points to points at distance at least ε > 0, then f is a uniform embedding with respect to the discrete uniformity on β.

    @[deprecated Metric.isUniformEmbedding_bot_of_pairwise_le_dist]
    theorem Metric.uniformEmbedding_bot_of_pairwise_le_dist {α : Type u} [PseudoMetricSpace α] {β : Type u_2} {ε : } (hε : 0 < ε) {f : βα} (hf : Pairwise fun (x y : β) => ε dist (f x) (f y)) :

    Alias of Metric.isUniformEmbedding_bot_of_pairwise_le_dist.


    If f : β → α sends any two distinct points to points at distance at least ε > 0, then f is a uniform embedding with respect to the discrete uniformity on β.

    @[reducible, inline]
    abbrev EMetricSpace.toMetricSpaceOfDist {α : Type u} [EMetricSpace α] (dist : αα) (edist_ne_top : ∀ (x y : α), edist x y ) (h : ∀ (x y : α), dist x y = (edist x y).toReal) :

    One gets a metric space from an emetric space if the edistance is everywhere finite, by pushing the edistance to reals. We set it up so that the edist and the uniformity are defeq in the metric space and the emetric space. In this definition, the distance is given separately, to be able to prescribe some expression which is not defeq to the push-forward of the edistance to reals.

    Equations
    Instances For
      def EMetricSpace.toMetricSpace {α : Type u} [EMetricSpace α] (h : ∀ (x y : α), edist x y ) :

      One gets a metric space from an emetric space if the edistance is everywhere finite, by pushing the edistance to reals. We set it up so that the edist and the uniformity are defeq in the metric space and the emetric space.

      Equations
      Instances For
        @[reducible, inline]
        abbrev MetricSpace.induced {γ : Type u_2} {β : Type u_3} (f : γβ) (hf : Function.Injective f) (m : MetricSpace β) :

        Metric space structure pulled back by an injective function. Injectivity is necessary to ensure that dist x y = 0 only if x = y.

        Equations
        Instances For
          @[reducible, inline]
          abbrev IsUniformEmbedding.comapMetricSpace {α : Type u_2} {β : Type u_3} [UniformSpace α] [m : MetricSpace β] (f : αβ) (h : IsUniformEmbedding f) :

          Pull back a metric space structure by a uniform embedding. This is a version of MetricSpace.induced useful in case if the domain already has a UniformSpace structure.

          Equations
          Instances For
            @[deprecated IsUniformEmbedding.comapMetricSpace]
            def UniformEmbedding.comapMetricSpace {α : Type u_2} {β : Type u_3} [UniformSpace α] [m : MetricSpace β] (f : αβ) (h : IsUniformEmbedding f) :

            Alias of IsUniformEmbedding.comapMetricSpace.


            Pull back a metric space structure by a uniform embedding. This is a version of MetricSpace.induced useful in case if the domain already has a UniformSpace structure.

            Equations
            Instances For
              @[reducible, inline]
              abbrev IsEmbedding.comapMetricSpace {α : Type u_2} {β : Type u_3} [TopologicalSpace α] [m : MetricSpace β] (f : αβ) (h : IsEmbedding f) :

              Pull back a metric space structure by an embedding. This is a version of MetricSpace.induced useful in case if the domain already has a TopologicalSpace structure.

              Equations
              Instances For
                @[deprecated IsEmbedding.comapMetricSpace]
                def Embedding.comapMetricSpace {α : Type u_2} {β : Type u_3} [TopologicalSpace α] [m : MetricSpace β] (f : αβ) (h : IsEmbedding f) :

                Alias of IsEmbedding.comapMetricSpace.


                Pull back a metric space structure by an embedding. This is a version of MetricSpace.induced useful in case if the domain already has a TopologicalSpace structure.

                Equations
                Instances For
                  instance Subtype.metricSpace {α : Type u_2} {p : αProp} [MetricSpace α] :
                  Equations
                  Equations
                  Equations

                  Instantiate the reals as a metric space.

                  Equations
                  Equations
                  instance Prod.metricSpaceMax {β : Type v} {γ : Type w} [MetricSpace γ] [MetricSpace β] :
                  MetricSpace (γ × β)
                  Equations
                  instance metricSpacePi {β : Type v} {π : βType u_2} [Fintype β] [(b : β) → MetricSpace (π b)] :
                  MetricSpace ((b : β) → π b)

                  A finite product of metric spaces is a metric space, with the sup distance.

                  Equations
                  theorem Metric.secondCountable_of_countable_discretization {α : Type u} [MetricSpace α] (H : ε > 0, ∃ (β : Type u_2) (x : Encodable β) (F : αβ), ∀ (x y : α), F x = F ydist x y ε) :

                  A metric space is second countable if one can reconstruct up to any ε>0 any element of the space from countably many data.

                  Equations
                  Equations

                  Additive, Multiplicative #

                  The distance on those type synonyms is inherited without change.

                  Equations
                  • instMetricSpaceAdditive_1 = inst
                  Equations
                  • instMetricSpaceMultiplicative_1 = inst
                  Equations

                  Order dual #

                  The distance on this type synonym is inherited without change.

                  Equations
                  • instMetricSpaceOrderDual_1 = inst