Documentation

Mathlib.Analysis.Normed.Group.Ultra

Ultrametric norms #

This file contains results on the behavior of norms in ultrametric groups.

Main results #

Implementation details #

Some results are proved first about nnnorm : X β†’ ℝβ‰₯0 because the bottom element in NNReal is 0, so easier to make statements about maxima of empty sets.

Tags #

ultrametric, nonarchimedean

All triangles are isosceles in an ultrametric normed group.

All triangles are isosceles in an ultrametric normed additive group.

All triangles are isosceles in an ultrametric normed group.

All triangles are isosceles in an ultrametric normed additive group.

In a group with an ultrametric norm, open balls around 1 of positive radius are open subgroups.

Equations
    Instances For

      In an additive group with an ultrametric norm, open balls around 0 of positive radius are open subgroups.

      Equations
        Instances For

          In a group with an ultrametric norm, closed balls around 1 of positive radius are open subgroups.

          Equations
            Instances For

              In an additive group with an ultrametric norm, closed balls around 0 of positive radius are open subgroups.

              Equations
                Instances For

                  A commutative group with an ultrametric group seminorm is nonarchimedean (as a topological group, i.e. every neighborhood of 1 contains an open subgroup).

                  A commutative additive group with an ultrametric group seminorm is nonarchimedean (as a topological group, i.e. every neighborhood of 0 contains an open subgroup).

                  theorem Finset.Nonempty.norm_prod_le_sup'_norm {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] {s : Finset ΞΉ} (hs : s.Nonempty) (f : ΞΉ β†’ M) :
                  β€–βˆ i ∈ s, f iβ€– ≀ s.sup' hs fun (x : ΞΉ) => β€–f xβ€–

                  Nonarchimedean norm of a product is less than or equal the norm of any term in the product. This version is phrased using Finset.sup' and Finset.Nonempty due to Finset.sup operating over an OrderBot, which ℝ is not.

                  theorem Finset.Nonempty.norm_sum_le_sup'_norm {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] {s : Finset ΞΉ} (hs : s.Nonempty) (f : ΞΉ β†’ M) :
                  β€–βˆ‘ i ∈ s, f iβ€– ≀ s.sup' hs fun (x : ΞΉ) => β€–f xβ€–

                  Nonarchimedean norm of a sum is less than or equal the norm of any term in the sum. This version is phrased using Finset.sup' and Finset.Nonempty due to Finset.sup operating over an OrderBot, which ℝ is not.

                  theorem Finset.nnnorm_prod_le_sup_nnnorm {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] (s : Finset ΞΉ) (f : ΞΉ β†’ M) :
                  β€–βˆ i ∈ s, f iβ€–β‚Š ≀ s.sup fun (x : ΞΉ) => β€–f xβ€–β‚Š

                  Nonarchimedean norm of a product is less than or equal to the largest norm of a term in the product.

                  theorem Finset.nnnorm_sum_le_sup_nnnorm {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] (s : Finset ΞΉ) (f : ΞΉ β†’ M) :
                  β€–βˆ‘ i ∈ s, f iβ€–β‚Š ≀ s.sup fun (x : ΞΉ) => β€–f xβ€–β‚Š

                  Nonarchimedean norm of a sum is less than or equal to the largest norm of a term in the sum.

                  theorem IsUltrametricDist.nnnorm_prod_le_of_forall_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] {s : Finset ΞΉ} {f : ΞΉ β†’ M} {C : NNReal} (hC : βˆ€ i ∈ s, β€–f iβ€–β‚Š ≀ C) :
                  β€–βˆ i ∈ s, f iβ€–β‚Š ≀ C

                  Generalised ultrametric triangle inequality for finite products in commutative groups with an ultrametric norm.

                  theorem IsUltrametricDist.nnnorm_sum_le_of_forall_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] {s : Finset ΞΉ} {f : ΞΉ β†’ M} {C : NNReal} (hC : βˆ€ i ∈ s, β€–f iβ€–β‚Š ≀ C) :
                  β€–βˆ‘ i ∈ s, f iβ€–β‚Š ≀ C

                  Generalised ultrametric triangle inequality for finite sums in additive commutative groups with an ultrametric norm.

                  theorem IsUltrametricDist.norm_prod_le_of_forall_le_of_nonempty {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] {s : Finset ΞΉ} (hs : s.Nonempty) {f : ΞΉ β†’ M} {C : ℝ} (hC : βˆ€ i ∈ s, β€–f iβ€– ≀ C) :
                  β€–βˆ i ∈ s, f iβ€– ≀ C

                  Generalised ultrametric triangle inequality for nonempty finite products in commutative groups with an ultrametric norm.

                  theorem IsUltrametricDist.norm_sum_le_of_forall_le_of_nonempty {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] {s : Finset ΞΉ} (hs : s.Nonempty) {f : ΞΉ β†’ M} {C : ℝ} (hC : βˆ€ i ∈ s, β€–f iβ€– ≀ C) :
                  β€–βˆ‘ i ∈ s, f iβ€– ≀ C

                  Generalised ultrametric triangle inequality for nonempty finite sums in additive commutative groups with an ultrametric norm.

                  theorem IsUltrametricDist.norm_prod_le_of_forall_le_of_nonneg {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] {s : Finset ΞΉ} {f : ΞΉ β†’ M} {C : ℝ} (h_nonneg : 0 ≀ C) (hC : βˆ€ i ∈ s, β€–f iβ€– ≀ C) :
                  β€–βˆ i ∈ s, f iβ€– ≀ C

                  Generalised ultrametric triangle inequality for finite products in commutative groups with an ultrametric norm.

                  theorem IsUltrametricDist.norm_sum_le_of_forall_le_of_nonneg {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] {s : Finset ΞΉ} {f : ΞΉ β†’ M} {C : ℝ} (h_nonneg : 0 ≀ C) (hC : βˆ€ i ∈ s, β€–f iβ€– ≀ C) :
                  β€–βˆ‘ i ∈ s, f iβ€– ≀ C

                  Generalised ultrametric triangle inequality for finite sums in additive commutative groups with an ultrametric norm.

                  theorem IsUltrametricDist.exists_norm_finset_prod_le_of_nonempty {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] {t : Finset ΞΉ} (ht : t.Nonempty) (f : ΞΉ β†’ M) :
                  βˆƒ i ∈ t, β€–βˆ j ∈ t, f jβ€– ≀ β€–f iβ€–

                  Given a function f : ΞΉ β†’ M and a nonempty finite set t βŠ† ΞΉ, we can always find i ∈ t such that β€–βˆ j in t, f jβ€– ≀ β€–f iβ€–.

                  theorem IsUltrametricDist.exists_norm_finset_sum_le_of_nonempty {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] {t : Finset ΞΉ} (ht : t.Nonempty) (f : ΞΉ β†’ M) :
                  βˆƒ i ∈ t, β€–βˆ‘ j ∈ t, f jβ€– ≀ β€–f iβ€–

                  Given a function f : ΞΉ β†’ M and a nonempty finite set t βŠ† ΞΉ, we can always find i ∈ t such that β€–βˆ‘ j ∈ t, f jβ€– ≀ β€–f iβ€–.

                  theorem IsUltrametricDist.exists_norm_finset_prod_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] (t : Finset ΞΉ) [Nonempty ΞΉ] (f : ΞΉ β†’ M) :
                  βˆƒ (i : ΞΉ), (t.Nonempty β†’ i ∈ t) ∧ β€–βˆ j ∈ t, f jβ€– ≀ β€–f iβ€–

                  Given a function f : ΞΉ β†’ M and a finite set t βŠ† ΞΉ, we can always find i : ΞΉ, belonging to t if t is nonempty, such that β€–βˆ j ∈ t, f jβ€– ≀ β€–f iβ€–.

                  theorem IsUltrametricDist.exists_norm_finset_sum_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] (t : Finset ΞΉ) [Nonempty ΞΉ] (f : ΞΉ β†’ M) :
                  βˆƒ (i : ΞΉ), (t.Nonempty β†’ i ∈ t) ∧ β€–βˆ‘ j ∈ t, f jβ€– ≀ β€–f iβ€–

                  Given a function f : ΞΉ β†’ M and a finite set t βŠ† ΞΉ, we can always find i : ΞΉ, belonging to t if t is nonempty, such that β€–βˆ‘ j ∈ t, f jβ€– ≀ β€–f iβ€–.

                  theorem IsUltrametricDist.exists_norm_multiset_prod_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] (s : Multiset ΞΉ) [Nonempty ΞΉ] {f : ΞΉ β†’ M} :
                  βˆƒ (i : ΞΉ), (s β‰  0 β†’ i ∈ s) ∧ β€–(Multiset.map f s).prodβ€– ≀ β€–f iβ€–

                  Given a function f : ΞΉ β†’ M and a multiset t : Multiset ΞΉ, we can always find i : ΞΉ, belonging to t if t is nonempty, such that β€–(s.map f).prodβ€– ≀ β€–f iβ€–.

                  theorem IsUltrametricDist.exists_norm_multiset_sum_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] (s : Multiset ΞΉ) [Nonempty ΞΉ] {f : ΞΉ β†’ M} :
                  βˆƒ (i : ΞΉ), (s β‰  0 β†’ i ∈ s) ∧ β€–(Multiset.map f s).sumβ€– ≀ β€–f iβ€–

                  Given a function f : ΞΉ β†’ M and a multiset t : Multiset ΞΉ, we can always find i : ΞΉ, belonging to t if t is nonempty, such that β€–(s.map f).sumβ€– ≀ β€–f iβ€–.

                  theorem IsUltrametricDist.norm_tprod_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] (f : ΞΉ β†’ M) :
                  β€–βˆ' (i : ΞΉ), f iβ€– ≀ ⨆ (i : ΞΉ), β€–f iβ€–
                  theorem IsUltrametricDist.norm_tsum_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] (f : ΞΉ β†’ M) :
                  β€–βˆ‘' (i : ΞΉ), f iβ€– ≀ ⨆ (i : ΞΉ), β€–f iβ€–
                  theorem IsUltrametricDist.nnnorm_tprod_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] (f : ΞΉ β†’ M) :
                  β€–βˆ' (i : ΞΉ), f iβ€–β‚Š ≀ ⨆ (i : ΞΉ), β€–f iβ€–β‚Š
                  theorem IsUltrametricDist.nnnorm_tsum_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] (f : ΞΉ β†’ M) :
                  β€–βˆ‘' (i : ΞΉ), f iβ€–β‚Š ≀ ⨆ (i : ΞΉ), β€–f iβ€–β‚Š
                  theorem IsUltrametricDist.norm_tprod_le_of_forall_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] [Nonempty ΞΉ] {f : ΞΉ β†’ M} {C : ℝ} (h : βˆ€ (i : ΞΉ), β€–f iβ€– ≀ C) :
                  β€–βˆ' (i : ΞΉ), f iβ€– ≀ C
                  theorem IsUltrametricDist.norm_tsum_le_of_forall_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] [Nonempty ΞΉ] {f : ΞΉ β†’ M} {C : ℝ} (h : βˆ€ (i : ΞΉ), β€–f iβ€– ≀ C) :
                  β€–βˆ‘' (i : ΞΉ), f iβ€– ≀ C
                  theorem IsUltrametricDist.norm_tprod_le_of_forall_le_of_nonneg {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] {f : ΞΉ β†’ M} {C : ℝ} (hC : 0 ≀ C) (h : βˆ€ (i : ΞΉ), β€–f iβ€– ≀ C) :
                  β€–βˆ' (i : ΞΉ), f iβ€– ≀ C
                  theorem IsUltrametricDist.norm_tsum_le_of_forall_le_of_nonneg {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] {f : ΞΉ β†’ M} {C : ℝ} (hC : 0 ≀ C) (h : βˆ€ (i : ΞΉ), β€–f iβ€– ≀ C) :
                  β€–βˆ‘' (i : ΞΉ), f iβ€– ≀ C
                  theorem IsUltrametricDist.nnnorm_tprod_le_of_forall_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] {f : ΞΉ β†’ M} {C : NNReal} (h : βˆ€ (i : ΞΉ), β€–f iβ€–β‚Š ≀ C) :
                  theorem IsUltrametricDist.nnnorm_tsum_le_of_forall_le {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] {f : ΞΉ β†’ M} {C : NNReal} (h : βˆ€ (i : ΞΉ), β€–f iβ€–β‚Š ≀ C) :
                  theorem IsUltrametricDist.nnnorm_prod_eq_sup_of_pairwise_ne {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] {s : Finset ΞΉ} {f : ΞΉ β†’ M} (hs : (↑s).Pairwise fun (i j : ΞΉ) => β€–f iβ€–β‚Š β‰  β€–f jβ€–β‚Š) :
                  β€–βˆ i ∈ s, f iβ€–β‚Š = s.sup fun (i : ΞΉ) => β€–f iβ€–β‚Š
                  theorem IsUltrametricDist.nnnorm_sum_eq_sup_of_pairwise_ne {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] {s : Finset ΞΉ} {f : ΞΉ β†’ M} (hs : (↑s).Pairwise fun (i j : ΞΉ) => β€–f iβ€–β‚Š β‰  β€–f jβ€–β‚Š) :
                  β€–βˆ‘ i ∈ s, f iβ€–β‚Š = s.sup fun (i : ΞΉ) => β€–f iβ€–β‚Š
                  theorem IsUltrametricDist.norm_prod_eq_sup'_of_pairwise_ne {M : Type u_1} {ΞΉ : Type u_2} [SeminormedCommGroup M] [IsUltrametricDist M] {s : Finset ΞΉ} {f : ΞΉ β†’ M} (hs' : s.Nonempty) (hs : (↑s).Pairwise fun (i j : ΞΉ) => β€–f iβ€– β‰  β€–f jβ€–) :
                  β€–βˆ i ∈ s, f iβ€– = s.sup' hs' fun (i : ΞΉ) => β€–f iβ€–
                  theorem IsUltrametricDist.norm_sum_eq_sup'_of_pairwise_ne {M : Type u_1} {ΞΉ : Type u_2} [SeminormedAddCommGroup M] [IsUltrametricDist M] {s : Finset ΞΉ} {f : ΞΉ β†’ M} (hs' : s.Nonempty) (hs : (↑s).Pairwise fun (i j : ΞΉ) => β€–f iβ€– β‰  β€–f jβ€–) :
                  β€–βˆ‘ i ∈ s, f iβ€– = s.sup' hs' fun (i : ΞΉ) => β€–f iβ€–