Documentation

Mathlib.Analysis.Normed.Group.Constructions

Product of normed groups and other constructions #

This file constructs the infinity norm on finite products of normed groups and provides instances for type synonyms.

PUnit #

@[implicit_reducible]
@[simp]
theorem PUnit.norm_eq_zero (x : PUnit.{u_5 + 1}) :

ULift #

@[implicit_reducible]
instance ULift.norm {E : Type u_2} [Norm E] :
Norm (ULift.{u_5, u_2} E)
theorem ULift.norm_def {E : Type u_2} [Norm E] (x : ULift.{u_5, u_2} E) :
@[simp]
theorem ULift.norm_up {E : Type u_2} [Norm E] (x : E) :
@[simp]
theorem ULift.norm_down {E : Type u_2} [Norm E] (x : ULift.{u_5, u_2} E) :
@[implicit_reducible]
instance ULift.nnnorm {E : Type u_2} [NNNorm E] :
NNNorm (ULift.{u_5, u_2} E)
theorem ULift.nnnorm_def {E : Type u_2} [NNNorm E] (x : ULift.{u_5, u_2} E) :
@[simp]
theorem ULift.nnnorm_up {E : Type u_2} [NNNorm E] (x : E) :
@[simp]
theorem ULift.nnnorm_down {E : Type u_2} [NNNorm E] (x : ULift.{u_5, u_2} E) :
@[implicit_reducible]
instance ULift.seminormedGroup {E : Type u_2} [SeminormedGroup E] :
SeminormedGroup (ULift.{u_5, u_2} E)
@[implicit_reducible]
instance ULift.seminormedAddGroup {E : Type u_2} [SeminormedAddGroup E] :
SeminormedAddGroup (ULift.{u_5, u_2} E)
@[implicit_reducible]
instance ULift.seminormedCommGroup {E : Type u_2} [SeminormedCommGroup E] :
SeminormedCommGroup (ULift.{u_5, u_2} E)
@[implicit_reducible]
@[implicit_reducible]
instance ULift.normedGroup {E : Type u_2} [NormedGroup E] :
NormedGroup (ULift.{u_5, u_2} E)
@[implicit_reducible]
instance ULift.normedAddGroup {E : Type u_2} [NormedAddGroup E] :
NormedAddGroup (ULift.{u_5, u_2} E)
@[implicit_reducible]
instance ULift.normedCommGroup {E : Type u_2} [NormedCommGroup E] :
NormedCommGroup (ULift.{u_5, u_2} E)
@[implicit_reducible]
instance ULift.normedAddCommGroup {E : Type u_2} [NormedAddCommGroup E] :
NormedAddCommGroup (ULift.{u_5, u_2} E)

Additive, Multiplicative #

@[implicit_reducible]
instance Additive.toNorm {E : Type u_2} [Norm E] :
@[implicit_reducible]
instance Multiplicative.toNorm {E : Type u_2} [Norm E] :
@[implicit_reducible]
instance Additive.toNNNorm {E : Type u_2} [NNNorm E] :
@[implicit_reducible]

Order dual #

@[implicit_reducible]
@[implicit_reducible]
@[implicit_reducible, instance 100]
@[implicit_reducible, instance 100]
@[implicit_reducible, instance 100]
@[implicit_reducible, instance 100]

Binary product of normed groups #

@[implicit_reducible]
instance Prod.toNorm {E : Type u_2} {F : Type u_3} [Norm E] [Norm F] :
Norm (E ร— F)
theorem Prod.norm_def {E : Type u_2} {F : Type u_3} [Norm E] [Norm F] (x : E ร— F) :
@[simp]
theorem Prod.norm_mk {E : Type u_2} {F : Type u_3} [Norm E] [Norm F] (x : E) (y : F) :
theorem norm_fst_le {E : Type u_2} {F : Type u_3} [Norm E] [Norm F] (x : E ร— F) :
theorem norm_snd_le {E : Type u_2} {F : Type u_3} [Norm E] [Norm F] (x : E ร— F) :
theorem norm_prod_le_iff {E : Type u_2} {F : Type u_3} [Norm E] [Norm F] {x : E ร— F} {r : โ„} :
@[implicit_reducible]
instance Prod.seminormedGroup {E : Type u_2} {F : Type u_3} [SeminormedGroup E] [SeminormedGroup F] :
SeminormedGroup (E ร— F)

