Group seminorms #
This file defines norms and seminorms in a group. A group seminorm is a function to the reals which is positive-semidefinite and subadditive. A norm further only maps zero to zero.
Main declarations #
AddGroupSeminorm
: A functionf
from an additive groupG
to the reals that preserves zero, takes nonnegative values, is subadditive and such thatf (-x) = f x
for allx
.NonarchAddGroupSeminorm
: A functionf
from an additive groupG
to the reals that preserves zero, takes nonnegative values, is nonarchimedean and such thatf (-x) = f x
for allx
.GroupSeminorm
: A functionf
from a groupG
to the reals that sends one to zero, takes nonnegative values, is submultiplicative and such thatf x⁻¹ = f x
for allx
.AddGroupNorm
: A seminormf
such thatf x = 0 → x = 0
for allx
.NonarchAddGroupNorm
: A nonarchimedean seminormf
such thatf x = 0 → x = 0
for allx
.GroupNorm
: A seminormf
such thatf x = 0 → x = 1
for allx
.
Notes #
The corresponding hom classes are defined in Analysis.Order.Hom.Basic
to be used by absolute
values.
We do not define NonarchAddGroupSeminorm
as an extension of AddGroupSeminorm
to avoid
having a superfluous add_le'
field in the resulting structure. The same applies to
NonarchAddGroupNorm
.
References #
- [H. H. Schaefer, Topological Vector Spaces][schaefer1966]
Tags #
norm, seminorm
A seminorm on an additive group G
is a function f : G → ℝ
that preserves zero, is
subadditive and such that f (-x) = f x
for all x
.
- toFun : G → ℝ
The bare function of an
AddGroupSeminorm
. - map_zero' : self.toFun 0 = 0
The image of zero is zero.
The seminorm is subadditive.
The seminorm is invariant under negation.
Instances For
A seminorm on a group G
is a function f : G → ℝ
that sends one to zero, is submultiplicative
and such that f x⁻¹ = f x
for all x
.
- toFun : G → ℝ
The bare function of a
GroupSeminorm
. - map_one' : self.toFun 1 = 0
The image of one is zero.
The seminorm applied to a product is dominated by the sum of the seminorm applied to the factors.
The seminorm is invariant under inversion.
Instances For
A nonarchimedean seminorm on an additive group G
is a function f : G → ℝ
that preserves
zero, is nonarchimedean and such that f (-x) = f x
for all x
.
- toFun : G → ℝ
- map_zero' : self.toZeroHom.toFun 0 = 0
- add_le_max' : ∀ (r s : G), self.toZeroHom.toFun (r + s) ≤ max (self.toZeroHom.toFun r) (self.toZeroHom.toFun s)
The seminorm applied to a sum is dominated by the maximum of the function applied to the addends.
The seminorm is invariant under negation.
Instances For
NOTE: We do not define NonarchAddGroupSeminorm
as an extension of AddGroupSeminorm
to avoid having a superfluous add_le'
field in the resulting structure. The same applies to
NonarchAddGroupNorm
below.
NonarchAddGroupSeminormClass F α
states that F
is a type of nonarchimedean seminorms on
the additive group α
.
You should extend this class when you extend NonarchAddGroupSeminorm
.
- map_zero : ∀ (f : F), f 0 = 0
The image of zero is zero.
The seminorm is invariant under negation.
Instances
NonarchAddGroupNormClass F α
states that F
is a type of nonarchimedean norms on the
additive group α
.
You should extend this class when you extend NonarchAddGroupNorm
.
- map_zero : ∀ (f : F), f 0 = 0
If the image under the norm is zero, then the argument is zero.
Instances
Equations
- (_ : AddGroupSeminormClass F E ℝ) = (_ : AddGroupSeminormClass F E ℝ)
Equations
- (_ : AddGroupNormClass F E ℝ) = (_ : AddGroupNormClass F E ℝ)
Seminorms #
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : AddGroupSeminormClass (AddGroupSeminorm E) E ℝ) = (_ : AddGroupSeminormClass (AddGroupSeminorm E) E ℝ)
Equations
- (_ : GroupSeminormClass (GroupSeminorm E) E ℝ) = (_ : GroupSeminormClass (GroupSeminorm E) E ℝ)
Helper instance for when there's too many metavariables to apply
DFunLike.hasCoeToFun
.
Equations
- AddGroupSeminorm.instCoeFunAddGroupSeminormForAllReal = { coe := DFunLike.coe }
Helper instance for when there's too many metavariables to apply DFunLike.hasCoeToFun
.
Equations
- GroupSeminorm.instCoeFunGroupSeminormForAllReal = { coe := DFunLike.coe }
Equations
- AddGroupSeminorm.instPartialOrderAddGroupSeminorm = PartialOrder.lift (fun (f : AddGroupSeminorm E) => ⇑f) (_ : Function.Injective fun (f : AddGroupSeminorm E) => ⇑f)
Equations
- GroupSeminorm.instPartialOrderGroupSeminorm = PartialOrder.lift (fun (f : GroupSeminorm E) => ⇑f) (_ : Function.Injective fun (f : GroupSeminorm E) => ⇑f)
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- AddGroupSeminorm.instInhabitedAddGroupSeminorm = { default := 0 }
Equations
- GroupSeminorm.instInhabitedGroupSeminorm = { default := 0 }
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Composition of an additive group seminorm with an additive monoid homomorphism as an additive group seminorm.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Composition of a group seminorm with a monoid homomorphism as a group seminorm.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Any action on ℝ
which factors through ℝ≥0
applies to an AddGroupSeminorm
.
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : IsScalarTower R R' (AddGroupSeminorm E)) = (_ : IsScalarTower R R' (AddGroupSeminorm E))
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : NonarchAddGroupSeminormClass (NonarchAddGroupSeminorm E) E) = (_ : NonarchAddGroupSeminormClass (NonarchAddGroupSeminorm E) E)
Helper instance for when there's too many metavariables to apply DFunLike.hasCoeToFun
.
Equations
- NonarchAddGroupSeminorm.instCoeFunNonarchAddGroupSeminormForAllReal = { coe := DFunLike.coe }
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- NonarchAddGroupSeminorm.instInhabitedNonarchAddGroupSeminorm = { default := 0 }
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Any action on ℝ
which factors through ℝ≥0
applies to an AddGroupSeminorm
.
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : IsScalarTower R R' (GroupSeminorm E)) = (_ : IsScalarTower R R' (GroupSeminorm E))
Equations
- One or more equations did not get rendered due to their size.
Any action on ℝ
which factors through ℝ≥0
applies to a NonarchAddGroupSeminorm
.
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : IsScalarTower R R' (NonarchAddGroupSeminorm E)) = (_ : IsScalarTower R R' (NonarchAddGroupSeminorm E))
Norms #
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : AddGroupNormClass (AddGroupNorm E) E ℝ) = (_ : AddGroupNormClass (AddGroupNorm E) E ℝ)
Equations
- (_ : GroupNormClass (GroupNorm E) E ℝ) = (_ : GroupNormClass (GroupNorm E) E ℝ)
Helper instance for when there's too many metavariables to apply
DFunLike.hasCoeToFun
directly.
Equations
- AddGroupNorm.instCoeFunAddGroupNormForAllReal = DFunLike.hasCoeToFun
Helper instance for when there's too many metavariables to apply DFunLike.hasCoeToFun
directly.
Equations
- GroupNorm.instCoeFunGroupNormForAllReal = DFunLike.hasCoeToFun
Equations
- AddGroupNorm.instPartialOrderAddGroupNorm = PartialOrder.lift (fun (f : AddGroupNorm E) => ⇑f) (_ : Function.Injective fun (f : AddGroupNorm E) => ⇑f)
Equations
- GroupNorm.instPartialOrderGroupNorm = PartialOrder.lift (fun (f : GroupNorm E) => ⇑f) (_ : Function.Injective fun (f : GroupNorm E) => ⇑f)
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- AddGroupNorm.instInhabitedAddGroupNorm = { default := 1 }
Equations
- GroupNorm.instInhabitedGroupNorm = { default := 1 }
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : NonarchAddGroupNormClass (NonarchAddGroupNorm E) E) = (_ : NonarchAddGroupNormClass (NonarchAddGroupNorm E) E)
Helper instance for when there's too many metavariables to apply DFunLike.hasCoeToFun
.
Equations
- NonarchAddGroupNorm.instCoeFunNonarchAddGroupNormForAllReal = DFunLike.hasCoeToFun
Equations
- NonarchAddGroupNorm.instPartialOrderNonarchAddGroupNorm = PartialOrder.lift (fun (f : NonarchAddGroupNorm E) => ⇑f) (_ : Function.Injective fun (f : NonarchAddGroupNorm E) => ⇑f)
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- NonarchAddGroupNorm.instInhabitedNonarchAddGroupNorm = { default := 1 }