Seminorms and norms on rings #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
This file defines seminorms and norms on rings. These definitions are useful when one needs to consider multiple (semi)norms on a given ring.
Main declarations #
For a ring R
:
ring_seminorm
: A seminorm on a ringR
is a functionf : R → ℝ
that preserves zero, takes nonnegative values, is subadditive and submultiplicative and such thatf (-x) = f x
for allx ∈ R
.ring_norm
: A seminormf
is a norm iff x = 0
if and only ifx = 0
.mul_ring_seminorm
: A multiplicative seminorm on a ringR
is a ring seminorm that preserves multiplication.mul_ring_norm
: A multiplicative norm on a ringR
is a ring norm that preserves multiplication.
Notes #
The corresponding hom classes are defined in analysis.order.hom.basic
to be used by absolute
values.
References #
Tags #
ring_seminorm, ring_norm
- to_fun : R → ℝ
- map_zero' : self.to_fun 0 = 0
- add_le' : ∀ (r s : R), self.to_fun (r + s) ≤ self.to_fun r + self.to_fun s
- neg' : ∀ (r : R), self.to_fun (-r) = self.to_fun r
- mul_le' : ∀ (x y : R), self.to_fun (x * y) ≤ self.to_fun x * self.to_fun y
A seminorm on a ring R
is a function f : R → ℝ
that preserves zero, takes nonnegative
values, is subadditive and submultiplicative and such that f (-x) = f x
for all x ∈ R
.
Instances for ring_seminorm
- ring_seminorm.has_sizeof_inst
- ring_seminorm.ring_seminorm_class
- ring_seminorm.has_coe_to_fun
- ring_seminorm.has_zero
- ring_seminorm.inhabited
- ring_seminorm.has_one
- to_fun : R → ℝ
- map_zero' : self.to_fun 0 = 0
- add_le' : ∀ (r s : R), self.to_fun (r + s) ≤ self.to_fun r + self.to_fun s
- neg' : ∀ (r : R), self.to_fun (-r) = self.to_fun r
- mul_le' : ∀ (x y : R), self.to_fun (x * y) ≤ self.to_fun x * self.to_fun y
- eq_zero_of_map_eq_zero' : ∀ (x : R), self.to_fun x = 0 → x = 0
A function f : R → ℝ
is a norm on a (nonunital) ring if it is a seminorm and f x = 0
implies x = 0
.
Instances for ring_norm
- ring_norm.has_sizeof_inst
- ring_norm.ring_norm_class
- ring_norm.has_coe_to_fun
- ring_norm.has_one
- ring_norm.inhabited
- to_fun : R → ℝ
- map_zero' : self.to_fun 0 = 0
- add_le' : ∀ (r s : R), self.to_fun (r + s) ≤ self.to_fun r + self.to_fun s
- neg' : ∀ (r : R), self.to_fun (-r) = self.to_fun r
- map_one' : self.to_fun 1 = 1
- map_mul' : ∀ (x y : R), self.to_fun (x * y) = self.to_fun x * self.to_fun y
A multiplicative seminorm on a ring R
is a function f : R → ℝ
that preserves zero and
multiplication, takes nonnegative values, is subadditive and such that f (-x) = f x
for all x
.
Instances for mul_ring_seminorm
- mul_ring_seminorm.has_sizeof_inst
- mul_ring_seminorm.mul_ring_seminorm_class
- mul_ring_seminorm.has_coe_to_fun
- mul_ring_seminorm.has_one
- mul_ring_seminorm.inhabited
- to_fun : R → ℝ
- map_zero' : self.to_fun 0 = 0
- add_le' : ∀ (r s : R), self.to_fun (r + s) ≤ self.to_fun r + self.to_fun s
- neg' : ∀ (r : R), self.to_fun (-r) = self.to_fun r
- map_one' : self.to_fun 1 = 1
- map_mul' : ∀ (x y : R), self.to_fun (x * y) = self.to_fun x * self.to_fun y
- eq_zero_of_map_eq_zero' : ∀ (x : R), self.to_fun x = 0 → x = 0
A multiplicative norm on a ring R
is a multiplicative ring seminorm such that f x = 0
implies x = 0
.
Instances for mul_ring_norm
- mul_ring_norm.has_sizeof_inst
- mul_ring_norm.mul_ring_norm_class
- mul_ring_norm.has_coe_to_fun
- mul_ring_norm.has_one
- mul_ring_norm.inhabited
Equations
- ring_seminorm.ring_seminorm_class = {coe := λ (f : ring_seminorm R), f.to_fun, coe_injective' := _, map_add_le_add := _, map_zero := _, map_neg_eq_map := _, map_mul_le_mul := _}
Helper instance for when there's too many metavariables to apply fun_like.has_coe_to_fun
.
Equations
- ring_seminorm.inhabited = {default := 0}
The trivial seminorm on a ring R
is the ring_seminorm
taking value 0
at 0
and 1
at
every other element.
The norm of a non_unital_semi_normed_ring
as a ring_seminorm
.
Equations
- norm_ring_seminorm R = {to_fun := has_norm.norm non_unital_semi_normed_ring.to_has_norm, map_zero' := _, add_le' := _, neg' := _, mul_le' := _}
Equations
- ring_norm.ring_norm_class = {coe := λ (f : ring_norm R), f.to_fun, coe_injective' := _, map_add_le_add := _, map_zero := _, map_neg_eq_map := _, map_mul_le_mul := _, eq_zero_of_map_eq_zero := _}
Helper instance for when there's too many metavariables to apply fun_like.has_coe_to_fun
.
The trivial norm on a ring R
is the ring_norm
taking value 0
at 0
and 1
at every
other element.
Equations
- ring_norm.inhabited R = {default := 1}
Equations
- mul_ring_seminorm.mul_ring_seminorm_class = {coe := λ (f : mul_ring_seminorm R), f.to_fun, coe_injective' := _, map_add_le_add := _, map_zero := _, map_neg_eq_map := _, map_mul := _, map_one := _}
Helper instance for when there's too many metavariables to apply fun_like.has_coe_to_fun
.
The trivial seminorm on a ring R
is the mul_ring_seminorm
taking value 0
at 0
and 1
at
every other element.
Equations
Equations
- mul_ring_norm.mul_ring_norm_class = {coe := λ (f : mul_ring_norm R), f.to_fun, coe_injective' := _, map_add_le_add := _, map_zero := _, map_neg_eq_map := _, map_mul := _, map_one := _, eq_zero_of_map_eq_zero := _}
Helper instance for when there's too many metavariables to apply fun_like.has_coe_to_fun
.
Equations
- mul_ring_norm.has_coe_to_fun = {coe := λ (p : mul_ring_norm R), p.to_fun}
The trivial norm on a ring R
is the mul_ring_norm
taking value 0
at 0
and 1
at every
other element.
Equations
- mul_ring_norm.inhabited R = {default := 1}
A nonzero ring seminorm on a field K
is a ring norm.
Equations
- f.to_ring_norm hnt = {to_fun := f.to_fun, map_zero' := _, add_le' := _, neg' := _, mul_le' := _, eq_zero_of_map_eq_zero' := _}
The norm of a normed_ring as a ring_norm.
Equations
- norm_ring_norm R = {to_fun := (norm_add_group_norm R).to_fun, map_zero' := _, add_le' := _, neg' := _, mul_le' := _, eq_zero_of_map_eq_zero' := _}