Normed groups homomorphisms #
This file gathers definitions and elementary constructions about bounded group homomorphisms between normed (abelian) groups (abbreviated to "normed group homs").
The main lemmas relate the boundedness condition to continuity and Lipschitzness.
The main construction is to endow the type of normed group homs between two given normed groups with a group structure and a norm, giving rise to a normed group structure. We provide several simple constructions for normed group homs, like kernel, range and equalizer.
Some easy other constructions are related to subgroups of normed groups.
Since a lot of elementary properties don't require ‖x‖ = 0 → x = 0
we start setting up the
theory of SeminormedAddGroupHom
and we specialize to NormedAddGroupHom
when needed.
A morphism of seminormed abelian groups is a bounded group homomorphism.
- toFun : V → W
The function underlying a
NormedAddGroupHom
A
NormedAddGroupHom
is additive.A
NormedAddGroupHom
is bounded.
Instances For
Associate to a group homomorphism a bounded group homomorphism under a norm control condition.
See AddMonoidHom.mkNormedAddGroupHom'
for a version that uses ℝ≥0
for the bound.
Equations
- f.mkNormedAddGroupHom C h = { toFun := (↑f).toFun, map_add' := ⋯, bound' := ⋯ }
Instances For
Associate to a group homomorphism a bounded group homomorphism under a norm control condition.
See AddMonoidHom.mkNormedAddGroupHom
for a version that uses ℝ
for the bound.
Equations
- f.mkNormedAddGroupHom' C hC = { toFun := (↑f).toFun, map_add' := ⋯, bound' := ⋯ }
Instances For
A Lipschitz continuous additive homomorphism is a normed additive group homomorphism.
Equations
- NormedAddGroupHom.ofLipschitz f h = f.mkNormedAddGroupHom ↑K ⋯
Instances For
Equations
- NormedAddGroupHom.funLike = { coe := NormedAddGroupHom.toFun, coe_injective' := ⋯ }
The group homomorphism underlying a bounded group homomorphism.
Equations
- f.toAddMonoidHom = AddMonoidHom.mk' ⇑f ⋯
Instances For
A normed group hom is surjective on the subgroup K
with constant C
if every element
x
of K
has a preimage whose norm is bounded above by C*‖x‖
. This is a more
abstract version of f
having a right inverse defined on K
with operator norm
at most C
.
Instances For
The operator norm #
The operator norm of a seminormed group homomorphism is the inf of all its bounds.
Instances For
Equations
- NormedAddGroupHom.hasOpNorm = { norm := NormedAddGroupHom.opNorm }
The fundamental property of the operator norm: ‖f x‖ ≤ ‖f‖ * ‖x‖
.
continuous linear maps are Lipschitz continuous.
If one controls the norm of every f x
, then one controls the norm of f
.
If a bounded group homomorphism map is constructed from a group homomorphism via the constructor
AddMonoidHom.mkNormedAddGroupHom
, then its norm is bounded by the bound given to the constructor
if it is nonnegative.
If a bounded group homomorphism map is constructed from a group homomorphism via the constructor
NormedAddGroupHom.ofLipschitz
, then its norm is bounded by the bound given to the constructor.
If a bounded group homomorphism map is constructed from a group homomorphism
via the constructor AddMonoidHom.mkNormedAddGroupHom
, then its norm is bounded by the bound
given to the constructor or zero if this bound is negative.
Alias of NormedAddGroupHom.mkNormedAddGroupHom_norm_le
.
If a bounded group homomorphism map is constructed from a group homomorphism via the constructor
AddMonoidHom.mkNormedAddGroupHom
, then its norm is bounded by the bound given to the constructor
if it is nonnegative.
Alias of NormedAddGroupHom.mkNormedAddGroupHom_norm_le'
.
If a bounded group homomorphism map is constructed from a group homomorphism
via the constructor AddMonoidHom.mkNormedAddGroupHom
, then its norm is bounded by the bound
given to the constructor or zero if this bound is negative.
Addition of normed group homs #
Addition of normed group homs.
The operator norm satisfies the triangle inequality.
The zero normed group hom #
Equations
- NormedAddGroupHom.zero = { zero := AddMonoidHom.mkNormedAddGroupHom 0 0 ⋯ }
Equations
- NormedAddGroupHom.inhabited = { default := 0 }
The norm of the 0
operator is 0
.
For normed groups, an operator is zero iff its norm vanishes.
The identity normed group hom #
The identity as a continuous normed group hom.
Equations
- NormedAddGroupHom.id V = (AddMonoidHom.id V).mkNormedAddGroupHom 1 ⋯
Instances For
The norm of the identity is at most 1
. It is in fact 1
, except when the norm of every
element vanishes, where it is 0
. (Since we are working with seminorms this can happen even if the
space is non-trivial.) It means that one can not do better than an inequality in general.
If there is an element with norm different from 0
, then the norm of the identity equals 1
.
(Since we are working with seminorms supposing that the space is non-trivial is not enough.)
If a normed space is non-trivial, then the norm of the identity equals 1
.
The negation of a normed group hom #
Opposite of a normed group hom.
Equations
- NormedAddGroupHom.neg = { neg := fun (f : NormedAddGroupHom V₁ V₂) => (-f.toAddMonoidHom).mkNormedAddGroupHom ‖f‖ ⋯ }
Subtraction of normed group homs #
Subtraction of normed group homs.
Equations
- NormedAddGroupHom.sub = { sub := fun (f g : NormedAddGroupHom V₁ V₂) => let __src := f.toAddMonoidHom - g.toAddMonoidHom; { toFun := (↑__src).toFun, map_add' := ⋯, bound' := ⋯ } }
Scalar actions on normed group homs #
Equations
- NormedAddGroupHom.smul = { smul := fun (r : R) (f : NormedAddGroupHom V₁ V₂) => { toFun := r • ⇑f, map_add' := ⋯, bound' := ⋯ } }
Equations
- NormedAddGroupHom.nsmul = { smul := fun (n : ℕ) (f : NormedAddGroupHom V₁ V₂) => { toFun := n • ⇑f, map_add' := ⋯, bound' := ⋯ } }
Equations
- NormedAddGroupHom.zsmul = { smul := fun (z : ℤ) (f : NormedAddGroupHom V₁ V₂) => { toFun := z • ⇑f, map_add' := ⋯, bound' := ⋯ } }
Normed group structure on normed group homs #
Homs between two given normed groups form a commutative additive group.
Equations
- NormedAddGroupHom.toAddCommGroup = Function.Injective.addCommGroup NormedAddGroupHom.toFun ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯
Normed group homomorphisms themselves form a seminormed group with respect to the operator norm.
Equations
- NormedAddGroupHom.toSeminormedAddCommGroup = { toFun := NormedAddGroupHom.opNorm, map_zero' := ⋯, add_le' := ⋯, neg' := ⋯ }.toSeminormedAddCommGroup
Normed group homomorphisms themselves form a normed group with respect to the operator norm.
Equations
- NormedAddGroupHom.toNormedAddCommGroup = { toFun := NormedAddGroupHom.opNorm, map_zero' := ⋯, add_le' := ⋯, neg' := ⋯, eq_zero_of_map_eq_zero' := ⋯ }.toNormedAddCommGroup
Coercion of a NormedAddGroupHom
is an AddMonoidHom
. Similar to AddMonoidHom.coeFn
.
Equations
- NormedAddGroupHom.coeAddHom = { toFun := DFunLike.coe, map_zero' := ⋯, map_add' := ⋯ }
Instances For
Module structure on normed group homs #
Equations
- NormedAddGroupHom.distribMulAction = Function.Injective.distribMulAction NormedAddGroupHom.coeAddHom ⋯ ⋯
Equations
- NormedAddGroupHom.module = Function.Injective.module R NormedAddGroupHom.coeAddHom ⋯ ⋯
Composition of normed group homs #
The composition of continuous normed group homs.
Instances For
Composition of normed groups hom as an additive group morphism.
Equations
- NormedAddGroupHom.compHom = AddMonoidHom.mk' (fun (g : NormedAddGroupHom V₂ V₃) => AddMonoidHom.mk' (fun (f : NormedAddGroupHom V₁ V₂) => g.comp f) ⋯) ⋯
Instances For
The inclusion of an AddSubgroup
, as bounded group homomorphism.
Equations
- NormedAddGroupHom.incl s = { toFun := Subtype.val, map_add' := ⋯, bound' := ⋯ }
Instances For
Kernel #
The kernel of a bounded group homomorphism. Naturally endowed with a
SeminormedAddCommGroup
instance.
Equations
- f.ker = f.toAddMonoidHom.ker
Instances For
Given a normed group hom f : V₁ → V₂
satisfying g.comp f = 0
for some g : V₂ → V₃
,
the corestriction of f
to the kernel of g
.
Equations
- NormedAddGroupHom.ker.lift f g h = { toFun := fun (v : V₁) => ⟨f v, ⋯⟩, map_add' := ⋯, bound' := ⋯ }
Instances For
Range #
The image of a bounded group homomorphism. Naturally endowed with a
SeminormedAddCommGroup
instance.
Equations
- f.range = f.toAddMonoidHom.range
Instances For
A NormedAddGroupHom
is norm-nonincreasing if ‖f v‖ ≤ ‖v‖
for all v
.
Instances For
The equalizer of two morphisms f g : NormedAddGroupHom V W
.
Instances For
The inclusion of f.equalizer g
as a NormedAddGroupHom
.
Equations
- NormedAddGroupHom.Equalizer.ι f g = NormedAddGroupHom.incl (f.equalizer g)
Instances For
If φ : NormedAddGroupHom V₁ V
is such that f.comp φ = g.comp φ
, the induced morphism
NormedAddGroupHom V₁ (f.equalizer g)
.
Equations
- NormedAddGroupHom.Equalizer.lift φ h = { toFun := fun (v : V₁) => ⟨φ v, ⋯⟩, map_add' := ⋯, bound' := ⋯ }
Instances For
The lifting property of the equalizer as an equivalence.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given φ : NormedAddGroupHom V₁ V₂
and ψ : NormedAddGroupHom W₁ W₂
such that
ψ.comp f₁ = f₂.comp φ
and ψ.comp g₁ = g₂.comp φ
, the induced morphism
NormedAddGroupHom (f₁.equalizer g₁) (f₂.equalizer g₂)
.
Equations
- NormedAddGroupHom.Equalizer.map φ ψ hf hg = NormedAddGroupHom.Equalizer.lift (φ.comp (NormedAddGroupHom.Equalizer.ι f₁ g₁)) ⋯
Instances For
The lifting of a norm nonincreasing morphism is norm nonincreasing.
If φ
satisfies ‖φ‖ ≤ C
, then the same is true for the lifted morphism.