Normed groups homomorphisms #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
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 seminormed_add_group_hom
and we specialize to normed_add_group_hom
when needed.
- to_fun : V → W
- map_add' : ∀ (v₁ v₂ : V), self.to_fun (v₁ + v₂) = self.to_fun v₁ + self.to_fun v₂
- bound' : ∃ (C : ℝ), ∀ (v : V), ‖self.to_fun v‖ ≤ C * ‖v‖
A morphism of seminormed abelian groups is a bounded group homomorphism.
Instances for normed_add_group_hom
- normed_add_group_hom.has_sizeof_inst
- normed_add_group_hom.has_coe_to_fun
- normed_add_group_hom.add_monoid_hom_class
- normed_add_group_hom.has_op_norm
- normed_add_group_hom.has_add
- normed_add_group_hom.has_zero
- normed_add_group_hom.inhabited
- normed_add_group_hom.has_neg
- normed_add_group_hom.has_sub
- normed_add_group_hom.has_smul
- normed_add_group_hom.smul_comm_class
- normed_add_group_hom.is_scalar_tower
- normed_add_group_hom.is_central_scalar
- normed_add_group_hom.has_nat_scalar
- normed_add_group_hom.has_int_scalar
- normed_add_group_hom.add_comm_group
- normed_add_group_hom.to_seminormed_add_comm_group
- normed_add_group_hom.to_normed_add_comm_group
- normed_add_group_hom.distrib_mul_action
- normed_add_group_hom.module
- SemiNormedGroup.bundled_hom
Associate to a group homomorphism a bounded group homomorphism under a norm control condition.
See add_monoid_hom.mk_normed_add_group_hom'
for a version that uses ℝ≥0
for the bound.
Associate to a group homomorphism a bounded group homomorphism under a norm control condition.
See add_monoid_hom.mk_normed_add_group_hom
for a version that uses ℝ
for the bound.
Equations
The group homomorphism underlying a bounded group homomorphism.
Equations
Equations
- normed_add_group_hom.add_monoid_hom_class = {coe := coe_fn normed_add_group_hom.has_coe_to_fun, coe_injective' := _, map_add := _, map_zero := _}
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
.
The operator norm #
The operator norm of a seminormed group homomorphism is the inf of all its bounds.
Equations
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
mk_normed_add_group_hom
, 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 mk_normed_add_group_hom
, then its norm is bounded by the bound
given to the constructor or zero if this bound is negative.
Alias of normed_add_group_hom.mk_normed_add_group_hom_norm_le
.
Alias of normed_add_group_hom.mk_normed_add_group_hom_norm_le'
.
Addition of normed group homs #
Addition of normed group homs.
Equations
- normed_add_group_hom.has_add = {add := λ (f g : normed_add_group_hom V₁ V₂), (f.to_add_monoid_hom + g.to_add_monoid_hom).mk_normed_add_group_hom (‖f‖ + ‖g‖) _}
The operator norm satisfies the triangle inequality.
Terms containing @has_add.add (has_coe_to_fun.F ...) pi.has_add
seem to cause leanchecker to crash due to an out-of-memory
condition.
As a workaround, we add a type annotation: (f + g : V₁ → V₂)
The zero normed group hom #
Equations
- normed_add_group_hom.has_zero = {zero := 0.mk_normed_add_group_hom 0 normed_add_group_hom.has_zero._proof_1}
Equations
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
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
- normed_add_group_hom.has_neg = {neg := λ (f : normed_add_group_hom V₁ V₂), (-f.to_add_monoid_hom).mk_normed_add_group_hom ‖f‖ _}
Subtraction of normed group homs #
Subtraction of normed group homs.
Equations
- normed_add_group_hom.has_sub = {sub := λ (f g : normed_add_group_hom V₁ V₂), {to_fun := (f.to_add_monoid_hom - g.to_add_monoid_hom).to_fun, map_add' := _, bound' := _}}
Scalar actions on normed group homs #
Normed group structure on normed group homs #
Homs between two given normed groups form a commutative additive group.
Equations
- normed_add_group_hom.add_comm_group = function.injective.add_comm_group coe_fn normed_add_group_hom.coe_injective normed_add_group_hom.add_comm_group._proof_1 normed_add_group_hom.add_comm_group._proof_2 normed_add_group_hom.add_comm_group._proof_3 normed_add_group_hom.add_comm_group._proof_4 normed_add_group_hom.add_comm_group._proof_5 normed_add_group_hom.add_comm_group._proof_6
Normed group homomorphisms themselves form a seminormed group with respect to the operator norm.
Equations
- normed_add_group_hom.to_seminormed_add_comm_group = {to_fun := normed_add_group_hom.op_norm _inst_3, map_zero' := _, add_le' := _, neg' := _}.to_seminormed_add_comm_group
Normed group homomorphisms themselves form a normed group with respect to the operator norm.
Coercion of a normed_add_group_hom
is an add_monoid_hom
. Similar to add_monoid_hom.coe_fn
.
Equations
Module structure on normed group homs #
Equations
- normed_add_group_hom.module = function.injective.module R normed_add_group_hom.coe_fn_add_hom normed_add_group_hom.coe_injective normed_add_group_hom.module._proof_1
Composition of normed group homs #
The composition of continuous normed group homs.
Equations
- g.comp f = (g.to_add_monoid_hom.comp f.to_add_monoid_hom).mk_normed_add_group_hom (‖g‖ * ‖f‖) _
Composition of normed groups hom as an additive group morphism.
Equations
- normed_add_group_hom.comp_hom = add_monoid_hom.mk' (λ (g : normed_add_group_hom V₂ V₃), add_monoid_hom.mk' (λ (f : normed_add_group_hom V₁ V₂), g.comp f) _) normed_add_group_hom.comp_hom._proof_2
The inclusion of an add_subgroup
, as bounded group homomorphism.
Equations
- normed_add_group_hom.incl s = {to_fun := coe coe_to_lift, map_add' := _, bound' := _}
Kernel #
The kernel of a bounded group homomorphism. Naturally endowed with a
seminormed_add_comm_group
instance.
Equations
- f.ker = f.to_add_monoid_hom.ker
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
.
Range #
The image of a bounded group homomorphism. Naturally endowed with a
seminormed_add_comm_group
instance.
Equations
- f.range = f.to_add_monoid_hom.range
A normed_add_group_hom
is norm-nonincreasing if ‖f v‖ ≤ ‖v‖
for all v
.
The equalizer of two morphisms f g : normed_add_group_hom V W
.
The inclusion of f.equalizer g
as a normed_add_group_hom
.
Equations
If φ : normed_add_group_hom V₁ V
is such that f.comp φ = g.comp φ
, the induced morphism
normed_add_group_hom V₁ (f.equalizer g)
.
The lifting property of the equalizer as an equivalence.
Equations
- normed_add_group_hom.equalizer.lift_equiv = {to_fun := λ (φ : {φ // f.comp φ = g.comp φ}), normed_add_group_hom.equalizer.lift ↑φ _, inv_fun := λ (ψ : normed_add_group_hom V₁ ↥(f.equalizer g)), ⟨(normed_add_group_hom.equalizer.ι f g).comp ψ, _⟩, left_inv := _, right_inv := _}
Given φ : normed_add_group_hom V₁ V₂
and ψ : normed_add_group_hom W₁ W₂
such that
ψ.comp f₁ = f₂.comp φ
and ψ.comp g₁ = g₂.comp φ
, the induced morphism
normed_add_group_hom (f₁.equalizer g₁) (f₂.equalizer g₂)
.
Equations
- normed_add_group_hom.equalizer.map φ ψ hf hg = normed_add_group_hom.equalizer.lift (φ.comp (normed_add_group_hom.equalizer.ι f₁ g₁)) _
The lifting of a norm nonincreasing morphism is norm nonincreasing.
If φ
satisfies ‖φ‖ ≤ C
, then the same is true for the lifted morphism.