@@ -43,6 +43,9 @@ class NonUnitalSeminormedRing (α : Type*) extends Norm α, NonUnitalRing α,
4343 /-- The norm is submultiplicative. -/
4444 protected norm_mul_le : ∀ a b, norm (a * b) ≤ norm a * norm b
4545
46+ -- see Note [lower instance priority]
47+ attribute [instance 100 ] NonUnitalSeminormedRing.toNonUnitalRing
48+
4649/-- A seminormed ring is a ring endowed with a seminorm which satisfies the inequality
4750`‖x y‖ ≤ ‖x‖ ‖y‖`. -/
4851class SeminormedRing (α : Type *) extends Norm α, Ring α, PseudoMetricSpace α where
@@ -51,6 +54,9 @@ class SeminormedRing (α : Type*) extends Norm α, Ring α, PseudoMetricSpace α
5154 /-- The norm is submultiplicative. -/
5255 norm_mul_le : ∀ a b, norm (a * b) ≤ norm a * norm b
5356
57+ -- see Note [lower instance priority]
58+ attribute [instance 100 ] SeminormedRing.toRing
59+
5460-- see Note [lower instance priority]
5561/-- A seminormed ring is a non-unital seminormed ring. -/
5662instance (priority := 100 ) SeminormedRing.toNonUnitalSeminormedRing [β : SeminormedRing α] :
@@ -65,6 +71,9 @@ class NonUnitalNormedRing (α : Type*) extends Norm α, NonUnitalRing α, Metric
6571 /-- The norm is submultiplicative. -/
6672 norm_mul_le : ∀ a b, norm (a * b) ≤ norm a * norm b
6773
74+ -- see Note [lower instance priority]
75+ attribute [instance 100 ] NonUnitalNormedRing.toNonUnitalRing
76+
6877-- see Note [lower instance priority]
6978/-- A non-unital normed ring is a non-unital seminormed ring. -/
7079instance (priority := 100 ) NonUnitalNormedRing.toNonUnitalSeminormedRing
@@ -78,6 +87,9 @@ class NormedRing (α : Type*) extends Norm α, Ring α, MetricSpace α where
7887 /-- The norm is submultiplicative. -/
7988 norm_mul_le : ∀ a b, norm (a * b) ≤ norm a * norm b
8089
90+ -- see Note [lower instance priority]
91+ attribute [instance 100 ] NormedRing.toRing
92+
8193-- see Note [lower instance priority]
8294/-- A normed ring is a seminormed ring. -/
8395instance (priority := 100 ) NormedRing.toSeminormedRing [β : NormedRing α] : SeminormedRing α :=
0 commit comments