Extended norm
In this file we define a structure enorm š V
representing an extended norm (i.e., a norm that can
take the value ā
) on a vector space V
over a normed field š
. We do not use class
for
an enorm
because the same space can have more than one extended norm. For example, the space of
measurable functions f : Ī± ā ā
has a family of L_p
extended norms.
We prove some basic inequalities, then define
emetric_space
structure onV
corresponding toe : enorm š V
;- the subspace of vectors with finite norm, called
e.finite_subspace
; - a
normed_space
structure on this space.
The last definition is an instance because the type involves e
.
Implementation notes
We do not define extended normed groups. They can be added to the chain once someone will need them.
Tags
normed space, extended norm
- to_fun : V ā ennreal
- eq_zero' : ā (x : V), c.to_fun x = 0 ā x = 0
- map_add_le' : ā (x y : V), c.to_fun (x + y) ā¤ c.to_fun x + c.to_fun y
- map_smul_le' : ā (c_1 : š) (x : V), c.to_fun (c_1 ā¢ x) ā¤ ā(nnnorm c_1) * c.to_fun x
Extended norm on a vector space. As in the case of normed spaces, we require only
ā„c ā¢ xā„ ā¤ ā„cā„ * ā„xā„
in the definition, then prove an equality in map_smul
.
Equations
- enorm.has_coe_to_fun = {F := Ī» (x : enorm š V), V ā ennreal, coe := enorm.to_fun _inst_3}
The enorm
sending each non-zero vector to infinity.
Equations
- enorm.has_top = {top := {to_fun := Ī» (x : V), ite (x = 0) 0 ā¤, eq_zero' := _, map_add_le' := _, map_smul_le' := _}}
Equations
- enorm.inhabited = {default := ā¤}
Equations
- enorm.semilattice_sup_top = {top := ā¤, le := has_le.le (preorder.to_has_le (enorm š V)), lt := has_lt.lt (preorder.to_has_lt (enorm š V)), le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _, le_top := _, sup := Ī» (eā eā : enorm š V), {to_fun := Ī» (x : V), max (āeā x) (āeā x), eq_zero' := _, map_add_le' := _, map_smul_le' := _}, le_sup_left := _, le_sup_right := _, sup_le := _}
Structure of an emetric_space
defined by an extended norm.
Equations
- e.emetric_space = {to_has_edist := {edist := Ī» (x y : V), āe (x - y)}, edist_self := _, eq_of_edist_eq_zero := _, edist_comm := _, edist_triangle := _, to_uniform_space := uniform_space_of_edist (Ī» (x y : V), āe (x - y)) _ _ _, uniformity_edist := _}
The subspace of vectors with finite enorm.
Metric space structure on e.finite_subspace
. We use emetric_space.to_metric_space_of_dist
to ensure that this definition agrees with e.emetric_space
.
Equations
- e.metric_space = let _inst : emetric_space V := e.emetric_space in emetric_space.to_metric_space_of_dist (Ī» (x y : ā„(e.finite_subspace)), (has_edist.edist x y).to_real) _ _
Normed group instance on e.finite_subspace
.
Equations
- e.normed_group = {to_has_norm := {norm := Ī» (x : ā„(e.finite_subspace)), (āe āx).to_real}, to_add_comm_group := submodule.add_comm_group e.finite_subspace, to_metric_space := e.metric_space, dist_eq := _}
Normed space instance on e.finite_subspace
.
Equations
- e.normed_space = {to_semimodule := submodule.semimodule e.finite_subspace, norm_smul_le := _}