Documentation

Mathlib.Analysis.Normed.Group.Defs

(Semi)normed groups: definitions #

In this file we define 10 classes:

We also provide some instances relating these classes.

Notes #

The current convention dist x y = ‖x - y‖ means that the distance is invariant under right addition, but actions in mathlib are usually from the left. This means we might want to change it to dist x y = ‖-x + y‖.

The normed group hierarchy would lend itself well to a mixin design (that is, having SeminormedGroup and SeminormedAddGroup not extend Group and AddGroup), but we choose not to for performance concerns.

Tags #

normed group

class Norm (E : Type u_8) :
Type u_8

Auxiliary class, endowing a type E with a function norm : E → ℝ with notation ‖x‖. This class is designed to be extended in more interesting classes specifying the properties of the norm.

  • norm : E

    the -valued norm function.

Instances
    class NNNorm (E : Type u_8) :
    Type u_8

    Auxiliary class, endowing a type α with a function nnnorm : α → ℝ≥0 with notation ‖x‖₊.

    • nnnorm : ENNReal

      the ℝ≥0-valued norm function.

    Instances
      class ENorm (E : Type u_8) :
      Type u_8

      Auxiliary class, endowing a type α with a function enorm : α → ℝ≥0∞ with notation ‖x‖ₑ.

      • enorm : EENNReal

        the ℝ≥0∞-valued norm function.

      Instances

        the -valued norm function.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For

          the ℝ≥0-valued norm function.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For

            the ℝ≥0∞-valued norm function.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              instance NNNorm.toENorm {E : Type u_8} [NNNorm E] :
              Equations
              theorem enorm_eq_nnnorm {E : Type u_8} [NNNorm E] (x : E) :
              @[simp]
              theorem toNNReal_enorm {E : Type u_8} [NNNorm E] (x : E) :
              @[simp]
              theorem coe_le_enorm {E : Type u_8} [NNNorm E] {x : E} {r : NNReal} :
              @[simp]
              theorem enorm_le_coe {E : Type u_8} [NNNorm E] {x : E} {r : NNReal} :
              @[simp]
              theorem coe_lt_enorm {E : Type u_8} [NNNorm E] {x : E} {r : NNReal} :
              @[simp]
              theorem enorm_lt_coe {E : Type u_8} [NNNorm E] {x : E} {r : NNReal} :
              @[simp]
              theorem enorm_ne_top {E : Type u_8} [NNNorm E] {x : E} :
              @[simp]
              theorem enorm_lt_top {E : Type u_8} [NNNorm E] {x : E} :
              class ContinuousENorm (E : Type u_8) [TopologicalSpace E] extends ENorm E :
              Type u_8

              A type E equipped with a continuous map ‖·‖ₑ : E → ℝ≥0∞

              NB. We do not demand that the topology is somehow defined by the enorm: for ℝ≥0∞ (the motivating example behind this definition), this is not true.

              Instances

                An e-seminormed monoid is an additive monoid endowed with a continuous enorm. Note that we do not ask for the enorm to be positive definite: non-trivial elements may have enorm zero.

                Instances

                  An enormed monoid is an additive monoid endowed with a continuous enorm, which is positive definite: in other words, this is an ESeminormedAddMonoid with a positive definiteness condition added.

                  Instances
                    class ESeminormedMonoid (E : Type u_8) [TopologicalSpace E] extends ContinuousENorm E, Monoid E :
                    Type u_8

                    An e-seminormed monoid is a monoid endowed with a continuous enorm. Note that we only ask for the enorm to be a semi-norm: non-trivial elements may have enorm zero.

                    Instances
                      class ENormedMonoid (E : Type u_8) [TopologicalSpace E] extends ESeminormedMonoid E :
                      Type u_8

                      An enormed monoid is a monoid endowed with a continuous enorm, which is positive definite: in other words, this is an ESeminormedMonoid with a positive definiteness condition added.

                      Instances

                        An e-seminormed commutative monoid is an additive commutative monoid endowed with a continuous enorm.

                        We don't have ESeminormedAddCommMonoid extend EMetricSpace, since the canonical instance ℝ≥0∞ is not an EMetricSpace. This is because ℝ≥0∞ carries the order topology, which is distinct from the topology coming from edist.

                        Instances

                          An enormed commutative monoid is an additive commutative monoid endowed with a continuous enorm which is positive definite.

                          We don't have ENormedAddCommMonoid extend EMetricSpace, since the canonical instance ℝ≥0∞ is not an EMetricSpace. This is because ℝ≥0∞ carries the order topology, which is distinct from the topology coming from edist.

                          Instances

                            An e-seminormed commutative monoid is a commutative monoid endowed with a continuous enorm.

                            Instances

                              An enormed commutative monoid is a commutative monoid endowed with a continuous enorm which is positive definite.

                              Instances
                                class SeminormedAddGroup (E : Type u_8) extends Norm E, AddGroup E, PseudoMetricSpace E :
                                Type u_8

                                A seminormed group is an additive group endowed with a norm for which dist x y = ‖x - y‖ defines a pseudometric space structure.

                                Instances
                                  class SeminormedGroup (E : Type u_8) extends Norm E, Group E, PseudoMetricSpace E :
                                  Type u_8

                                  A seminormed group is a group endowed with a norm for which dist x y = ‖x / y‖ defines a pseudometric space structure.

                                  Instances
                                    class NormedAddGroup (E : Type u_8) extends Norm E, AddGroup E, MetricSpace E :
                                    Type u_8

                                    A normed group is an additive group endowed with a norm for which dist x y = ‖x - y‖ defines a metric space structure.

                                    Instances
                                      class NormedGroup (E : Type u_8) extends Norm E, Group E, MetricSpace E :
                                      Type u_8

                                      A normed group is a group endowed with a norm for which dist x y = ‖x / y‖ defines a metric space structure.

                                      Instances
                                        class SeminormedAddCommGroup (E : Type u_8) extends Norm E, AddCommGroup E, PseudoMetricSpace E :
                                        Type u_8

                                        A seminormed group is an additive group endowed with a norm for which dist x y = ‖x - y‖ defines a pseudometric space structure.

                                        Instances
                                          class SeminormedCommGroup (E : Type u_8) extends Norm E, CommGroup E, PseudoMetricSpace E :
                                          Type u_8

                                          A seminormed group is a group endowed with a norm for which dist x y = ‖x / y‖ defines a pseudometric space structure.

                                          Instances
                                            class NormedAddCommGroup (E : Type u_8) extends Norm E, AddCommGroup E, MetricSpace E :
                                            Type u_8

                                            A normed group is an additive group endowed with a norm for which dist x y = ‖x - y‖ defines a metric space structure.

                                            Instances
                                              class NormedCommGroup (E : Type u_8) extends Norm E, CommGroup E, MetricSpace E :
                                              Type u_8

                                              A normed group is a group endowed with a norm for which dist x y = ‖x / y‖ defines a metric space structure.

                                              Instances
                                                @[instance 100]
                                                Equations
                                                @[instance 100]
                                                Equations
                                                @[instance 100]
                                                Equations
                                                @[instance 100]
                                                Equations
                                                @[instance 100]
                                                Equations
                                                @[instance 100]
                                                Equations
                                                @[instance 100]
                                                Equations
                                                @[instance 100]
                                                Equations
                                                @[reducible, inline]
                                                abbrev NormedGroup.ofSeparation {E : Type u_5} [SeminormedGroup E] (h : ∀ (x : E), x = 0x = 1) :

                                                Construct a NormedGroup from a SeminormedGroup satisfying ∀ x, ‖x‖ = 0 → x = 1. This avoids having to go back to the (Pseudo)MetricSpace level when declaring a NormedGroup instance as a special case of a more general SeminormedGroup instance.

                                                Equations
                                                Instances For
                                                  @[reducible, inline]
                                                  abbrev NormedAddGroup.ofSeparation {E : Type u_5} [SeminormedAddGroup E] (h : ∀ (x : E), x = 0x = 0) :

                                                  Construct a NormedAddGroup from a SeminormedAddGroup satisfying ∀ x, ‖x‖ = 0 → x = 0. This avoids having to go back to the (Pseudo)MetricSpace level when declaring a NormedAddGroup instance as a special case of a more general SeminormedAddGroup instance.

                                                  Equations
                                                  Instances For
                                                    @[reducible, inline]
                                                    abbrev NormedCommGroup.ofSeparation {E : Type u_5} [SeminormedCommGroup E] (h : ∀ (x : E), x = 0x = 1) :

                                                    Construct a NormedCommGroup from a SeminormedCommGroup satisfying ∀ x, ‖x‖ = 0 → x = 1. This avoids having to go back to the (Pseudo)MetricSpace level when declaring a NormedCommGroup instance as a special case of a more general SeminormedCommGroup instance.

                                                    Equations
                                                    Instances For
                                                      @[reducible, inline]
                                                      abbrev NormedAddCommGroup.ofSeparation {E : Type u_5} [SeminormedAddCommGroup E] (h : ∀ (x : E), x = 0x = 0) :

                                                      Construct a NormedAddCommGroup from a SeminormedAddCommGroup satisfying ∀ x, ‖x‖ = 0 → x = 0. This avoids having to go back to the (Pseudo)MetricSpace level when declaring a NormedAddCommGroup instance as a special case of a more general SeminormedAddCommGroup instance.

                                                      Equations
                                                      Instances For
                                                        @[reducible, inline]
                                                        abbrev SeminormedGroup.ofMulDist {E : Type u_5} [Norm E] [Group E] [PseudoMetricSpace E] (h₁ : ∀ (x : E), x = dist x 1) (h₂ : ∀ (x y z : E), dist x y dist (x * z) (y * z)) :

                                                        Construct a seminormed group from a multiplication-invariant distance.

                                                        Equations
                                                        Instances For
                                                          @[reducible, inline]
                                                          abbrev SeminormedAddGroup.ofAddDist {E : Type u_5} [Norm E] [AddGroup E] [PseudoMetricSpace E] (h₁ : ∀ (x : E), x = dist x 0) (h₂ : ∀ (x y z : E), dist x y dist (x + z) (y + z)) :

                                                          Construct a seminormed group from a translation-invariant distance.

                                                          Equations
                                                          Instances For
                                                            @[reducible, inline]
                                                            abbrev SeminormedGroup.ofMulDist' {E : Type u_5} [Norm E] [Group E] [PseudoMetricSpace E] (h₁ : ∀ (x : E), x = dist x 1) (h₂ : ∀ (x y z : E), dist (x * z) (y * z) dist x y) :

                                                            Construct a seminormed group from a multiplication-invariant pseudodistance.

                                                            Equations
                                                            Instances For
                                                              @[reducible, inline]
                                                              abbrev SeminormedAddGroup.ofAddDist' {E : Type u_5} [Norm E] [AddGroup E] [PseudoMetricSpace E] (h₁ : ∀ (x : E), x = dist x 0) (h₂ : ∀ (x y z : E), dist (x + z) (y + z) dist x y) :

                                                              Construct a seminormed group from a translation-invariant pseudodistance.

                                                              Equations
                                                              Instances For
                                                                @[reducible, inline]
                                                                abbrev SeminormedCommGroup.ofMulDist {E : Type u_5} [Norm E] [CommGroup E] [PseudoMetricSpace E] (h₁ : ∀ (x : E), x = dist x 1) (h₂ : ∀ (x y z : E), dist x y dist (x * z) (y * z)) :

                                                                Construct a seminormed group from a multiplication-invariant pseudodistance.

                                                                Equations
                                                                • One or more equations did not get rendered due to their size.
                                                                Instances For
                                                                  @[reducible, inline]
                                                                  abbrev SeminormedAddCommGroup.ofAddDist {E : Type u_5} [Norm E] [AddCommGroup E] [PseudoMetricSpace E] (h₁ : ∀ (x : E), x = dist x 0) (h₂ : ∀ (x y z : E), dist x y dist (x + z) (y + z)) :

                                                                  Construct a seminormed group from a translation-invariant pseudodistance.

                                                                  Equations
                                                                  • One or more equations did not get rendered due to their size.
                                                                  Instances For
                                                                    @[reducible, inline]
                                                                    abbrev SeminormedCommGroup.ofMulDist' {E : Type u_5} [Norm E] [CommGroup E] [PseudoMetricSpace E] (h₁ : ∀ (x : E), x = dist x 1) (h₂ : ∀ (x y z : E), dist (x * z) (y * z) dist x y) :

                                                                    Construct a seminormed group from a multiplication-invariant pseudodistance.

                                                                    Equations
                                                                    • One or more equations did not get rendered due to their size.
                                                                    Instances For
                                                                      @[reducible, inline]
                                                                      abbrev SeminormedAddCommGroup.ofAddDist' {E : Type u_5} [Norm E] [AddCommGroup E] [PseudoMetricSpace E] (h₁ : ∀ (x : E), x = dist x 0) (h₂ : ∀ (x y z : E), dist (x + z) (y + z) dist x y) :

                                                                      Construct a seminormed group from a translation-invariant pseudodistance.

                                                                      Equations
                                                                      • One or more equations did not get rendered due to their size.
                                                                      Instances For
                                                                        @[reducible, inline]
                                                                        abbrev NormedGroup.ofMulDist {E : Type u_5} [Norm E] [Group E] [MetricSpace E] (h₁ : ∀ (x : E), x = dist x 1) (h₂ : ∀ (x y z : E), dist x y dist (x * z) (y * z)) :

                                                                        Construct a normed group from a multiplication-invariant distance.

                                                                        Equations
                                                                        • One or more equations did not get rendered due to their size.
                                                                        Instances For
                                                                          @[reducible, inline]
                                                                          abbrev NormedAddGroup.ofAddDist {E : Type u_5} [Norm E] [AddGroup E] [MetricSpace E] (h₁ : ∀ (x : E), x = dist x 0) (h₂ : ∀ (x y z : E), dist x y dist (x + z) (y + z)) :

                                                                          Construct a normed group from a translation-invariant distance.

                                                                          Equations
                                                                          • One or more equations did not get rendered due to their size.
                                                                          Instances For
                                                                            @[reducible, inline]
                                                                            abbrev NormedGroup.ofMulDist' {E : Type u_5} [Norm E] [Group E] [MetricSpace E] (h₁ : ∀ (x : E), x = dist x 1) (h₂ : ∀ (x y z : E), dist (x * z) (y * z) dist x y) :

                                                                            Construct a normed group from a multiplication-invariant pseudodistance.

                                                                            Equations
                                                                            • One or more equations did not get rendered due to their size.
                                                                            Instances For
                                                                              @[reducible, inline]
                                                                              abbrev NormedAddGroup.ofAddDist' {E : Type u_5} [Norm E] [AddGroup E] [MetricSpace E] (h₁ : ∀ (x : E), x = dist x 0) (h₂ : ∀ (x y z : E), dist (x + z) (y + z) dist x y) :

                                                                              Construct a normed group from a translation-invariant pseudodistance.

                                                                              Equations
                                                                              • One or more equations did not get rendered due to their size.
                                                                              Instances For
                                                                                @[reducible, inline]
                                                                                abbrev NormedCommGroup.ofMulDist {E : Type u_5} [Norm E] [CommGroup E] [MetricSpace E] (h₁ : ∀ (x : E), x = dist x 1) (h₂ : ∀ (x y z : E), dist x y dist (x * z) (y * z)) :

                                                                                Construct a normed group from a multiplication-invariant pseudodistance.

                                                                                Equations
                                                                                • One or more equations did not get rendered due to their size.
                                                                                Instances For
                                                                                  @[reducible, inline]
                                                                                  abbrev NormedAddCommGroup.ofAddDist {E : Type u_5} [Norm E] [AddCommGroup E] [MetricSpace E] (h₁ : ∀ (x : E), x = dist x 0) (h₂ : ∀ (x y z : E), dist x y dist (x + z) (y + z)) :

                                                                                  Construct a normed group from a translation-invariant pseudodistance.

                                                                                  Equations
                                                                                  • One or more equations did not get rendered due to their size.
                                                                                  Instances For
                                                                                    @[reducible, inline]
                                                                                    abbrev NormedCommGroup.ofMulDist' {E : Type u_5} [Norm E] [CommGroup E] [MetricSpace E] (h₁ : ∀ (x : E), x = dist x 1) (h₂ : ∀ (x y z : E), dist (x * z) (y * z) dist x y) :

                                                                                    Construct a normed group from a multiplication-invariant pseudodistance.

                                                                                    Equations
                                                                                    • One or more equations did not get rendered due to their size.
                                                                                    Instances For
                                                                                      @[reducible, inline]
                                                                                      abbrev NormedAddCommGroup.ofAddDist' {E : Type u_5} [Norm E] [AddCommGroup E] [MetricSpace E] (h₁ : ∀ (x : E), x = dist x 0) (h₂ : ∀ (x y z : E), dist (x + z) (y + z) dist x y) :

                                                                                      Construct a normed group from a translation-invariant pseudodistance.

                                                                                      Equations
                                                                                      • One or more equations did not get rendered due to their size.
                                                                                      Instances For
                                                                                        @[reducible, inline]

                                                                                        Construct a seminormed group from a seminorm, i.e., registering the pseudodistance and the pseudometric space structure from the seminorm properties. Note that in most cases this instance creates bad definitional equalities (e.g., it does not take into account a possibly existing UniformSpace instance on E).

                                                                                        Equations
                                                                                        • One or more equations did not get rendered due to their size.
                                                                                        Instances For
                                                                                          @[reducible, inline]

                                                                                          Construct a seminormed group from a seminorm, i.e., registering the pseudodistance and the pseudometric space structure from the seminorm properties. Note that in most cases this instance creates bad definitional equalities (e.g., it does not take into account a possibly existing UniformSpace instance on E).

                                                                                          Equations
                                                                                          • One or more equations did not get rendered due to their size.
                                                                                          Instances For
                                                                                            @[reducible, inline]

                                                                                            Construct a seminormed group from a seminorm, i.e., registering the pseudodistance and the pseudometric space structure from the seminorm properties. Note that in most cases this instance creates bad definitional equalities (e.g., it does not take into account a possibly existing UniformSpace instance on E).

                                                                                            Equations
                                                                                            • One or more equations did not get rendered due to their size.
                                                                                            Instances For
                                                                                              @[reducible, inline]

                                                                                              Construct a seminormed group from a seminorm, i.e., registering the pseudodistance and the pseudometric space structure from the seminorm properties. Note that in most cases this instance creates bad definitional equalities (e.g., it does not take into account a possibly existing UniformSpace instance on E).

                                                                                              Equations
                                                                                              • One or more equations did not get rendered due to their size.
                                                                                              Instances For
                                                                                                @[reducible, inline]
                                                                                                abbrev GroupNorm.toNormedGroup {E : Type u_5} [Group E] (f : GroupNorm E) :

                                                                                                Construct a normed group from a norm, i.e., registering the distance and the metric space structure from the norm properties. Note that in most cases this instance creates bad definitional equalities (e.g., it does not take into account a possibly existing UniformSpace instance on E).

                                                                                                Equations
                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                Instances For
                                                                                                  @[reducible, inline]

                                                                                                  Construct a normed group from a norm, i.e., registering the distance and the metric space structure from the norm properties. Note that in most cases this instance creates bad definitional equalities (e.g., it does not take into account a possibly existing UniformSpace instance on E).

                                                                                                  Equations
                                                                                                  • One or more equations did not get rendered due to their size.
                                                                                                  Instances For
                                                                                                    @[reducible, inline]

                                                                                                    Construct a normed group from a norm, i.e., registering the distance and the metric space structure from the norm properties. Note that in most cases this instance creates bad definitional equalities (e.g., it does not take into account a possibly existing UniformSpace instance on E).

                                                                                                    Equations
                                                                                                    Instances For
                                                                                                      @[reducible, inline]

                                                                                                      Construct a normed group from a norm, i.e., registering the distance and the metric space structure from the norm properties. Note that in most cases this instance creates bad definitional equalities (e.g., it does not take into account a possibly existing UniformSpace instance on E).

                                                                                                      Equations
                                                                                                      Instances For