Product of seminormed groups, using the sup norm.

@[implicit_reducible]

Product of seminormed groups, using the sup norm.

Multiplicative version of Prod.nnnorm_def. Earlier, this name was used for the additive version.

@[simp]

Multiplicative version of Prod.nnnorm_mk.

@[implicit_reducible]

Product of seminormed groups, using the sup norm.

@[implicit_reducible]

Product of seminormed groups, using the sup norm.

@[implicit_reducible]
instance Prod.normedGroup {E : Type u_2} {F : Type u_3} [NormedGroup E] [NormedGroup F] :
NormedGroup (E ร— F)

Product of normed groups, using the sup norm.

@[implicit_reducible]
instance Prod.normedAddGroup {E : Type u_2} {F : Type u_3} [NormedAddGroup E] [NormedAddGroup F] :
NormedAddGroup (E ร— F)

Product of normed groups, using the sup norm.

@[implicit_reducible]
instance Prod.normedCommGroup {E : Type u_2} {F : Type u_3} [NormedCommGroup E] [NormedCommGroup F] :
NormedCommGroup (E ร— F)

Product of normed groups, using the sup norm.

@[implicit_reducible]

Product of normed groups, using the sup norm.

Finite product of normed groups #

@[implicit_reducible]
instance Pi.seminormedGroup {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedGroup (G i)] :
SeminormedGroup ((i : ฮน) โ†’ G i)

Finite product of seminormed groups, using the sup norm.

@[implicit_reducible]
instance Pi.seminormedAddGroup {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedAddGroup (G i)] :
SeminormedAddGroup ((i : ฮน) โ†’ G i)

Finite product of seminormed groups, using the sup norm.

theorem Pi.norm_def' {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedGroup (G i)] (f : (i : ฮน) โ†’ G i) :
โ€–fโ€– = โ†‘(Finset.univ.sup fun (b : ฮน) => โ€–f bโ€–โ‚Š)
theorem Pi.norm_def {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedAddGroup (G i)] (f : (i : ฮน) โ†’ G i) :
โ€–fโ€– = โ†‘(Finset.univ.sup fun (b : ฮน) => โ€–f bโ€–โ‚Š)
theorem Pi.nnnorm_def' {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedGroup (G i)] (f : (i : ฮน) โ†’ G i) :
theorem Pi.nnnorm_def {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedAddGroup (G i)] (f : (i : ฮน) โ†’ G i) :
theorem pi_norm_le_iff_of_nonneg' {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedGroup (G i)] {x : (i : ฮน) โ†’ G i} {r : โ„} (hr : 0 โ‰ค r) :
โ€–xโ€– โ‰ค r โ†” โˆ€ (i : ฮน), โ€–x iโ€– โ‰ค r

The seminorm of an element in a product space is โ‰ค r if and only if the norm of each component is.

theorem pi_norm_le_iff_of_nonneg {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedAddGroup (G i)] {x : (i : ฮน) โ†’ G i} {r : โ„} (hr : 0 โ‰ค r) :
โ€–xโ€– โ‰ค r โ†” โˆ€ (i : ฮน), โ€–x iโ€– โ‰ค r

The seminorm of an element in a product space is โ‰ค r if and only if the norm of each component is.

