Normed fields #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
In this file we define (semi)normed rings and fields. We also prove some theorems about these definitions.
- to_has_norm : has_norm α
- to_non_unital_ring : non_unital_ring α
- to_pseudo_metric_space : pseudo_metric_space α
- dist_eq : ∀ (x y : α), has_dist.dist x y = ‖x - y‖
- norm_mul : ∀ (a b : α), ‖a * b‖ ≤ ‖a‖ * ‖b‖
A non-unital seminormed ring is a not-necessarily-unital ring
endowed with a seminorm which satisfies the inequality ‖x y‖ ≤ ‖x‖ ‖y‖
.
Instances of this typeclass
Instances of other typeclasses for non_unital_semi_normed_ring
- non_unital_semi_normed_ring.has_sizeof_inst
- to_has_norm : has_norm α
- to_ring : ring α
- to_pseudo_metric_space : pseudo_metric_space α
- dist_eq : ∀ (x y : α), has_dist.dist x y = ‖x - y‖
- norm_mul : ∀ (a b : α), ‖a * b‖ ≤ ‖a‖ * ‖b‖
A seminormed ring is a ring endowed with a seminorm which satisfies the inequality
‖x y‖ ≤ ‖x‖ ‖y‖
.
Instances of this typeclass
Instances of other typeclasses for semi_normed_ring
- semi_normed_ring.has_sizeof_inst
A seminormed ring is a non-unital seminormed ring.
- to_has_norm : has_norm α
- to_non_unital_ring : non_unital_ring α
- to_metric_space : metric_space α
- dist_eq : ∀ (x y : α), has_dist.dist x y = ‖x - y‖
- norm_mul : ∀ (a b : α), ‖a * b‖ ≤ ‖a‖ * ‖b‖
A non-unital normed ring is a not-necessarily-unital ring
endowed with a norm which satisfies the inequality ‖x y‖ ≤ ‖x‖ ‖y‖
.
Instances of this typeclass
Instances of other typeclasses for non_unital_normed_ring
- non_unital_normed_ring.has_sizeof_inst
A non-unital normed ring is a non-unital seminormed ring.
Equations
- non_unital_normed_ring.to_non_unital_semi_normed_ring = {to_has_norm := non_unital_normed_ring.to_has_norm β, to_non_unital_ring := non_unital_normed_ring.to_non_unital_ring β, to_pseudo_metric_space := metric_space.to_pseudo_metric_space non_unital_normed_ring.to_metric_space, dist_eq := _, norm_mul := _}
- to_has_norm : has_norm α
- to_ring : ring α
- to_metric_space : metric_space α
- dist_eq : ∀ (x y : α), has_dist.dist x y = ‖x - y‖
- norm_mul : ∀ (a b : α), ‖a * b‖ ≤ ‖a‖ * ‖b‖
A normed ring is a ring endowed with a norm which satisfies the inequality ‖x y‖ ≤ ‖x‖ ‖y‖
.
Instances of this typeclass
Instances of other typeclasses for normed_ring
- normed_ring.has_sizeof_inst
- to_has_norm : has_norm α
- to_division_ring : division_ring α
- to_metric_space : metric_space α
- dist_eq : ∀ (x y : α), has_dist.dist x y = ‖x - y‖
- norm_mul' : ∀ (a b : α), ‖a * b‖ = ‖a‖ * ‖b‖
A normed division ring is a division ring endowed with a seminorm which satisfies the equality
‖x y‖ = ‖x‖ ‖y‖
.
Instances of this typeclass
Instances of other typeclasses for normed_division_ring
- normed_division_ring.has_sizeof_inst
A normed division ring is a normed ring.
Equations
- normed_division_ring.to_normed_ring = {to_has_norm := normed_division_ring.to_has_norm β, to_ring := {add := division_ring.add normed_division_ring.to_division_ring, add_assoc := _, zero := division_ring.zero normed_division_ring.to_division_ring, zero_add := _, add_zero := _, nsmul := division_ring.nsmul normed_division_ring.to_division_ring, nsmul_zero' := _, nsmul_succ' := _, neg := division_ring.neg normed_division_ring.to_division_ring, sub := division_ring.sub normed_division_ring.to_division_ring, sub_eq_add_neg := _, zsmul := division_ring.zsmul normed_division_ring.to_division_ring, zsmul_zero' := _, zsmul_succ' := _, zsmul_neg' := _, add_left_neg := _, add_comm := _, int_cast := division_ring.int_cast normed_division_ring.to_division_ring, nat_cast := division_ring.nat_cast normed_division_ring.to_division_ring, one := division_ring.one normed_division_ring.to_division_ring, nat_cast_zero := _, nat_cast_succ := _, int_cast_of_nat := _, int_cast_neg_succ_of_nat := _, mul := division_ring.mul normed_division_ring.to_division_ring, mul_assoc := _, one_mul := _, mul_one := _, npow := division_ring.npow normed_division_ring.to_division_ring, npow_zero' := _, npow_succ' := _, left_distrib := _, right_distrib := _}, to_metric_space := normed_division_ring.to_metric_space β, dist_eq := _, norm_mul := _}
A normed ring is a seminormed ring.
Equations
A normed ring is a non-unital normed ring.
- to_semi_normed_ring : semi_normed_ring α
- mul_comm : ∀ (x y : α), x * y = y * x
A seminormed commutative ring is a commutative ring endowed with a seminorm which satisfies
the inequality ‖x y‖ ≤ ‖x‖ ‖y‖
.
Instances of this typeclass
Instances of other typeclasses for semi_normed_comm_ring
- semi_normed_comm_ring.has_sizeof_inst
- to_normed_ring : normed_ring α
- mul_comm : ∀ (x y : α), x * y = y * x
A normed commutative ring is a commutative ring endowed with a norm which satisfies
the inequality ‖x y‖ ≤ ‖x‖ ‖y‖
.
Instances of this typeclass
Instances of other typeclasses for normed_comm_ring
- normed_comm_ring.has_sizeof_inst
A normed commutative ring is a seminormed commutative ring.
Equations
- normed_comm_ring.to_semi_normed_comm_ring = {to_semi_normed_ring := {to_has_norm := normed_ring.to_has_norm normed_comm_ring.to_normed_ring, to_ring := normed_ring.to_ring normed_comm_ring.to_normed_ring, to_pseudo_metric_space := metric_space.to_pseudo_metric_space normed_ring.to_metric_space, dist_eq := _, norm_mul := _}, mul_comm := _}
Equations
- punit.normed_comm_ring = {to_normed_ring := {to_has_norm := normed_add_comm_group.to_has_norm punit.normed_add_comm_group, to_ring := {add := add_comm_group.add normed_add_comm_group.to_add_comm_group, add_assoc := punit.normed_comm_ring._proof_1, zero := add_comm_group.zero normed_add_comm_group.to_add_comm_group, zero_add := punit.normed_comm_ring._proof_2, add_zero := punit.normed_comm_ring._proof_3, nsmul := add_comm_group.nsmul normed_add_comm_group.to_add_comm_group, nsmul_zero' := punit.normed_comm_ring._proof_4, nsmul_succ' := punit.normed_comm_ring._proof_5, neg := add_comm_group.neg normed_add_comm_group.to_add_comm_group, sub := add_comm_group.sub normed_add_comm_group.to_add_comm_group, sub_eq_add_neg := punit.normed_comm_ring._proof_6, zsmul := add_comm_group.zsmul normed_add_comm_group.to_add_comm_group, zsmul_zero' := punit.normed_comm_ring._proof_7, zsmul_succ' := punit.normed_comm_ring._proof_8, zsmul_neg' := punit.normed_comm_ring._proof_9, add_left_neg := punit.normed_comm_ring._proof_10, add_comm := punit.normed_comm_ring._proof_11, int_cast := comm_ring.int_cast punit.comm_ring, nat_cast := comm_ring.nat_cast punit.comm_ring, one := comm_ring.one punit.comm_ring, nat_cast_zero := _, nat_cast_succ := _, int_cast_of_nat := _, int_cast_neg_succ_of_nat := _, mul := comm_ring.mul punit.comm_ring, mul_assoc := _, one_mul := _, mul_one := _, npow := comm_ring.npow punit.comm_ring, npow_zero' := _, npow_succ' := _, left_distrib := _, right_distrib := _}, to_metric_space := normed_add_comm_group.to_metric_space punit.normed_add_comm_group, dist_eq := _, norm_mul := punit.normed_comm_ring._proof_12}, mul_comm := _}
A mixin class with the axiom ‖1‖ = 1
. Many normed_ring
s and all normed_field
s satisfy this
axiom.
Equations
- semi_normed_comm_ring.to_comm_ring = {add := ring.add semi_normed_ring.to_ring, add_assoc := _, zero := ring.zero semi_normed_ring.to_ring, zero_add := _, add_zero := _, nsmul := ring.nsmul semi_normed_ring.to_ring, nsmul_zero' := _, nsmul_succ' := _, neg := ring.neg semi_normed_ring.to_ring, sub := ring.sub semi_normed_ring.to_ring, sub_eq_add_neg := _, zsmul := ring.zsmul semi_normed_ring.to_ring, zsmul_zero' := _, zsmul_succ' := _, zsmul_neg' := _, add_left_neg := _, add_comm := _, int_cast := ring.int_cast semi_normed_ring.to_ring, nat_cast := ring.nat_cast semi_normed_ring.to_ring, one := ring.one semi_normed_ring.to_ring, nat_cast_zero := _, nat_cast_succ := _, int_cast_of_nat := _, int_cast_neg_succ_of_nat := _, mul := ring.mul semi_normed_ring.to_ring, mul_assoc := _, one_mul := _, mul_one := _, npow := ring.npow semi_normed_ring.to_ring, npow_zero' := _, npow_succ' := _, left_distrib := _, right_distrib := _, mul_comm := _}
Equations
- non_unital_normed_ring.to_normed_add_comm_group = {to_has_norm := non_unital_normed_ring.to_has_norm β, to_add_comm_group := {add := non_unital_ring.add non_unital_normed_ring.to_non_unital_ring, add_assoc := _, zero := non_unital_ring.zero non_unital_normed_ring.to_non_unital_ring, zero_add := _, add_zero := _, nsmul := non_unital_ring.nsmul non_unital_normed_ring.to_non_unital_ring, nsmul_zero' := _, nsmul_succ' := _, neg := non_unital_ring.neg non_unital_normed_ring.to_non_unital_ring, sub := non_unital_ring.sub non_unital_normed_ring.to_non_unital_ring, sub_eq_add_neg := _, zsmul := non_unital_ring.zsmul non_unital_normed_ring.to_non_unital_ring, zsmul_zero' := _, zsmul_succ' := _, zsmul_neg' := _, add_left_neg := _, add_comm := _}, to_metric_space := non_unital_normed_ring.to_metric_space β, dist_eq := _}
Equations
- non_unital_semi_normed_ring.to_seminormed_add_comm_group = {to_has_norm := non_unital_semi_normed_ring.to_has_norm _inst_1, to_add_comm_group := {add := non_unital_ring.add non_unital_semi_normed_ring.to_non_unital_ring, add_assoc := _, zero := non_unital_ring.zero non_unital_semi_normed_ring.to_non_unital_ring, zero_add := _, add_zero := _, nsmul := non_unital_ring.nsmul non_unital_semi_normed_ring.to_non_unital_ring, nsmul_zero' := _, nsmul_succ' := _, neg := non_unital_ring.neg non_unital_semi_normed_ring.to_non_unital_ring, sub := non_unital_ring.sub non_unital_semi_normed_ring.to_non_unital_ring, sub_eq_add_neg := _, zsmul := non_unital_ring.zsmul non_unital_semi_normed_ring.to_non_unital_ring, zsmul_zero' := _, zsmul_succ' := _, zsmul_neg' := _, add_left_neg := _, add_comm := _}, to_pseudo_metric_space := non_unital_semi_normed_ring.to_pseudo_metric_space _inst_1, dist_eq := _}
In a seminormed ring, the left-multiplication add_monoid_hom
is bounded.
In a seminormed ring, the right-multiplication add_monoid_hom
is bounded.
Equations
- ulift.non_unital_semi_normed_ring = {to_has_norm := seminormed_add_comm_group.to_has_norm ulift.seminormed_add_comm_group, to_non_unital_ring := ulift.non_unital_ring non_unital_semi_normed_ring.to_non_unital_ring, to_pseudo_metric_space := seminormed_add_comm_group.to_pseudo_metric_space ulift.seminormed_add_comm_group, dist_eq := _, norm_mul := _}
Non-unital seminormed ring structure on the product of two non-unital seminormed rings, using the sup norm.
Equations
- prod.non_unital_semi_normed_ring = {to_has_norm := seminormed_add_comm_group.to_has_norm prod.seminormed_add_comm_group, to_non_unital_ring := prod.non_unital_ring non_unital_semi_normed_ring.to_non_unital_ring, to_pseudo_metric_space := seminormed_add_comm_group.to_pseudo_metric_space prod.seminormed_add_comm_group, dist_eq := _, norm_mul := _}
Non-unital seminormed ring structure on the product of finitely many non-unital seminormed rings, using the sup norm.
Equations
- pi.non_unital_semi_normed_ring = {to_has_norm := seminormed_add_comm_group.to_has_norm pi.seminormed_add_comm_group, to_non_unital_ring := pi.non_unital_ring (λ (i : ι), non_unital_semi_normed_ring.to_non_unital_ring), to_pseudo_metric_space := seminormed_add_comm_group.to_pseudo_metric_space pi.seminormed_add_comm_group, dist_eq := _, norm_mul := _}
Equations
- mul_opposite.non_unital_semi_normed_ring = {to_has_norm := seminormed_add_comm_group.to_has_norm mul_opposite.seminormed_add_comm_group, to_non_unital_ring := mul_opposite.non_unital_ring α non_unital_semi_normed_ring.to_non_unital_ring, to_pseudo_metric_space := seminormed_add_comm_group.to_pseudo_metric_space mul_opposite.seminormed_add_comm_group, dist_eq := _, norm_mul := _}
A subalgebra of a seminormed ring is also a seminormed ring, with the restriction of the norm.
See note [implicit instance arguments].
Equations
- s.semi_normed_ring = {to_has_norm := seminormed_add_comm_group.to_has_norm (⇑subalgebra.to_submodule s).seminormed_add_comm_group, to_ring := s.to_ring, to_pseudo_metric_space := seminormed_add_comm_group.to_pseudo_metric_space (⇑subalgebra.to_submodule s).seminormed_add_comm_group, dist_eq := _, norm_mul := _}
A subalgebra of a normed ring is also a normed ring, with the restriction of the norm.
See note [implicit instance arguments].
Equations
If α
is a seminormed ring, then ‖a ^ n‖₊ ≤ ‖a‖₊ ^ n
for n > 0
.
See also nnnorm_pow_le
.
If α
is a seminormed ring with ‖1‖₊ = 1
, then ‖a ^ n‖₊ ≤ ‖a‖₊ ^ n
.
See also nnnorm_pow_le'
.
If α
is a seminormed ring, then ‖a ^ n‖ ≤ ‖a‖ ^ n
for n > 0
. See also norm_pow_le
.
If α
is a seminormed ring with ‖1‖ = 1
, then ‖a ^ n‖ ≤ ‖a‖ ^ n
. See also norm_pow_le'
.
Equations
- ulift.semi_normed_ring = {to_has_norm := non_unital_semi_normed_ring.to_has_norm ulift.non_unital_semi_normed_ring, to_ring := ulift.ring semi_normed_ring.to_ring, to_pseudo_metric_space := non_unital_semi_normed_ring.to_pseudo_metric_space ulift.non_unital_semi_normed_ring, dist_eq := _, norm_mul := _}
Seminormed ring structure on the product of two seminormed rings, using the sup norm.
Equations
- prod.semi_normed_ring = {to_has_norm := non_unital_semi_normed_ring.to_has_norm prod.non_unital_semi_normed_ring, to_ring := prod.ring semi_normed_ring.to_ring, to_pseudo_metric_space := non_unital_semi_normed_ring.to_pseudo_metric_space prod.non_unital_semi_normed_ring, dist_eq := _, norm_mul := _}
Seminormed ring structure on the product of finitely many seminormed rings, using the sup norm.
Equations
- pi.semi_normed_ring = {to_has_norm := non_unital_semi_normed_ring.to_has_norm pi.non_unital_semi_normed_ring, to_ring := pi.ring (λ (i : ι), semi_normed_ring.to_ring), to_pseudo_metric_space := non_unital_semi_normed_ring.to_pseudo_metric_space pi.non_unital_semi_normed_ring, dist_eq := _, norm_mul := _}
Equations
- mul_opposite.semi_normed_ring = {to_has_norm := non_unital_semi_normed_ring.to_has_norm mul_opposite.non_unital_semi_normed_ring, to_ring := mul_opposite.ring α semi_normed_ring.to_ring, to_pseudo_metric_space := non_unital_semi_normed_ring.to_pseudo_metric_space mul_opposite.non_unital_semi_normed_ring, dist_eq := _, norm_mul := _}
Equations
- ulift.non_unital_normed_ring = {to_has_norm := non_unital_semi_normed_ring.to_has_norm ulift.non_unital_semi_normed_ring, to_non_unital_ring := non_unital_semi_normed_ring.to_non_unital_ring ulift.non_unital_semi_normed_ring, to_metric_space := ulift.metric_space non_unital_normed_ring.to_metric_space, dist_eq := _, norm_mul := _}
Non-unital normed ring structure on the product of two non-unital normed rings, using the sup norm.
Equations
- prod.non_unital_normed_ring = {to_has_norm := seminormed_add_comm_group.to_has_norm prod.seminormed_add_comm_group, to_non_unital_ring := prod.non_unital_ring non_unital_normed_ring.to_non_unital_ring, to_metric_space := prod.metric_space_max non_unital_normed_ring.to_metric_space, dist_eq := _, norm_mul := _}
Normed ring structure on the product of finitely many non-unital normed rings, using the sup norm.
Equations
- pi.non_unital_normed_ring = {to_has_norm := normed_add_comm_group.to_has_norm pi.normed_add_comm_group, to_non_unital_ring := pi.non_unital_ring (λ (i : ι), non_unital_normed_ring.to_non_unital_ring), to_metric_space := normed_add_comm_group.to_metric_space pi.normed_add_comm_group, dist_eq := _, norm_mul := _}
Equations
- mul_opposite.non_unital_normed_ring = {to_has_norm := normed_add_comm_group.to_has_norm mul_opposite.normed_add_comm_group, to_non_unital_ring := mul_opposite.non_unital_ring α non_unital_normed_ring.to_non_unital_ring, to_metric_space := normed_add_comm_group.to_metric_space mul_opposite.normed_add_comm_group, dist_eq := _, norm_mul := _}
Normed ring structure on the product of two normed rings, using the sup norm.
Normed ring structure on the product of finitely many normed rings, using the sup norm.
Equations
A seminormed ring is a topological ring.
norm
as a monoid_with_zero_hom
.
Equations
- norm_hom = {to_fun := has_norm.norm normed_division_ring.to_has_norm, map_zero' := _, map_one' := _, map_mul' := _}
nnnorm
as a monoid_with_zero_hom
.
Equations
- nnnorm_hom = {to_fun := has_nnnorm.nnnorm seminormed_add_group.to_has_nnnorm, map_zero' := _, map_one' := _, map_mul' := _}
Multiplication on the left by a nonzero element of a normed division ring tends to infinity at
infinity. TODO: use bornology.cobounded
instead of filter.comap has_norm.norm filter.at_top
.
Multiplication on the right by a nonzero element of a normed division ring tends to infinity at
infinity. TODO: use bornology.cobounded
instead of filter.comap has_norm.norm filter.at_top
.
A normed division ring is a topological division ring.
- to_has_norm : has_norm α
- to_field : field α
- to_metric_space : metric_space α
- dist_eq : ∀ (x y : α), has_dist.dist x y = ‖x - y‖
- norm_mul' : ∀ (a b : α), ‖a * b‖ = ‖a‖ * ‖b‖
A normed field is a field with a norm satisfying ‖x y‖ = ‖x‖ ‖y‖.
Instances of this typeclass
Instances of other typeclasses for normed_field
- normed_field.has_sizeof_inst
A nontrivially normed field is a normed field in which there is an element of norm different
from 0
and 1
. This makes it possible to bring any element arbitrarily close to 0
by
multiplication by the powers of any element, and thus to relate algebra and topology.
Instances of this typeclass
Instances of other typeclasses for nontrivially_normed_field
- nontrivially_normed_field.has_sizeof_inst
- to_normed_field : normed_field α
- lt_norm_lt : ∀ (x y : ℝ), 0 ≤ x → x < y → (∃ (a : α), x < ‖a‖ ∧ ‖a‖ < y)
A densely normed field is a normed field for which the image of the norm is dense in ℝ≥0
,
which means it is also nontrivially normed. However, not all nontrivally normed fields are densely
normed; in particular, the padic
s exhibit this fact.
Instances of this typeclass
Instances of other typeclasses for densely_normed_field
- densely_normed_field.has_sizeof_inst
A densely normed field is always a nontrivially normed field. See note [lower instance priority].
Equations
Equations
- normed_field.to_normed_division_ring = {to_has_norm := normed_field.to_has_norm _inst_1, to_division_ring := {add := field.add normed_field.to_field, add_assoc := _, zero := field.zero normed_field.to_field, zero_add := _, add_zero := _, nsmul := field.nsmul normed_field.to_field, nsmul_zero' := _, nsmul_succ' := _, neg := field.neg normed_field.to_field, sub := field.sub normed_field.to_field, sub_eq_add_neg := _, zsmul := field.zsmul normed_field.to_field, zsmul_zero' := _, zsmul_succ' := _, zsmul_neg' := _, add_left_neg := _, add_comm := _, int_cast := field.int_cast normed_field.to_field, nat_cast := field.nat_cast normed_field.to_field, one := field.one normed_field.to_field, nat_cast_zero := _, nat_cast_succ := _, int_cast_of_nat := _, int_cast_neg_succ_of_nat := _, mul := field.mul normed_field.to_field, mul_assoc := _, one_mul := _, mul_one := _, npow := field.npow normed_field.to_field, npow_zero' := _, npow_succ' := _, left_distrib := _, right_distrib := _, inv := field.inv normed_field.to_field, div := field.div normed_field.to_field, div_eq_mul_inv := _, zpow := field.zpow normed_field.to_field, zpow_zero' := _, zpow_succ' := _, zpow_neg' := _, exists_pair_ne := _, rat_cast := field.rat_cast normed_field.to_field, mul_inv_cancel := _, inv_zero := _, rat_cast_mk := _, qsmul := field.qsmul normed_field.to_field, qsmul_eq_mul' := _}, to_metric_space := normed_field.to_metric_space _inst_1, dist_eq := _, norm_mul' := _}
Equations
- normed_field.to_normed_comm_ring = {to_normed_ring := {to_has_norm := normed_field.to_has_norm _inst_1, to_ring := {add := field.add normed_field.to_field, add_assoc := _, zero := field.zero normed_field.to_field, zero_add := _, add_zero := _, nsmul := field.nsmul normed_field.to_field, nsmul_zero' := _, nsmul_succ' := _, neg := field.neg normed_field.to_field, sub := field.sub normed_field.to_field, sub_eq_add_neg := _, zsmul := field.zsmul normed_field.to_field, zsmul_zero' := _, zsmul_succ' := _, zsmul_neg' := _, add_left_neg := _, add_comm := _, int_cast := field.int_cast normed_field.to_field, nat_cast := field.nat_cast normed_field.to_field, one := field.one normed_field.to_field, nat_cast_zero := _, nat_cast_succ := _, int_cast_of_nat := _, int_cast_neg_succ_of_nat := _, mul := field.mul normed_field.to_field, mul_assoc := _, one_mul := _, mul_one := _, npow := field.npow normed_field.to_field, npow_zero' := _, npow_succ' := _, left_distrib := _, right_distrib := _}, to_metric_space := normed_field.to_metric_space _inst_1, dist_eq := _, norm_mul := _}, mul_comm := _}
Equations
- real.normed_comm_ring = {to_normed_ring := {to_has_norm := normed_add_comm_group.to_has_norm real.normed_add_comm_group, to_ring := {add := add_comm_group.add normed_add_comm_group.to_add_comm_group, add_assoc := real.normed_comm_ring._proof_1, zero := add_comm_group.zero normed_add_comm_group.to_add_comm_group, zero_add := real.normed_comm_ring._proof_2, add_zero := real.normed_comm_ring._proof_3, nsmul := add_comm_group.nsmul normed_add_comm_group.to_add_comm_group, nsmul_zero' := real.normed_comm_ring._proof_4, nsmul_succ' := real.normed_comm_ring._proof_5, neg := add_comm_group.neg normed_add_comm_group.to_add_comm_group, sub := add_comm_group.sub normed_add_comm_group.to_add_comm_group, sub_eq_add_neg := real.normed_comm_ring._proof_6, zsmul := add_comm_group.zsmul normed_add_comm_group.to_add_comm_group, zsmul_zero' := real.normed_comm_ring._proof_7, zsmul_succ' := real.normed_comm_ring._proof_8, zsmul_neg' := real.normed_comm_ring._proof_9, add_left_neg := real.normed_comm_ring._proof_10, add_comm := real.normed_comm_ring._proof_11, int_cast := comm_ring.int_cast real.comm_ring, nat_cast := comm_ring.nat_cast real.comm_ring, one := comm_ring.one real.comm_ring, nat_cast_zero := _, nat_cast_succ := _, int_cast_of_nat := _, int_cast_neg_succ_of_nat := _, mul := comm_ring.mul real.comm_ring, mul_assoc := _, one_mul := _, mul_one := _, npow := comm_ring.npow real.comm_ring, npow_zero' := _, npow_succ' := _, left_distrib := _, right_distrib := _}, to_metric_space := normed_add_comm_group.to_metric_space real.normed_add_comm_group, dist_eq := _, norm_mul := real.normed_comm_ring._proof_12}, mul_comm := _}
Equations
- real.densely_normed_field = {to_normed_field := real.normed_field, lt_norm_lt := real.densely_normed_field._proof_1}
A restatement of metric_space.tendsto_at_top
in terms of the norm.
A variant of normed_add_comm_group.tendsto_at_top
that
uses ∃ N, ∀ n > N, ...
rather than ∃ N, ∀ n ≥ N, ...
Equations
- int.normed_comm_ring = {to_normed_ring := {to_has_norm := normed_add_comm_group.to_has_norm int.normed_add_comm_group, to_ring := int.ring, to_metric_space := normed_add_comm_group.to_metric_space int.normed_add_comm_group, dist_eq := _, norm_mul := int.normed_comm_ring._proof_1}, mul_comm := _}
Equations
- rat.normed_field = {to_has_norm := normed_add_comm_group.to_has_norm rat.normed_add_comm_group, to_field := rat.field, to_metric_space := normed_add_comm_group.to_metric_space rat.normed_add_comm_group, dist_eq := _, norm_mul' := rat.normed_field._proof_1}
Equations
- rat.densely_normed_field = {to_normed_field := rat.normed_field, lt_norm_lt := rat.densely_normed_field._proof_1}
This class states that a ring homomorphism is isometric. This is a sufficient assumption for a continuous semilinear map to be bounded and this is the main use for this typeclass.
Instances of this typeclass
Induced normed structures #
A non-unital ring homomorphism from an non_unital_ring
to a non_unital_semi_normed_ring
induces a non_unital_semi_normed_ring
structure on the domain.
See note [reducible non-instances]
Equations
- non_unital_semi_normed_ring.induced R S f = {to_has_norm := seminormed_add_comm_group.to_has_norm (seminormed_add_comm_group.induced R S f), to_non_unital_ring := _inst_1, to_pseudo_metric_space := seminormed_add_comm_group.to_pseudo_metric_space (seminormed_add_comm_group.induced R S f), dist_eq := _, norm_mul := _}
An injective non-unital ring homomorphism from an non_unital_ring
to a
non_unital_normed_ring
induces a non_unital_normed_ring
structure on the domain.
See note [reducible non-instances]
Equations
- non_unital_normed_ring.induced R S f hf = {to_has_norm := non_unital_semi_normed_ring.to_has_norm (non_unital_semi_normed_ring.induced R S f), to_non_unital_ring := non_unital_semi_normed_ring.to_non_unital_ring (non_unital_semi_normed_ring.induced R S f), to_metric_space := normed_add_comm_group.to_metric_space (normed_add_comm_group.induced R S f hf), dist_eq := _, norm_mul := _}
A non-unital ring homomorphism from an ring
to a semi_normed_ring
induces a
semi_normed_ring
structure on the domain.
See note [reducible non-instances]
Equations
- semi_normed_ring.induced R S f = {to_has_norm := non_unital_semi_normed_ring.to_has_norm (non_unital_semi_normed_ring.induced R S f), to_ring := _inst_1, to_pseudo_metric_space := non_unital_semi_normed_ring.to_pseudo_metric_space (non_unital_semi_normed_ring.induced R S f), dist_eq := _, norm_mul := _}
An injective non-unital ring homomorphism from an ring
to a normed_ring
induces a
normed_ring
structure on the domain.
See note [reducible non-instances]
Equations
- normed_ring.induced R S f hf = {to_has_norm := non_unital_semi_normed_ring.to_has_norm (non_unital_semi_normed_ring.induced R S f), to_ring := _inst_1, to_metric_space := normed_add_comm_group.to_metric_space (normed_add_comm_group.induced R S f hf), dist_eq := _, norm_mul := _}
A non-unital ring homomorphism from a comm_ring
to a semi_normed_ring
induces a
semi_normed_comm_ring
structure on the domain.
See note [reducible non-instances]
Equations
- semi_normed_comm_ring.induced R S f = {to_semi_normed_ring := {to_has_norm := non_unital_semi_normed_ring.to_has_norm (non_unital_semi_normed_ring.induced R S f), to_ring := comm_ring.to_ring R _inst_1, to_pseudo_metric_space := non_unital_semi_normed_ring.to_pseudo_metric_space (non_unital_semi_normed_ring.induced R S f), dist_eq := _, norm_mul := _}, mul_comm := _}
An injective non-unital ring homomorphism from an comm_ring
to a normed_ring
induces a
normed_comm_ring
structure on the domain.
See note [reducible non-instances]
Equations
- normed_comm_ring.induced R S f hf = {to_normed_ring := {to_has_norm := semi_normed_ring.to_has_norm semi_normed_comm_ring.to_semi_normed_ring, to_ring := semi_normed_ring.to_ring semi_normed_comm_ring.to_semi_normed_ring, to_metric_space := normed_add_comm_group.to_metric_space (normed_add_comm_group.induced R S f hf), dist_eq := _, norm_mul := _}, mul_comm := _}
An injective non-unital ring homomorphism from an division_ring
to a normed_ring
induces a
normed_division_ring
structure on the domain.
See note [reducible non-instances]
Equations
- normed_division_ring.induced R S f hf = {to_has_norm := normed_add_comm_group.to_has_norm (normed_add_comm_group.induced R S f hf), to_division_ring := _inst_1, to_metric_space := normed_add_comm_group.to_metric_space (normed_add_comm_group.induced R S f hf), dist_eq := _, norm_mul' := _}
An injective non-unital ring homomorphism from an field
to a normed_ring
induces a
normed_field
structure on the domain.
See note [reducible non-instances]
Equations
- normed_field.induced R S f hf = {to_has_norm := normed_division_ring.to_has_norm (normed_division_ring.induced R S f hf), to_field := _inst_1, to_metric_space := normed_division_ring.to_metric_space (normed_division_ring.induced R S f hf), dist_eq := _, norm_mul' := _}
A ring homomorphism from a ring R
to a semi_normed_ring S
which induces the norm structure
semi_normed_ring.induced
makes R
satisfy ‖(1 : R)‖ = 1
whenever ‖(1 : S)‖ = 1
.
Equations
Equations
Equations
- subring_class.to_semi_normed_comm_ring s = {to_semi_normed_ring := {to_has_norm := semi_normed_ring.to_has_norm (subring_class.to_semi_normed_ring s), to_ring := semi_normed_ring.to_ring (subring_class.to_semi_normed_ring s), to_pseudo_metric_space := semi_normed_ring.to_pseudo_metric_space (subring_class.to_semi_normed_ring s), dist_eq := _, norm_mul := _}, mul_comm := _}
Equations
- subring_class.to_normed_comm_ring s = {to_normed_ring := {to_has_norm := normed_ring.to_has_norm (subring_class.to_normed_ring s), to_ring := normed_ring.to_ring (subring_class.to_normed_ring s), to_metric_space := normed_ring.to_metric_space (subring_class.to_normed_ring s), dist_eq := _, norm_mul := _}, mul_comm := _}