This repository was archived by the owner on Jul 24, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +18
-0
lines changed Expand file tree Collapse file tree 2 files changed +18
-0
lines changed Original file line number Diff line number Diff line change @@ -828,6 +828,10 @@ instance linear_ordered_comm_ring.to_integral_domain [s : linear_ordered_comm_ri
828
828
@[priority 100 ] -- see Note [lower instance priority]
829
829
instance linear_ordered_comm_ring.to_linear_ordered_semiring [d : linear_ordered_comm_ring α] :
830
830
linear_ordered_semiring α :=
831
+ -- One might hope that `{ ..linear_ordered_ring.to_linear_ordered_semiring, ..d }`
832
+ -- achieved the same result here.
833
+ -- Unfortunately with that definition we see mismatched `preorder ℝ` instances in
834
+ -- `topology.metric_space.basic`.
831
835
let s : linear_ordered_semiring α := @linear_ordered_ring.to_linear_ordered_semiring α _ in
832
836
{ zero_mul := @linear_ordered_semiring.zero_mul α s,
833
837
mul_zero := @linear_ordered_semiring.mul_zero α s,
Original file line number Diff line number Diff line change @@ -150,3 +150,17 @@ local attribute [instance] star_ring_of_comm
150
150
@[simp] lemma star_id_of_comm {R : Type *} [comm_semiring R] {x : R} : star x = x := rfl
151
151
152
152
end
153
+
154
+ /--
155
+ An ordered *-ring is a ring which is both an ordered ring and a *-ring,
156
+ and `0 ≤ star r * r` for every `r`.
157
+
158
+ (In a Banach algebra, the natural ordering is given by the positive cone
159
+ which is the closure of the sums of elements `star r * r`.
160
+ This ordering makes the Banach algebra an ordered *-ring.)
161
+ -/
162
+ class star_ordered_ring (R : Type u) [ordered_semiring R] extends star_ring R :=
163
+ (star_mul_self_nonneg : ∀ r : R, 0 ≤ star r * r)
164
+
165
+ lemma star_mul_self_nonneg [ordered_semiring R] [star_ordered_ring R] {r : R} : 0 ≤ star r * r :=
166
+ star_ordered_ring.star_mul_self_nonneg r
You can’t perform that action at this time.
0 commit comments