theorem pi_nnnorm_le_iff' {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedGroup (G i)] {x : (i : ฮน) โ†’ G i} {r : NNReal} :
โ€–xโ€–โ‚Š โ‰ค r โ†” โˆ€ (i : ฮน), โ€–x iโ€–โ‚Š โ‰ค r
theorem pi_nnnorm_le_iff {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedAddGroup (G i)] {x : (i : ฮน) โ†’ G i} {r : NNReal} :
โ€–xโ€–โ‚Š โ‰ค r โ†” โˆ€ (i : ฮน), โ€–x iโ€–โ‚Š โ‰ค r
theorem pi_norm_le_iff_of_nonempty' {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedGroup (G i)] (f : (i : ฮน) โ†’ G i) {r : โ„} [Nonempty ฮน] :
โ€–fโ€– โ‰ค r โ†” โˆ€ (b : ฮน), โ€–f bโ€– โ‰ค r
theorem pi_norm_le_iff_of_nonempty {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedAddGroup (G i)] (f : (i : ฮน) โ†’ G i) {r : โ„} [Nonempty ฮน] :
โ€–fโ€– โ‰ค r โ†” โˆ€ (b : ฮน), โ€–f bโ€– โ‰ค r
theorem pi_norm_lt_iff' {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedGroup (G i)] {x : (i : ฮน) โ†’ G i} {r : โ„} (hr : 0 < r) :
โ€–xโ€– < r โ†” โˆ€ (i : ฮน), โ€–x iโ€– < r

The seminorm of an element in a product space is < r if and only if the norm of each component is.

theorem pi_norm_lt_iff {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedAddGroup (G i)] {x : (i : ฮน) โ†’ G i} {r : โ„} (hr : 0 < r) :
โ€–xโ€– < r โ†” โˆ€ (i : ฮน), โ€–x iโ€– < r

The seminorm of an element in a product space is < r if and only if the norm of each component is.

theorem pi_nnnorm_lt_iff' {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedGroup (G i)] {x : (i : ฮน) โ†’ G i} {r : NNReal} (hr : 0 < r) :
โ€–xโ€–โ‚Š < r โ†” โˆ€ (i : ฮน), โ€–x iโ€–โ‚Š < r
theorem pi_nnnorm_lt_iff {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedAddGroup (G i)] {x : (i : ฮน) โ†’ G i} {r : NNReal} (hr : 0 < r) :
โ€–xโ€–โ‚Š < r โ†” โˆ€ (i : ฮน), โ€–x iโ€–โ‚Š < r
theorem norm_le_pi_norm' {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedGroup (G i)] (f : (i : ฮน) โ†’ G i) (i : ฮน) :
theorem norm_le_pi_norm {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedAddGroup (G i)] (f : (i : ฮน) โ†’ G i) (i : ฮน) :
theorem nnnorm_le_pi_nnnorm' {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedGroup (G i)] (f : (i : ฮน) โ†’ G i) (i : ฮน) :
theorem nnnorm_le_pi_nnnorm {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedAddGroup (G i)] (f : (i : ฮน) โ†’ G i) (i : ฮน) :
theorem pi_norm_const_le' {ฮน : Type u_1} {E : Type u_2} [Fintype ฮน] [SeminormedGroup E] (a : E) :
โ€–fun (x : ฮน) => aโ€– โ‰ค โ€–aโ€–
theorem pi_norm_const_le {ฮน : Type u_1} {E : Type u_2} [Fintype ฮน] [SeminormedAddGroup E] (a : E) :
โ€–fun (x : ฮน) => aโ€– โ‰ค โ€–aโ€–
theorem pi_nnnorm_const_le' {ฮน : Type u_1} {E : Type u_2} [Fintype ฮน] [SeminormedGroup E] (a : E) :
theorem pi_nnnorm_const_le {ฮน : Type u_1} {E : Type u_2} [Fintype ฮน] [SeminormedAddGroup E] (a : E) :
@[simp]
theorem pi_norm_const' {ฮน : Type u_1} {E : Type u_2} [Fintype ฮน] [SeminormedGroup E] [Nonempty ฮน] (a : E) :
โ€–fun (_i : ฮน) => aโ€– = โ€–aโ€–
@[simp]
theorem pi_norm_const {ฮน : Type u_1} {E : Type u_2} [Fintype ฮน] [SeminormedAddGroup E] [Nonempty ฮน] (a : E) :
โ€–fun (_i : ฮน) => aโ€– = โ€–aโ€–
@[simp]
theorem pi_nnnorm_const' {ฮน : Type u_1} {E : Type u_2} [Fintype ฮน] [SeminormedGroup E] [Nonempty ฮน] (a : E) :
@[simp]
theorem pi_nnnorm_const {ฮน : Type u_1} {E : Type u_2} [Fintype ฮน] [SeminormedAddGroup E] [Nonempty ฮน] (a : E) :
theorem Pi.sum_norm_apply_le_norm' {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedGroup (G i)] (f : (i : ฮน) โ†’ G i) :
โˆ‘ i : ฮน, โ€–f iโ€– โ‰ค Fintype.card ฮน โ€ข โ€–fโ€–

The $L^1$ norm is less than the $L^\infty$ norm scaled by the cardinality.

theorem Pi.sum_norm_apply_le_norm {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedAddGroup (G i)] (f : (i : ฮน) โ†’ G i) :
โˆ‘ i : ฮน, โ€–f iโ€– โ‰ค Fintype.card ฮน โ€ข โ€–fโ€–

The $L^1$ norm is less than the $L^\infty$ norm scaled by the cardinality.

theorem Pi.sum_nnnorm_apply_le_nnnorm' {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedGroup (G i)] (f : (i : ฮน) โ†’ G i) :
โˆ‘ i : ฮน, โ€–f iโ€–โ‚Š โ‰ค Fintype.card ฮน โ€ข โ€–fโ€–โ‚Š

The $L^1$ norm is less than the $L^\infty$ norm scaled by the cardinality.

theorem Pi.sum_nnnorm_apply_le_nnnorm {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedAddGroup (G i)] (f : (i : ฮน) โ†’ G i) :
โˆ‘ i : ฮน, โ€–f iโ€–โ‚Š โ‰ค Fintype.card ฮน โ€ข โ€–fโ€–โ‚Š

The $L^1$ norm is less than the $L^\infty$ norm scaled by the cardinality.

@[implicit_reducible]
instance Pi.seminormedCommGroup {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedCommGroup (G i)] :
SeminormedCommGroup ((i : ฮน) โ†’ G i)

Finite product of seminormed groups, using the sup norm.

@[implicit_reducible]
instance Pi.seminormedAddCommGroup {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ SeminormedAddCommGroup (G i)] :
SeminormedAddCommGroup ((i : ฮน) โ†’ G i)

Finite product of seminormed groups, using the sup norm.

@[implicit_reducible]
instance Pi.normedGroup {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ NormedGroup (G i)] :
NormedGroup ((i : ฮน) โ†’ G i)

Finite product of normed groups, using the sup norm.

@[implicit_reducible]
instance Pi.normedAddGroup {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ NormedAddGroup (G i)] :
NormedAddGroup ((i : ฮน) โ†’ G i)

Finite product of seminormed groups, using the sup norm.

@[implicit_reducible]
instance Pi.normedCommGroup {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ NormedCommGroup (G i)] :
NormedCommGroup ((i : ฮน) โ†’ G i)

Finite product of normed groups, using the sup norm.

@[implicit_reducible]
instance Pi.normedAddCommGroup {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [(i : ฮน) โ†’ NormedAddCommGroup (G i)] :
NormedAddCommGroup ((i : ฮน) โ†’ G i)

Finite product of seminormed groups, using the sup norm.

theorem Pi.nnnorm_single {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [DecidableEq ฮน] [(i : ฮน) โ†’ NormedAddCommGroup (G i)] {i : ฮน} (y : G i) :
theorem Pi.enorm_single {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [DecidableEq ฮน] [(i : ฮน) โ†’ NormedAddCommGroup (G i)] {i : ฮน} (y : G i) :
theorem Pi.norm_single {ฮน : Type u_1} {G : ฮน โ†’ Type u_4} [Fintype ฮน] [DecidableEq ฮน] [(i : ฮน) โ†’ NormedAddCommGroup (G i)] {i : ฮน} (y : G i) :

Multiplicative opposite #

@[implicit_reducible]

The (additive) norm on the multiplicative opposite is the same as the norm on the original type.

Note that we do not provide this more generally as Norm Eแตแต’แต–, as this is not always a good choice of norm in the multiplicative SeminormedGroup E case.

We could repeat this instance to provide a [SeminormedGroup E] : SeminormedGroup Eแตƒแต’แต– instance, but that case would likely never be used.