algebra.order.hom.ringMathlib.Algebra.Order.Hom.Ring

This file has been ported!

Changes since the initial port

The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(last sync)

refactor(tactic/wlog): simplify and speed up wlog (#16495)

Benefits:

  • The tactic is faster
  • The tactic is easier to port to Lean 4

Downside:

  • The tactic doesn't do any heavy-lifting for the user

Zulip thread: https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/wlog/near/296996966

Co-authored-by: Yury G. Kudryashov <urkud@urkud.name> Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -325,9 +325,9 @@ instance order_ring_hom.subsingleton [linear_ordered_field α] [linear_ordered_f
   subsingleton (α →+*o β) :=
 ⟨λ f g, begin
   ext x,
-  by_contra' h,
-  wlog h : f x < g x using [f g, g f],
-  { exact ne.lt_or_lt h },
+  by_contra' h' : f x ≠ g x,
+  wlog h : f x < g x,
+  { exact this g f x (ne.symm h') (h'.lt_or_lt.resolve_left h), },
   obtain ⟨q, hf, hg⟩ := exists_rat_btwn h,
   rw ←map_rat_cast f at hf,
   rw ←map_rat_cast g at hg,

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(first ported)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -626,8 +626,8 @@ instance OrderRingHom.subsingleton [LinearOrderedField α] [LinearOrderedField 
     wlog h : f x < g x
     · exact this g f x (Ne.symm h') (h'.lt_or_lt.resolve_left h)
     obtain ⟨q, hf, hg⟩ := exists_rat_btwn h
-    rw [← map_ratCast f] at hf 
-    rw [← map_ratCast g] at hg 
+    rw [← map_ratCast f] at hf
+    rw [← map_ratCast g] at hg
     exact
       (lt_asymm ((OrderHomClass.mono g).reflect_lt hg) <|
           (OrderHomClass.mono f).reflect_lt hf).elim⟩
Diff
@@ -73,57 +73,45 @@ structure OrderRingIso (α β : Type _) [Mul α] [Add α] [LE α] [Mul β] [Add
 
 infixl:25 " ≃+*o " => OrderRingIso
 
-#print OrderRingHomClass /-
 /-- `order_ring_hom_class F α β` states that `F` is a type of ordered semiring homomorphisms.
 You should extend this typeclass when you extend `order_ring_hom`. -/
 class OrderRingHomClass (F : Type _) (α β : outParam <| Type _) [NonAssocSemiring α] [Preorder α]
     [NonAssocSemiring β] [Preorder β] extends RingHomClass F α β where
   Monotone (f : F) : Monotone f
 #align order_ring_hom_class OrderRingHomClass
--/
 
-#print OrderRingIsoClass /-
 /-- `order_ring_iso_class F α β` states that `F` is a type of ordered semiring isomorphisms.
 You should extend this class when you extend `order_ring_iso`. -/
 class OrderRingIsoClass (F : Type _) (α β : outParam (Type _)) [Mul α] [Add α] [LE α] [Mul β]
     [Add β] [LE β] extends RingEquivClass F α β where
   map_le_map_iff (f : F) {a b : α} : f a ≤ f b ↔ a ≤ b
 #align order_ring_iso_class OrderRingIsoClass
--/
 
-#print OrderRingHomClass.toOrderAddMonoidHomClass /-
 -- See note [lower priority instance]
 instance (priority := 100) OrderRingHomClass.toOrderAddMonoidHomClass [NonAssocSemiring α]
     [Preorder α] [NonAssocSemiring β] [Preorder β] [OrderRingHomClass F α β] :
     OrderAddMonoidHomClass F α β :=
   { ‹OrderRingHomClass F α β› with }
 #align order_ring_hom_class.to_order_add_monoid_hom_class OrderRingHomClass.toOrderAddMonoidHomClass
--/
 
-#print OrderRingHomClass.toOrderMonoidWithZeroHomClass /-
 -- See note [lower priority instance]
 instance (priority := 100) OrderRingHomClass.toOrderMonoidWithZeroHomClass [NonAssocSemiring α]
     [Preorder α] [NonAssocSemiring β] [Preorder β] [OrderRingHomClass F α β] :
     OrderMonoidWithZeroHomClass F α β :=
   { ‹OrderRingHomClass F α β› with }
 #align order_ring_hom_class.to_order_monoid_with_zero_hom_class OrderRingHomClass.toOrderMonoidWithZeroHomClass
--/
 
-#print OrderRingIsoClass.toOrderIsoClass /-
 -- See note [lower instance priority]
 instance (priority := 100) OrderRingIsoClass.toOrderIsoClass [Mul α] [Add α] [LE α] [Mul β] [Add β]
     [LE β] [OrderRingIsoClass F α β] : OrderIsoClass F α β :=
   { ‹OrderRingIsoClass F α β› with }
 #align order_ring_iso_class.to_order_iso_class OrderRingIsoClass.toOrderIsoClass
--/
 
-#print OrderRingIsoClass.toOrderRingHomClass /-
 -- See note [lower instance priority]
 instance (priority := 100) OrderRingIsoClass.toOrderRingHomClass [NonAssocSemiring α] [Preorder α]
     [NonAssocSemiring β] [Preorder β] [OrderRingIsoClass F α β] : OrderRingHomClass F α β :=
   { ‹OrderRingIsoClass F α β› with Monotone := fun f => OrderHomClass.mono f }
 #align order_ring_iso_class.to_order_ring_hom_class OrderRingIsoClass.toOrderRingHomClass
--/
 
 instance [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β] [Preorder β]
     [OrderRingHomClass F α β] : CoeTC F (α →+*o β) :=
Diff
@@ -183,7 +183,7 @@ theorem toFun_eq_coe (f : α →+*o β) : f.toFun = ⇑f :=
 #print OrderRingHom.ext /-
 @[ext]
 theorem ext {f g : α →+*o β} (h : ∀ a, f a = g a) : f = g :=
-  FunLike.ext f g h
+  DFunLike.ext f g h
 #align order_ring_hom.ext OrderRingHom.ext
 -/
 
@@ -269,7 +269,7 @@ theorem coe_copy (f : α →+*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f
 
 #print OrderRingHom.copy_eq /-
 theorem copy_eq (f : α →+*o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
-  FunLike.ext' h
+  DFunLike.ext' h
 #align order_ring_hom.copy_eq OrderRingHom.copy_eq
 -/
 
@@ -368,7 +368,7 @@ theorem id_comp (f : α →+*o β) : (OrderRingHom.id β).comp f = f :=
 #print OrderRingHom.cancel_right /-
 theorem cancel_right {f₁ f₂ : β →+*o γ} {g : α →+*o β} (hg : Surjective g) :
     f₁.comp g = f₂.comp g ↔ f₁ = f₂ :=
-  ⟨fun h => ext <| hg.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
+  ⟨fun h => ext <| hg.forall.2 <| DFunLike.ext_iff.1 h, congr_arg _⟩
 #align order_ring_hom.cancel_right OrderRingHom.cancel_right
 -/
 
@@ -387,7 +387,7 @@ instance [Preorder β] : Preorder (OrderRingHom α β) :=
   Preorder.lift (coeFn : _ → α → β)
 
 instance [PartialOrder β] : PartialOrder (OrderRingHom α β) :=
-  PartialOrder.lift _ FunLike.coe_injective
+  PartialOrder.lift _ DFunLike.coe_injective
 
 end OrderRingHom
 
@@ -421,7 +421,7 @@ instance : OrderRingIsoClass (α ≃+*o β) α β
 /-- Helper instance for when there's too many metavariables to apply `fun_like.has_coe_to_fun`
 directly. -/
 instance : CoeFun (α ≃+*o β) fun _ => α → β :=
-  FunLike.hasCoeToFun
+  DFunLike.hasCoeToFun
 
 #print OrderRingIso.toFun_eq_coe /-
 theorem toFun_eq_coe (f : α ≃+*o β) : f.toFun = f :=
@@ -432,7 +432,7 @@ theorem toFun_eq_coe (f : α ≃+*o β) : f.toFun = f :=
 #print OrderRingIso.ext /-
 @[ext]
 theorem ext {f g : α ≃+*o β} (h : ∀ a, f a = g a) : f = g :=
-  FunLike.ext f g h
+  DFunLike.ext f g h
 #align order_ring_iso.ext OrderRingIso.ext
 -/
 
@@ -610,7 +610,7 @@ theorem coe_toOrderRingHom_refl : (OrderRingIso.refl α : α →+*o α) = OrderR
 
 #print OrderRingIso.toOrderRingHom_injective /-
 theorem toOrderRingHom_injective : Injective (toOrderRingHom : α ≃+*o β → α →+*o β) := fun f g h =>
-  FunLike.coe_injective <| by convert FunLike.ext'_iff.1 h
+  DFunLike.coe_injective <| by convert DFunLike.ext'_iff.1 h
 #align order_ring_iso.to_order_ring_hom_injective OrderRingIso.toOrderRingHom_injective
 -/
 
Diff
@@ -634,7 +634,7 @@ instance OrderRingHom.subsingleton [LinearOrderedField α] [LinearOrderedField 
     Subsingleton (α →+*o β) :=
   ⟨fun f g => by
     ext x
-    by_contra' h' : f x ≠ g x
+    by_contra! h' : f x ≠ g x
     wlog h : f x < g x
     · exact this g f x (Ne.symm h') (h'.lt_or_lt.resolve_left h)
     obtain ⟨q, hf, hg⟩ := exists_rat_btwn h
Diff
@@ -3,12 +3,12 @@ Copyright (c) 2022 Alex J. Best, Yaël Dillies. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Alex J. Best, Yaël Dillies
 -/
-import Mathbin.Algebra.Order.Archimedean
-import Mathbin.Algebra.Order.Hom.Monoid
-import Mathbin.Algebra.Order.Ring.Defs
-import Mathbin.Algebra.Ring.Equiv
-import Mathbin.Tactic.ByContra
-import Mathbin.Tactic.Wlog
+import Algebra.Order.Archimedean
+import Algebra.Order.Hom.Monoid
+import Algebra.Order.Ring.Defs
+import Algebra.Ring.Equiv
+import Tactic.ByContra
+import Tactic.Wlog
 
 #align_import algebra.order.hom.ring from "leanprover-community/mathlib"@"ee05e9ce1322178f0c12004eb93c00d2c8c00ed2"
 
Diff
@@ -163,7 +163,7 @@ instance : OrderRingHomClass (α →+*o β) α β
     where
   coe f := f.toFun
   coe_injective' f g h := by obtain ⟨⟨_, _⟩, _⟩ := f <;> obtain ⟨⟨_, _⟩, _⟩ := g <;> congr
-  map_mul f := f.map_mul'
+  map_hMul f := f.map_mul'
   map_one f := f.map_one'
   map_add f := f.map_add'
   map_zero f := f.map_zero'
@@ -413,7 +413,7 @@ instance : OrderRingIsoClass (α ≃+*o β) α β
   inv f := f.invFun
   coe_injective' f g h₁ h₂ := by obtain ⟨⟨_, _⟩, _⟩ := f; obtain ⟨⟨_, _⟩, _⟩ := g; congr
   map_add f := f.map_add'
-  map_mul f := f.map_mul'
+  map_hMul f := f.map_mul'
   map_le_map_iff f _ _ := f.map_le_map_iff'
   left_inv f := f.left_inv
   right_inv f := f.right_inv
Diff
@@ -301,26 +301,26 @@ theorem id_apply (a : α) : OrderRingHom.id α a = a :=
 #align order_ring_hom.id_apply OrderRingHom.id_apply
 -/
 
-#print OrderRingHom.coe_RingHom_id /-
+#print OrderRingHom.coe_ringHom_id /-
 @[simp]
-theorem coe_RingHom_id : (OrderRingHom.id α : α →+* α) = RingHom.id α :=
+theorem coe_ringHom_id : (OrderRingHom.id α : α →+* α) = RingHom.id α :=
   rfl
-#align order_ring_hom.coe_ring_hom_id OrderRingHom.coe_RingHom_id
+#align order_ring_hom.coe_ring_hom_id OrderRingHom.coe_ringHom_id
 -/
 
-#print OrderRingHom.coe_OrderAddMonoidHom_id /-
+#print OrderRingHom.coe_orderAddMonoidHom_id /-
 @[simp]
-theorem coe_OrderAddMonoidHom_id : (OrderRingHom.id α : α →+o α) = OrderAddMonoidHom.id α :=
+theorem coe_orderAddMonoidHom_id : (OrderRingHom.id α : α →+o α) = OrderAddMonoidHom.id α :=
   rfl
-#align order_ring_hom.coe_order_add_monoid_hom_id OrderRingHom.coe_OrderAddMonoidHom_id
+#align order_ring_hom.coe_order_add_monoid_hom_id OrderRingHom.coe_orderAddMonoidHom_id
 -/
 
-#print OrderRingHom.coe_OrderMonoidWithZeroHom_id /-
+#print OrderRingHom.coe_orderMonoidWithZeroHom_id /-
 @[simp]
-theorem coe_OrderMonoidWithZeroHom_id :
+theorem coe_orderMonoidWithZeroHom_id :
     (OrderRingHom.id α : α →*₀o α) = OrderMonoidWithZeroHom.id α :=
   rfl
-#align order_ring_hom.coe_order_monoid_with_zero_hom_id OrderRingHom.coe_OrderMonoidWithZeroHom_id
+#align order_ring_hom.coe_order_monoid_with_zero_hom_id OrderRingHom.coe_orderMonoidWithZeroHom_id
 -/
 
 #print OrderRingHom.comp /-
Diff
@@ -2,11 +2,6 @@
 Copyright (c) 2022 Alex J. Best, Yaël Dillies. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Alex J. Best, Yaël Dillies
-
-! This file was ported from Lean 3 source module algebra.order.hom.ring
-! leanprover-community/mathlib commit ee05e9ce1322178f0c12004eb93c00d2c8c00ed2
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Algebra.Order.Archimedean
 import Mathbin.Algebra.Order.Hom.Monoid
@@ -15,6 +10,8 @@ import Mathbin.Algebra.Ring.Equiv
 import Mathbin.Tactic.ByContra
 import Mathbin.Tactic.Wlog
 
+#align_import algebra.order.hom.ring from "leanprover-community/mathlib"@"ee05e9ce1322178f0c12004eb93c00d2c8c00ed2"
+
 /-!
 # Ordered ring homomorphisms
 
Diff
@@ -59,9 +59,9 @@ structure OrderRingHom (α β : Type _) [NonAssocSemiring α] [Preorder α] [Non
 /-- Reinterpret an ordered ring homomorphism as a ring homomorphism. -/
 add_decl_doc OrderRingHom.toRingHom
 
--- mathport name: «expr →+*o »
 infixl:25 " →+*o " => OrderRingHom
 
+#print OrderRingIso /-
 /-- `order_ring_hom α β` is the type of order-preserving semiring isomorphisms between `α` and `β`.
 
 When possible, instead of parametrizing results over `(f : order_ring_iso α β)`,
@@ -72,8 +72,8 @@ structure OrderRingIso (α β : Type _) [Mul α] [Add α] [LE α] [Mul β] [Add
     α ≃+* β where
   map_le_map_iff' {a b : α} : to_fun a ≤ to_fun b ↔ a ≤ b
 #align order_ring_iso OrderRingIso
+-/
 
--- mathport name: «expr ≃+*o »
 infixl:25 " ≃+*o " => OrderRingIso
 
 #print OrderRingHomClass /-
@@ -120,11 +120,13 @@ instance (priority := 100) OrderRingIsoClass.toOrderIsoClass [Mul α] [Add α] [
 #align order_ring_iso_class.to_order_iso_class OrderRingIsoClass.toOrderIsoClass
 -/
 
+#print OrderRingIsoClass.toOrderRingHomClass /-
 -- See note [lower instance priority]
 instance (priority := 100) OrderRingIsoClass.toOrderRingHomClass [NonAssocSemiring α] [Preorder α]
     [NonAssocSemiring β] [Preorder β] [OrderRingIsoClass F α β] : OrderRingHomClass F α β :=
   { ‹OrderRingIsoClass F α β› with Monotone := fun f => OrderHomClass.mono f }
 #align order_ring_iso_class.to_order_ring_hom_class OrderRingIsoClass.toOrderRingHomClass
+-/
 
 instance [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β] [Preorder β]
     [OrderRingHomClass F α β] : CoeTC F (α →+*o β) :=
@@ -175,76 +177,104 @@ directly. -/
 instance : CoeFun (α →+*o β) fun _ => α → β :=
   ⟨fun f => f.toFun⟩
 
+#print OrderRingHom.toFun_eq_coe /-
 theorem toFun_eq_coe (f : α →+*o β) : f.toFun = ⇑f :=
   rfl
 #align order_ring_hom.to_fun_eq_coe OrderRingHom.toFun_eq_coe
+-/
 
+#print OrderRingHom.ext /-
 @[ext]
 theorem ext {f g : α →+*o β} (h : ∀ a, f a = g a) : f = g :=
   FunLike.ext f g h
 #align order_ring_hom.ext OrderRingHom.ext
+-/
 
+#print OrderRingHom.toRingHom_eq_coe /-
 @[simp]
 theorem toRingHom_eq_coe (f : α →+*o β) : f.toRingHom = f :=
   RingHom.ext fun _ => rfl
 #align order_ring_hom.to_ring_hom_eq_coe OrderRingHom.toRingHom_eq_coe
+-/
 
+#print OrderRingHom.toOrderAddMonoidHom_eq_coe /-
 @[simp]
 theorem toOrderAddMonoidHom_eq_coe (f : α →+*o β) : f.toOrderAddMonoidHom = f :=
   rfl
 #align order_ring_hom.to_order_add_monoid_hom_eq_coe OrderRingHom.toOrderAddMonoidHom_eq_coe
+-/
 
 /- warning: order_ring_hom.to_order_monoid_with_zero_hom_eq_coe clashes with order_ring_hom.to_order_monoid_with_zero_hom -> OrderRingHom.toOrderMonoidWithZeroHom
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.to_order_monoid_with_zero_hom_eq_coe OrderRingHom.toOrderMonoidWithZeroHomₓ'. -/
+#print OrderRingHom.toOrderMonoidWithZeroHom /-
 @[simp]
 theorem toOrderMonoidWithZeroHom (f : α →+*o β) : f.toOrderMonoidWithZeroHom = f :=
   rfl
 #align order_ring_hom.to_order_monoid_with_zero_hom_eq_coe OrderRingHom.toOrderMonoidWithZeroHom
+-/
 
+#print OrderRingHom.coe_coe_ringHom /-
 @[simp]
 theorem coe_coe_ringHom (f : α →+*o β) : ⇑(f : α →+* β) = f :=
   rfl
 #align order_ring_hom.coe_coe_ring_hom OrderRingHom.coe_coe_ringHom
+-/
 
+#print OrderRingHom.coe_coe_orderAddMonoidHom /-
 @[simp]
 theorem coe_coe_orderAddMonoidHom (f : α →+*o β) : ⇑(f : α →+o β) = f :=
   rfl
 #align order_ring_hom.coe_coe_order_add_monoid_hom OrderRingHom.coe_coe_orderAddMonoidHom
+-/
 
+#print OrderRingHom.coe_coe_orderMonoidWithZeroHom /-
 @[simp]
 theorem coe_coe_orderMonoidWithZeroHom (f : α →+*o β) : ⇑(f : α →*₀o β) = f :=
   rfl
 #align order_ring_hom.coe_coe_order_monoid_with_zero_hom OrderRingHom.coe_coe_orderMonoidWithZeroHom
+-/
 
+#print OrderRingHom.coe_ringHom_apply /-
 @[norm_cast]
 theorem coe_ringHom_apply (f : α →+*o β) (a : α) : (f : α →+* β) a = f a :=
   rfl
 #align order_ring_hom.coe_ring_hom_apply OrderRingHom.coe_ringHom_apply
+-/
 
+#print OrderRingHom.coe_orderAddMonoidHom_apply /-
 @[norm_cast]
 theorem coe_orderAddMonoidHom_apply (f : α →+*o β) (a : α) : (f : α →+o β) a = f a :=
   rfl
 #align order_ring_hom.coe_order_add_monoid_hom_apply OrderRingHom.coe_orderAddMonoidHom_apply
+-/
 
+#print OrderRingHom.coe_orderMonoidWithZeroHom_apply /-
 @[norm_cast]
 theorem coe_orderMonoidWithZeroHom_apply (f : α →+*o β) (a : α) : (f : α →*₀o β) a = f a :=
   rfl
 #align order_ring_hom.coe_order_monoid_with_zero_hom_apply OrderRingHom.coe_orderMonoidWithZeroHom_apply
+-/
 
+#print OrderRingHom.copy /-
 /-- Copy of a `order_ring_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
 protected def copy (f : α →+*o β) (f' : α → β) (h : f' = f) : α →+*o β :=
   { f.toRingHom.copy f' h, f.toOrderAddMonoidHom.copy f' h with }
 #align order_ring_hom.copy OrderRingHom.copy
+-/
 
+#print OrderRingHom.coe_copy /-
 @[simp]
 theorem coe_copy (f : α →+*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
   rfl
 #align order_ring_hom.coe_copy OrderRingHom.coe_copy
+-/
 
+#print OrderRingHom.copy_eq /-
 theorem copy_eq (f : α →+*o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
 #align order_ring_hom.copy_eq OrderRingHom.copy_eq
+-/
 
 variable (α)
 
@@ -258,33 +288,43 @@ protected def id : α →+*o α :=
 instance : Inhabited (α →+*o α) :=
   ⟨OrderRingHom.id α⟩
 
+#print OrderRingHom.coe_id /-
 @[simp]
 theorem coe_id : ⇑(OrderRingHom.id α) = id :=
   rfl
 #align order_ring_hom.coe_id OrderRingHom.coe_id
+-/
 
 variable {α}
 
+#print OrderRingHom.id_apply /-
 @[simp]
 theorem id_apply (a : α) : OrderRingHom.id α a = a :=
   rfl
 #align order_ring_hom.id_apply OrderRingHom.id_apply
+-/
 
+#print OrderRingHom.coe_RingHom_id /-
 @[simp]
 theorem coe_RingHom_id : (OrderRingHom.id α : α →+* α) = RingHom.id α :=
   rfl
 #align order_ring_hom.coe_ring_hom_id OrderRingHom.coe_RingHom_id
+-/
 
+#print OrderRingHom.coe_OrderAddMonoidHom_id /-
 @[simp]
 theorem coe_OrderAddMonoidHom_id : (OrderRingHom.id α : α →+o α) = OrderAddMonoidHom.id α :=
   rfl
 #align order_ring_hom.coe_order_add_monoid_hom_id OrderRingHom.coe_OrderAddMonoidHom_id
+-/
 
+#print OrderRingHom.coe_OrderMonoidWithZeroHom_id /-
 @[simp]
 theorem coe_OrderMonoidWithZeroHom_id :
     (OrderRingHom.id α : α →*₀o α) = OrderMonoidWithZeroHom.id α :=
   rfl
 #align order_ring_hom.coe_order_monoid_with_zero_hom_id OrderRingHom.coe_OrderMonoidWithZeroHom_id
+-/
 
 #print OrderRingHom.comp /-
 /-- Composition of two `order_ring_hom`s as an `order_ring_hom`. -/
@@ -293,40 +333,54 @@ protected def comp (f : β →+*o γ) (g : α →+*o β) : α →+*o γ :=
 #align order_ring_hom.comp OrderRingHom.comp
 -/
 
+#print OrderRingHom.coe_comp /-
 @[simp]
 theorem coe_comp (f : β →+*o γ) (g : α →+*o β) : ⇑(f.comp g) = f ∘ g :=
   rfl
 #align order_ring_hom.coe_comp OrderRingHom.coe_comp
+-/
 
+#print OrderRingHom.comp_apply /-
 @[simp]
 theorem comp_apply (f : β →+*o γ) (g : α →+*o β) (a : α) : f.comp g a = f (g a) :=
   rfl
 #align order_ring_hom.comp_apply OrderRingHom.comp_apply
+-/
 
+#print OrderRingHom.comp_assoc /-
 theorem comp_assoc (f : γ →+*o δ) (g : β →+*o γ) (h : α →+*o β) :
     (f.comp g).comp h = f.comp (g.comp h) :=
   rfl
 #align order_ring_hom.comp_assoc OrderRingHom.comp_assoc
+-/
 
+#print OrderRingHom.comp_id /-
 @[simp]
 theorem comp_id (f : α →+*o β) : f.comp (OrderRingHom.id α) = f :=
   ext fun x => rfl
 #align order_ring_hom.comp_id OrderRingHom.comp_id
+-/
 
+#print OrderRingHom.id_comp /-
 @[simp]
 theorem id_comp (f : α →+*o β) : (OrderRingHom.id β).comp f = f :=
   ext fun x => rfl
 #align order_ring_hom.id_comp OrderRingHom.id_comp
+-/
 
+#print OrderRingHom.cancel_right /-
 theorem cancel_right {f₁ f₂ : β →+*o γ} {g : α →+*o β} (hg : Surjective g) :
     f₁.comp g = f₂.comp g ↔ f₁ = f₂ :=
   ⟨fun h => ext <| hg.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
 #align order_ring_hom.cancel_right OrderRingHom.cancel_right
+-/
 
+#print OrderRingHom.cancel_left /-
 theorem cancel_left {f : β →+*o γ} {g₁ g₂ : α →+*o β} (hf : Injective f) :
     f.comp g₁ = f.comp g₂ ↔ g₁ = g₂ :=
   ⟨fun h => ext fun a => hf <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
 #align order_ring_hom.cancel_left OrderRingHom.cancel_left
+-/
 
 end Preorder
 
@@ -349,10 +403,12 @@ section LE
 
 variable [Mul α] [Add α] [LE α] [Mul β] [Add β] [LE β] [Mul γ] [Add γ] [LE γ] [Mul δ] [Add δ] [LE δ]
 
+#print OrderRingIso.toOrderIso /-
 /-- Reinterpret an ordered ring isomorphism as an order isomorphism. -/
 def toOrderIso (f : α ≃+*o β) : α ≃o β :=
   ⟨f.toRingEquiv.toEquiv, fun _ _ => f.map_le_map_iff'⟩
 #align order_ring_iso.to_order_iso OrderRingIso.toOrderIso
+-/
 
 instance : OrderRingIsoClass (α ≃+*o β) α β
     where
@@ -370,52 +426,70 @@ directly. -/
 instance : CoeFun (α ≃+*o β) fun _ => α → β :=
   FunLike.hasCoeToFun
 
+#print OrderRingIso.toFun_eq_coe /-
 theorem toFun_eq_coe (f : α ≃+*o β) : f.toFun = f :=
   rfl
 #align order_ring_iso.to_fun_eq_coe OrderRingIso.toFun_eq_coe
+-/
 
+#print OrderRingIso.ext /-
 @[ext]
 theorem ext {f g : α ≃+*o β} (h : ∀ a, f a = g a) : f = g :=
   FunLike.ext f g h
 #align order_ring_iso.ext OrderRingIso.ext
+-/
 
+#print OrderRingIso.coe_mk /-
 @[simp]
 theorem coe_mk (e : α ≃+* β) (h) : ⇑(⟨e, h⟩ : α ≃+*o β) = e :=
   rfl
 #align order_ring_iso.coe_mk OrderRingIso.coe_mk
+-/
 
+#print OrderRingIso.mk_coe /-
 @[simp]
 theorem mk_coe (e : α ≃+*o β) (h) : (⟨e, h⟩ : α ≃+*o β) = e :=
   ext fun _ => rfl
 #align order_ring_iso.mk_coe OrderRingIso.mk_coe
+-/
 
+#print OrderRingIso.toRingEquiv_eq_coe /-
 @[simp]
 theorem toRingEquiv_eq_coe (f : α ≃+*o β) : f.toRingEquiv = f :=
   RingEquiv.ext fun _ => rfl
 #align order_ring_iso.to_ring_equiv_eq_coe OrderRingIso.toRingEquiv_eq_coe
+-/
 
+#print OrderRingIso.toOrderIso_eq_coe /-
 @[simp]
 theorem toOrderIso_eq_coe (f : α ≃+*o β) : f.toOrderIso = f :=
   OrderIso.ext rfl
 #align order_ring_iso.to_order_iso_eq_coe OrderRingIso.toOrderIso_eq_coe
+-/
 
+#print OrderRingIso.coe_toRingEquiv /-
 @[simp, norm_cast]
 theorem coe_toRingEquiv (f : α ≃+*o β) : ⇑(f : α ≃+* β) = f :=
   rfl
 #align order_ring_iso.coe_to_ring_equiv OrderRingIso.coe_toRingEquiv
+-/
 
+#print OrderRingIso.coe_toOrderIso /-
 @[simp, norm_cast]
 theorem coe_toOrderIso (f : α ≃+*o β) : ⇑(f : α ≃o β) = f :=
   rfl
 #align order_ring_iso.coe_to_order_iso OrderRingIso.coe_toOrderIso
+-/
 
 variable (α)
 
+#print OrderRingIso.refl /-
 /-- The identity map as an ordered ring isomorphism. -/
 @[refl]
 protected def refl : α ≃+*o α :=
   ⟨RingEquiv.refl α, fun _ _ => Iff.rfl⟩
 #align order_ring_iso.refl OrderRingIso.refl
+-/
 
 instance : Inhabited (α ≃+*o α) :=
   ⟨OrderRingIso.refl α⟩
@@ -427,60 +501,80 @@ theorem refl_apply (x : α) : OrderRingIso.refl α x = x :=
 #align order_ring_iso.refl_apply OrderRingIso.refl_apply
 -/
 
+#print OrderRingIso.coe_ringEquiv_refl /-
 @[simp]
 theorem coe_ringEquiv_refl : (OrderRingIso.refl α : α ≃+* α) = RingEquiv.refl α :=
   rfl
 #align order_ring_iso.coe_ring_equiv_refl OrderRingIso.coe_ringEquiv_refl
+-/
 
+#print OrderRingIso.coe_orderIso_refl /-
 @[simp]
 theorem coe_orderIso_refl : (OrderRingIso.refl α : α ≃o α) = OrderIso.refl α :=
   rfl
 #align order_ring_iso.coe_order_iso_refl OrderRingIso.coe_orderIso_refl
+-/
 
 variable {α}
 
+#print OrderRingIso.symm /-
 /-- The inverse of an ordered ring isomorphism as an ordered ring isomorphism. -/
 @[symm]
 protected def symm (e : α ≃+*o β) : β ≃+*o α :=
   ⟨e.toRingEquiv.symm, fun a b => by
     erw [← map_le_map_iff e, e.1.apply_symm_apply, e.1.apply_symm_apply]⟩
 #align order_ring_iso.symm OrderRingIso.symm
+-/
 
+#print OrderRingIso.Simps.symm_apply /-
 /-- See Note [custom simps projection] -/
 def Simps.symm_apply (e : α ≃+*o β) : β → α :=
   e.symm
 #align order_ring_iso.simps.symm_apply OrderRingIso.Simps.symm_apply
+-/
 
+#print OrderRingIso.symm_symm /-
 @[simp]
 theorem symm_symm (e : α ≃+*o β) : e.symm.symm = e :=
   ext fun _ => rfl
 #align order_ring_iso.symm_symm OrderRingIso.symm_symm
+-/
 
+#print OrderRingIso.trans /-
 /-- Composition of `order_ring_iso`s as an `order_ring_iso`. -/
 @[trans, simps]
 protected def trans (f : α ≃+*o β) (g : β ≃+*o γ) : α ≃+*o γ :=
   ⟨f.toRingEquiv.trans g.toRingEquiv, fun a b => (map_le_map_iff g).trans (map_le_map_iff f)⟩
 #align order_ring_iso.trans OrderRingIso.trans
+-/
 
+#print OrderRingIso.trans_apply /-
 @[simp]
 theorem trans_apply (f : α ≃+*o β) (g : β ≃+*o γ) (a : α) : f.trans g a = g (f a) :=
   rfl
 #align order_ring_iso.trans_apply OrderRingIso.trans_apply
+-/
 
+#print OrderRingIso.self_trans_symm /-
 @[simp]
 theorem self_trans_symm (e : α ≃+*o β) : e.trans e.symm = OrderRingIso.refl α :=
   ext e.left_inv
 #align order_ring_iso.self_trans_symm OrderRingIso.self_trans_symm
+-/
 
+#print OrderRingIso.symm_trans_self /-
 @[simp]
 theorem symm_trans_self (e : α ≃+*o β) : e.symm.trans e = OrderRingIso.refl β :=
   ext e.right_inv
 #align order_ring_iso.symm_trans_self OrderRingIso.symm_trans_self
+-/
 
+#print OrderRingIso.symm_bijective /-
 theorem symm_bijective : Bijective (OrderRingIso.symm : α ≃+*o β → β ≃+*o α) :=
   ⟨fun f g h => f.symm_symm.symm.trans <| (congr_arg OrderRingIso.symm h).trans g.symm_symm,
     fun f => ⟨f.symm, f.symm_symm⟩⟩
 #align order_ring_iso.symm_bijective OrderRingIso.symm_bijective
+-/
 
 end LE
 
@@ -489,29 +583,39 @@ section NonAssocSemiring
 variable [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β] [Preorder β] [NonAssocSemiring γ]
   [Preorder γ]
 
+#print OrderRingIso.toOrderRingHom /-
 /-- Reinterpret an ordered ring isomorphism as an ordered ring homomorphism. -/
 def toOrderRingHom (f : α ≃+*o β) : α →+*o β :=
   ⟨f.toRingEquiv.toRingHom, fun a b => (map_le_map_iff f).2⟩
 #align order_ring_iso.to_order_ring_hom OrderRingIso.toOrderRingHom
+-/
 
+#print OrderRingIso.toOrderRingHom_eq_coe /-
 @[simp]
 theorem toOrderRingHom_eq_coe (f : α ≃+*o β) : f.toOrderRingHom = f :=
   rfl
 #align order_ring_iso.to_order_ring_hom_eq_coe OrderRingIso.toOrderRingHom_eq_coe
+-/
 
+#print OrderRingIso.coe_toOrderRingHom /-
 @[simp, norm_cast]
 theorem coe_toOrderRingHom (f : α ≃+*o β) : ⇑(f : α →+*o β) = f :=
   rfl
 #align order_ring_iso.coe_to_order_ring_hom OrderRingIso.coe_toOrderRingHom
+-/
 
+#print OrderRingIso.coe_toOrderRingHom_refl /-
 @[simp]
 theorem coe_toOrderRingHom_refl : (OrderRingIso.refl α : α →+*o α) = OrderRingHom.id α :=
   rfl
 #align order_ring_iso.coe_to_order_ring_hom_refl OrderRingIso.coe_toOrderRingHom_refl
+-/
 
+#print OrderRingIso.toOrderRingHom_injective /-
 theorem toOrderRingHom_injective : Injective (toOrderRingHom : α ≃+*o β → α →+*o β) := fun f g h =>
   FunLike.coe_injective <| by convert FunLike.ext'_iff.1 h
 #align order_ring_iso.to_order_ring_hom_injective OrderRingIso.toOrderRingHom_injective
+-/
 
 end NonAssocSemiring
 
@@ -545,17 +649,21 @@ instance OrderRingHom.subsingleton [LinearOrderedField α] [LinearOrderedField 
 #align order_ring_hom.subsingleton OrderRingHom.subsingleton
 -/
 
+#print OrderRingIso.subsingleton_right /-
 /-- There is at most one ordered ring isomorphism between a linear ordered field and an archimedean
 linear ordered field. -/
 instance OrderRingIso.subsingleton_right [LinearOrderedField α] [LinearOrderedField β]
     [Archimedean β] : Subsingleton (α ≃+*o β) :=
   OrderRingIso.toOrderRingHom_injective.Subsingleton
 #align order_ring_iso.subsingleton_right OrderRingIso.subsingleton_right
+-/
 
+#print OrderRingIso.subsingleton_left /-
 /-- There is at most one ordered ring isomorphism between an archimedean linear ordered field and a
 linear ordered field. -/
 instance OrderRingIso.subsingleton_left [LinearOrderedField α] [Archimedean α]
     [LinearOrderedField β] : Subsingleton (α ≃+*o β) :=
   OrderRingIso.symm_bijective.Injective.Subsingleton
 #align order_ring_iso.subsingleton_left OrderRingIso.subsingleton_left
+-/
 
Diff
@@ -51,7 +51,7 @@ you should parametrize over `(F : Type*) [order_ring_hom_class F α β] (f : F)`
 
 When you extend this structure, make sure to extend `order_ring_hom_class`. -/
 structure OrderRingHom (α β : Type _) [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β]
-  [Preorder β] extends α →+* β where
+    [Preorder β] extends α →+* β where
   monotone' : Monotone to_fun
 #align order_ring_hom OrderRingHom
 -/
@@ -69,7 +69,7 @@ you should parametrize over `(F : Type*) [order_ring_iso_class F α β] (f : F)`
 
 When you extend this structure, make sure to extend `order_ring_iso_class`. -/
 structure OrderRingIso (α β : Type _) [Mul α] [Add α] [LE α] [Mul β] [Add β] [LE β] extends
-  α ≃+* β where
+    α ≃+* β where
   map_le_map_iff' {a b : α} : to_fun a ≤ to_fun b ↔ a ≤ b
 #align order_ring_iso OrderRingIso
 
@@ -80,7 +80,7 @@ infixl:25 " ≃+*o " => OrderRingIso
 /-- `order_ring_hom_class F α β` states that `F` is a type of ordered semiring homomorphisms.
 You should extend this typeclass when you extend `order_ring_hom`. -/
 class OrderRingHomClass (F : Type _) (α β : outParam <| Type _) [NonAssocSemiring α] [Preorder α]
-  [NonAssocSemiring β] [Preorder β] extends RingHomClass F α β where
+    [NonAssocSemiring β] [Preorder β] extends RingHomClass F α β where
   Monotone (f : F) : Monotone f
 #align order_ring_hom_class OrderRingHomClass
 -/
@@ -89,7 +89,7 @@ class OrderRingHomClass (F : Type _) (α β : outParam <| Type _) [NonAssocSemir
 /-- `order_ring_iso_class F α β` states that `F` is a type of ordered semiring isomorphisms.
 You should extend this class when you extend `order_ring_iso`. -/
 class OrderRingIsoClass (F : Type _) (α β : outParam (Type _)) [Mul α] [Add α] [LE α] [Mul β]
-  [Add β] [LE β] extends RingEquivClass F α β where
+    [Add β] [LE β] extends RingEquivClass F α β where
   map_le_map_iff (f : F) {a b : α} : f a ≤ f b ↔ a ≤ b
 #align order_ring_iso_class OrderRingIsoClass
 -/
@@ -537,8 +537,8 @@ instance OrderRingHom.subsingleton [LinearOrderedField α] [LinearOrderedField 
     wlog h : f x < g x
     · exact this g f x (Ne.symm h') (h'.lt_or_lt.resolve_left h)
     obtain ⟨q, hf, hg⟩ := exists_rat_btwn h
-    rw [← map_ratCast f] at hf
-    rw [← map_ratCast g] at hg
+    rw [← map_ratCast f] at hf 
+    rw [← map_ratCast g] at hg 
     exact
       (lt_asymm ((OrderHomClass.mono g).reflect_lt hg) <|
           (OrderHomClass.mono f).reflect_lt hf).elim⟩
Diff
@@ -62,12 +62,6 @@ add_decl_doc OrderRingHom.toRingHom
 -- mathport name: «expr →+*o »
 infixl:25 " →+*o " => OrderRingHom
 
-/- warning: order_ring_iso -> OrderRingIso is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) (β : Type.{u2}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], Sort.{max (succ u1) (succ u2)}
-but is expected to have type
-  forall (α : Type.{u1}) (β : Type.{u2}) [_inst_1 : Mul.{u1} α] [_inst_2 : Mul.{u2} β] [_inst_3 : Add.{u1} α] [_inst_4 : Add.{u2} β] [_inst_5 : LE.{u1} α] [_inst_6 : LE.{u2} β], Sort.{max (succ u1) (succ u2)}
-Case conversion may be inaccurate. Consider using '#align order_ring_iso OrderRingIsoₓ'. -/
 /-- `order_ring_hom α β` is the type of order-preserving semiring isomorphisms between `α` and `β`.
 
 When possible, instead of parametrizing results over `(f : order_ring_iso α β)`,
@@ -126,12 +120,6 @@ instance (priority := 100) OrderRingIsoClass.toOrderIsoClass [Mul α] [Add α] [
 #align order_ring_iso_class.to_order_iso_class OrderRingIsoClass.toOrderIsoClass
 -/
 
-/- warning: order_ring_iso_class.to_order_ring_hom_class -> OrderRingIsoClass.toOrderRingHomClass is a dubious translation:
-lean 3 declaration is
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : OrderRingIsoClass.{u1, u2, u3} F α β (Distrib.toHasMul.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toHasAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toHasLe.{u2} α _inst_2) (Distrib.toHasMul.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Distrib.toHasAdd.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Preorder.toHasLe.{u3} β _inst_4)], OrderRingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4
-but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : OrderRingIsoClass.{u1, u2, u3} F α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3)) (Distrib.toAdd.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Preorder.toLE.{u3} β _inst_4)], OrderRingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4
-Case conversion may be inaccurate. Consider using '#align order_ring_iso_class.to_order_ring_hom_class OrderRingIsoClass.toOrderRingHomClassₓ'. -/
 -- See note [lower instance priority]
 instance (priority := 100) OrderRingIsoClass.toOrderRingHomClass [NonAssocSemiring α] [Preorder α]
     [NonAssocSemiring β] [Preorder β] [OrderRingIsoClass F α β] : OrderRingHomClass F α β :=
@@ -187,144 +175,73 @@ directly. -/
 instance : CoeFun (α →+*o β) fun _ => α → β :=
   ⟨fun f => f.toFun⟩
 
-/- warning: order_ring_hom.to_fun_eq_coe -> OrderRingHom.toFun_eq_coe is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (RingHom.toFun.{u1, u2} α β _inst_1 _inst_3 (OrderRingHom.toRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (α -> β) (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1))) (MulOneClass.toOne.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3))) (MonoidHom.toOneHom.{u2, u1} α β (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1)) (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) (RingHom.toMonoidHom.{u2, u1} α β _inst_1 _inst_3 (OrderRingHom.toRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f)))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (f : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) f) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.to_fun_eq_coe OrderRingHom.toFun_eq_coeₓ'. -/
 theorem toFun_eq_coe (f : α →+*o β) : f.toFun = ⇑f :=
   rfl
 #align order_ring_hom.to_fun_eq_coe OrderRingHom.toFun_eq_coe
 
-/- warning: order_ring_hom.ext -> OrderRingHom.ext is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.ext OrderRingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : α →+*o β} (h : ∀ a, f a = g a) : f = g :=
   FunLike.ext f g h
 #align order_ring_hom.ext OrderRingHom.ext
 
-/- warning: order_ring_hom.to_ring_hom_eq_coe -> OrderRingHom.toRingHom_eq_coe is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (RingHom.{u1, u2} α β _inst_1 _inst_3) (OrderRingHom.toRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (RingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (RingHom.{u2, u1} α β _inst_1 _inst_3) (OrderRingHom.toRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.to_ring_hom_eq_coe OrderRingHom.toRingHom_eq_coeₓ'. -/
 @[simp]
 theorem toRingHom_eq_coe (f : α →+*o β) : f.toRingHom = f :=
   RingHom.ext fun _ => rfl
 #align order_ring_hom.to_ring_hom_eq_coe OrderRingHom.toRingHom_eq_coe
 
-/- warning: order_ring_hom.to_order_add_monoid_hom_eq_coe -> OrderRingHom.toOrderAddMonoidHom_eq_coe is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (OrderRingHom.toOrderAddMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (OrderAddMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) (OrderRingHom.toOrderAddMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f) (OrderAddMonoidHomClass.toOrderAddMonoidHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.to_order_add_monoid_hom_eq_coe OrderRingHom.toOrderAddMonoidHom_eq_coeₓ'. -/
 @[simp]
 theorem toOrderAddMonoidHom_eq_coe (f : α →+*o β) : f.toOrderAddMonoidHom = f :=
   rfl
 #align order_ring_hom.to_order_add_monoid_hom_eq_coe OrderRingHom.toOrderAddMonoidHom_eq_coe
 
 /- warning: order_ring_hom.to_order_monoid_with_zero_hom_eq_coe clashes with order_ring_hom.to_order_monoid_with_zero_hom -> OrderRingHom.toOrderMonoidWithZeroHom
-warning: order_ring_hom.to_order_monoid_with_zero_hom_eq_coe -> OrderRingHom.toOrderMonoidWithZeroHom is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (OrderRingHom.toOrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (OrderMonoidWithZeroHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β], (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) -> (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3))
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.to_order_monoid_with_zero_hom_eq_coe OrderRingHom.toOrderMonoidWithZeroHomₓ'. -/
 @[simp]
 theorem toOrderMonoidWithZeroHom (f : α →+*o β) : f.toOrderMonoidWithZeroHom = f :=
   rfl
 #align order_ring_hom.to_order_monoid_with_zero_hom_eq_coe OrderRingHom.toOrderMonoidWithZeroHom
 
-/- warning: order_ring_hom.coe_coe_ring_hom -> OrderRingHom.coe_coe_ringHom is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β _inst_1 _inst_3) (fun (_x : RingHom.{u1, u2} α β _inst_1 _inst_3) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_3) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (RingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_coe_ring_hom OrderRingHom.coe_coe_ringHomₓ'. -/
 @[simp]
 theorem coe_coe_ringHom (f : α →+*o β) : ⇑(f : α →+* β) = f :=
   rfl
 #align order_ring_hom.coe_coe_ring_hom OrderRingHom.coe_coe_ringHom
 
-/- warning: order_ring_hom.coe_coe_order_add_monoid_hom -> OrderRingHom.coe_coe_orderAddMonoidHom is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (fun (_x : OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) => α -> β) (OrderAddMonoidHom.hasCoeToFun.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (OrderAddMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderAddMonoidHom.instOrderAddMonoidHomClassOrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))))) (OrderAddMonoidHomClass.toOrderAddMonoidHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_coe_order_add_monoid_hom OrderRingHom.coe_coe_orderAddMonoidHomₓ'. -/
 @[simp]
 theorem coe_coe_orderAddMonoidHom (f : α →+*o β) : ⇑(f : α →+o β) = f :=
   rfl
 #align order_ring_hom.coe_coe_order_add_monoid_hom OrderRingHom.coe_coe_orderAddMonoidHom
 
-/- warning: order_ring_hom.coe_coe_order_monoid_with_zero_hom -> OrderRingHom.coe_coe_orderMonoidWithZeroHom is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (OrderMonoidWithZeroHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1)) (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3))))) (OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_coe_order_monoid_with_zero_hom OrderRingHom.coe_coe_orderMonoidWithZeroHomₓ'. -/
 @[simp]
 theorem coe_coe_orderMonoidWithZeroHom (f : α →+*o β) : ⇑(f : α →*₀o β) = f :=
   rfl
 #align order_ring_hom.coe_coe_order_monoid_with_zero_hom OrderRingHom.coe_coe_orderMonoidWithZeroHom
 
-/- warning: order_ring_hom.coe_ring_hom_apply -> OrderRingHom.coe_ringHom_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_ring_hom_apply OrderRingHom.coe_ringHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_ringHom_apply (f : α →+*o β) (a : α) : (f : α →+* β) a = f a :=
   rfl
 #align order_ring_hom.coe_ring_hom_apply OrderRingHom.coe_ringHom_apply
 
-/- warning: order_ring_hom.coe_order_add_monoid_hom_apply -> OrderRingHom.coe_orderAddMonoidHom_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_order_add_monoid_hom_apply OrderRingHom.coe_orderAddMonoidHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_orderAddMonoidHom_apply (f : α →+*o β) (a : α) : (f : α →+o β) a = f a :=
   rfl
 #align order_ring_hom.coe_order_add_monoid_hom_apply OrderRingHom.coe_orderAddMonoidHom_apply
 
-/- warning: order_ring_hom.coe_order_monoid_with_zero_hom_apply -> OrderRingHom.coe_orderMonoidWithZeroHom_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_order_monoid_with_zero_hom_apply OrderRingHom.coe_orderMonoidWithZeroHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_orderMonoidWithZeroHom_apply (f : α →+*o β) (a : α) : (f : α →*₀o β) a = f a :=
   rfl
 #align order_ring_hom.coe_order_monoid_with_zero_hom_apply OrderRingHom.coe_orderMonoidWithZeroHom_apply
 
-/- warning: order_ring_hom.copy -> OrderRingHom.copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.copy OrderRingHom.copyₓ'. -/
 /-- Copy of a `order_ring_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
 protected def copy (f : α →+*o β) (f' : α → β) (h : f' = f) : α →+*o β :=
   { f.toRingHom.copy f' h, f.toOrderAddMonoidHom.copy f' h with }
 #align order_ring_hom.copy OrderRingHom.copy
 
-/- warning: order_ring_hom.coe_copy -> OrderRingHom.coe_copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h)) f'
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) (OrderRingHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h)) f'
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_copy OrderRingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : α →+*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
   rfl
 #align order_ring_hom.coe_copy OrderRingHom.coe_copy
 
-/- warning: order_ring_hom.copy_eq -> OrderRingHom.copy_eq is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)), Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h) f
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)), Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h) f
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.copy_eq OrderRingHom.copy_eqₓ'. -/
 theorem copy_eq (f : α →+*o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
 #align order_ring_hom.copy_eq OrderRingHom.copy_eq
@@ -341,12 +258,6 @@ protected def id : α →+*o α :=
 instance : Inhabited (α →+*o α) :=
   ⟨OrderRingHom.id α⟩
 
-/- warning: order_ring_hom.coe_id -> OrderRingHom.coe_id is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (fun (_x : OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) => α -> α) (OrderRingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (id.{succ u1} α)
-but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (id.{succ u1} α)
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_id OrderRingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(OrderRingHom.id α) = id :=
   rfl
@@ -354,45 +265,21 @@ theorem coe_id : ⇑(OrderRingHom.id α) = id :=
 
 variable {α}
 
-/- warning: order_ring_hom.id_apply -> OrderRingHom.id_apply is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (fun (_x : OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) => α -> α) (OrderRingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderRingHom.id.{u1} α _inst_1 _inst_2) a) a
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)))) (OrderRingHom.id.{u1} α _inst_1 _inst_2) a) a
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.id_apply OrderRingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : OrderRingHom.id α a = a :=
   rfl
 #align order_ring_hom.id_apply OrderRingHom.id_apply
 
-/- warning: order_ring_hom.coe_ring_hom_id -> OrderRingHom.coe_RingHom_id is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (RingHom.{u1, u1} α α _inst_1 _inst_1) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (RingHom.{u1, u1} α α _inst_1 _inst_1) (HasLiftT.mk.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (RingHom.{u1, u1} α α _inst_1 _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (RingHom.{u1, u1} α α _inst_1 _inst_1) (RingHom.hasCoeT.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_1 (OrderRingHomClass.toRingHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.orderRingHomClass.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2))))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (RingHom.id.{u1} α _inst_1)
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (RingHom.{u1, u1} α α _inst_1 _inst_1) (RingHomClass.toRingHom.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_1 (OrderRingHomClass.toRingHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (RingHom.id.{u1} α _inst_1)
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_ring_hom_id OrderRingHom.coe_RingHom_idₓ'. -/
 @[simp]
 theorem coe_RingHom_id : (OrderRingHom.id α : α →+* α) = RingHom.id α :=
   rfl
 #align order_ring_hom.coe_ring_hom_id OrderRingHom.coe_RingHom_id
 
-/- warning: order_ring_hom.coe_order_add_monoid_hom_id -> OrderRingHom.coe_OrderAddMonoidHom_id is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderAddMonoidHom.{u1, u1} α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderAddMonoidHom.{u1, u1} α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1))))) (HasLiftT.mk.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderAddMonoidHom.{u1, u1} α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1))))) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderAddMonoidHom.{u1, u1} α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1))))) (OrderAddMonoidHom.hasCoeT.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.orderRingHomClass.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2))))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (OrderAddMonoidHom.id.{u1} α _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderAddMonoidHom.{u1, u1} α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1))))) (OrderAddMonoidHomClass.toOrderAddMonoidHom.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (OrderAddMonoidHom.id.{u1} α _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))))
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_order_add_monoid_hom_id OrderRingHom.coe_OrderAddMonoidHom_idₓ'. -/
 @[simp]
 theorem coe_OrderAddMonoidHom_id : (OrderRingHom.id α : α →+o α) = OrderAddMonoidHom.id α :=
   rfl
 #align order_ring_hom.coe_order_add_monoid_hom_id OrderRingHom.coe_OrderAddMonoidHom_id
 
-/- warning: order_ring_hom.coe_order_monoid_with_zero_hom_id -> OrderRingHom.coe_OrderMonoidWithZeroHom_id is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderMonoidWithZeroHom.{u1, u1} α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1)) (HasLiftT.mk.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderMonoidWithZeroHom.{u1, u1} α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1)) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderMonoidWithZeroHom.{u1, u1} α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1)) (OrderMonoidWithZeroHom.hasCoeT.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.orderRingHomClass.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2))))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (OrderMonoidWithZeroHom.id.{u1} α _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1)) (OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (OrderMonoidWithZeroHom.id.{u1} α _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1))
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_order_monoid_with_zero_hom_id OrderRingHom.coe_OrderMonoidWithZeroHom_idₓ'. -/
 @[simp]
 theorem coe_OrderMonoidWithZeroHom_id :
     (OrderRingHom.id α : α →*₀o α) = OrderMonoidWithZeroHom.id α :=
@@ -406,66 +293,36 @@ protected def comp (f : β →+*o γ) (g : α →+*o β) : α →+*o γ :=
 #align order_ring_hom.comp OrderRingHom.comp
 -/
 
-/- warning: order_ring_hom.coe_comp -> OrderRingHom.coe_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_comp OrderRingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : β →+*o γ) (g : α →+*o β) : ⇑(f.comp g) = f ∘ g :=
   rfl
 #align order_ring_hom.coe_comp OrderRingHom.coe_comp
 
-/- warning: order_ring_hom.comp_apply -> OrderRingHom.comp_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.comp_apply OrderRingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : β →+*o γ) (g : α →+*o β) (a : α) : f.comp g a = f (g a) :=
   rfl
 #align order_ring_hom.comp_apply OrderRingHom.comp_apply
 
-/- warning: order_ring_hom.comp_assoc -> OrderRingHom.comp_assoc is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} {δ : Type.{u4}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] [_inst_7 : NonAssocSemiring.{u4} δ] [_inst_8 : Preorder.{u4} δ] (f : OrderRingHom.{u3, u4} γ δ _inst_5 _inst_6 _inst_7 _inst_8) (g : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (h : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u4)} (OrderRingHom.{u1, u4} α δ _inst_1 _inst_2 _inst_7 _inst_8) (OrderRingHom.comp.{u1, u2, u4} α β δ _inst_1 _inst_2 _inst_3 _inst_4 _inst_7 _inst_8 (OrderRingHom.comp.{u2, u3, u4} β γ δ _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f g) h) (OrderRingHom.comp.{u1, u3, u4} α γ δ _inst_1 _inst_2 _inst_5 _inst_6 _inst_7 _inst_8 f (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 g h))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u4}} {δ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u4} γ] [_inst_6 : Preorder.{u4} γ] [_inst_7 : NonAssocSemiring.{u3} δ] [_inst_8 : Preorder.{u3} δ] (f : OrderRingHom.{u4, u3} γ δ _inst_5 _inst_6 _inst_7 _inst_8) (g : OrderRingHom.{u2, u4} β γ _inst_3 _inst_4 _inst_5 _inst_6) (h : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α δ _inst_1 _inst_2 _inst_7 _inst_8) (OrderRingHom.comp.{u1, u2, u3} α β δ _inst_1 _inst_2 _inst_3 _inst_4 _inst_7 _inst_8 (OrderRingHom.comp.{u2, u4, u3} β γ δ _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f g) h) (OrderRingHom.comp.{u1, u4, u3} α γ δ _inst_1 _inst_2 _inst_5 _inst_6 _inst_7 _inst_8 f (OrderRingHom.comp.{u1, u2, u4} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 g h))
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.comp_assoc OrderRingHom.comp_assocₓ'. -/
 theorem comp_assoc (f : γ →+*o δ) (g : β →+*o γ) (h : α →+*o β) :
     (f.comp g).comp h = f.comp (g.comp h) :=
   rfl
 #align order_ring_hom.comp_assoc OrderRingHom.comp_assoc
 
-/- warning: order_ring_hom.comp_id -> OrderRingHom.comp_id is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.comp.{u1, u1, u2} α α β _inst_1 _inst_2 _inst_1 _inst_2 _inst_3 _inst_4 f (OrderRingHom.id.{u1} α _inst_1 _inst_2)) f
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.comp.{u2, u2, u1} α α β _inst_1 _inst_2 _inst_1 _inst_2 _inst_3 _inst_4 f (OrderRingHom.id.{u2} α _inst_1 _inst_2)) f
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.comp_id OrderRingHom.comp_idₓ'. -/
 @[simp]
 theorem comp_id (f : α →+*o β) : f.comp (OrderRingHom.id α) = f :=
   ext fun x => rfl
 #align order_ring_hom.comp_id OrderRingHom.comp_id
 
-/- warning: order_ring_hom.id_comp -> OrderRingHom.id_comp is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.comp.{u1, u2, u2} α β β _inst_1 _inst_2 _inst_3 _inst_4 _inst_3 _inst_4 (OrderRingHom.id.{u2} β _inst_3 _inst_4) f) f
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.comp.{u2, u1, u1} α β β _inst_1 _inst_2 _inst_3 _inst_4 _inst_3 _inst_4 (OrderRingHom.id.{u1} β _inst_3 _inst_4) f) f
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.id_comp OrderRingHom.id_compₓ'. -/
 @[simp]
 theorem id_comp (f : α →+*o β) : (OrderRingHom.id β).comp f = f :=
   ext fun x => rfl
 #align order_ring_hom.id_comp OrderRingHom.id_comp
 
-/- warning: order_ring_hom.cancel_right -> OrderRingHom.cancel_right is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.cancel_right OrderRingHom.cancel_rightₓ'. -/
 theorem cancel_right {f₁ f₂ : β →+*o γ} {g : α →+*o β} (hg : Surjective g) :
     f₁.comp g = f₂.comp g ↔ f₁ = f₂ :=
   ⟨fun h => ext <| hg.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
 #align order_ring_hom.cancel_right OrderRingHom.cancel_right
 
-/- warning: order_ring_hom.cancel_left -> OrderRingHom.cancel_left is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_hom.cancel_left OrderRingHom.cancel_leftₓ'. -/
 theorem cancel_left {f : β →+*o γ} {g₁ g₂ : α →+*o β} (hf : Injective f) :
     f.comp g₁ = f.comp g₂ ↔ g₁ = g₂ :=
   ⟨fun h => ext fun a => hf <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
@@ -492,12 +349,6 @@ section LE
 
 variable [Mul α] [Add α] [LE α] [Mul β] [Add β] [LE β] [Mul γ] [Add γ] [LE γ] [Mul δ] [Add δ] [LE δ]
 
-/- warning: order_ring_iso.to_order_iso -> OrderRingIso.toOrderIso is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) -> (OrderIso.{u1, u2} α β _inst_3 _inst_6)
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) -> (OrderIso.{u1, u2} α β _inst_3 _inst_6)
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_iso OrderRingIso.toOrderIsoₓ'. -/
 /-- Reinterpret an ordered ring isomorphism as an order isomorphism. -/
 def toOrderIso (f : α ≃+*o β) : α ≃o β :=
   ⟨f.toRingEquiv.toEquiv, fun _ _ => f.map_le_map_iff'⟩
@@ -519,64 +370,40 @@ directly. -/
 instance : CoeFun (α ≃+*o β) fun _ => α → β :=
   FunLike.hasCoeToFun
 
-/- warning: order_ring_iso.to_fun_eq_coe -> OrderRingIso.toFun_eq_coe is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_fun_eq_coe OrderRingIso.toFun_eq_coeₓ'. -/
 theorem toFun_eq_coe (f : α ≃+*o β) : f.toFun = f :=
   rfl
 #align order_ring_iso.to_fun_eq_coe OrderRingIso.toFun_eq_coe
 
-/- warning: order_ring_iso.ext -> OrderRingIso.ext is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.ext OrderRingIso.extₓ'. -/
 @[ext]
 theorem ext {f g : α ≃+*o β} (h : ∀ a, f a = g a) : f = g :=
   FunLike.ext f g h
 #align order_ring_iso.ext OrderRingIso.ext
 
-/- warning: order_ring_iso.coe_mk -> OrderRingIso.coe_mk is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_mk OrderRingIso.coe_mkₓ'. -/
 @[simp]
 theorem coe_mk (e : α ≃+* β) (h) : ⇑(⟨e, h⟩ : α ≃+*o β) = e :=
   rfl
 #align order_ring_iso.coe_mk OrderRingIso.coe_mk
 
-/- warning: order_ring_iso.mk_coe -> OrderRingIso.mk_coe is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.mk_coe OrderRingIso.mk_coeₓ'. -/
 @[simp]
 theorem mk_coe (e : α ≃+*o β) (h) : (⟨e, h⟩ : α ≃+*o β) = e :=
   ext fun _ => rfl
 #align order_ring_iso.mk_coe OrderRingIso.mk_coe
 
-/- warning: order_ring_iso.to_ring_equiv_eq_coe -> OrderRingIso.toRingEquiv_eq_coe is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_ring_equiv_eq_coe OrderRingIso.toRingEquiv_eq_coeₓ'. -/
 @[simp]
 theorem toRingEquiv_eq_coe (f : α ≃+*o β) : f.toRingEquiv = f :=
   RingEquiv.ext fun _ => rfl
 #align order_ring_iso.to_ring_equiv_eq_coe OrderRingIso.toRingEquiv_eq_coe
 
-/- warning: order_ring_iso.to_order_iso_eq_coe -> OrderRingIso.toOrderIso_eq_coe is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_iso_eq_coe OrderRingIso.toOrderIso_eq_coeₓ'. -/
 @[simp]
 theorem toOrderIso_eq_coe (f : α ≃+*o β) : f.toOrderIso = f :=
   OrderIso.ext rfl
 #align order_ring_iso.to_order_iso_eq_coe OrderRingIso.toOrderIso_eq_coe
 
-/- warning: order_ring_iso.coe_to_ring_equiv -> OrderRingIso.coe_toRingEquiv is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_ring_equiv OrderRingIso.coe_toRingEquivₓ'. -/
 @[simp, norm_cast]
 theorem coe_toRingEquiv (f : α ≃+*o β) : ⇑(f : α ≃+* β) = f :=
   rfl
 #align order_ring_iso.coe_to_ring_equiv OrderRingIso.coe_toRingEquiv
 
-/- warning: order_ring_iso.coe_to_order_iso -> OrderRingIso.coe_toOrderIso is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_order_iso OrderRingIso.coe_toOrderIsoₓ'. -/
 @[simp, norm_cast]
 theorem coe_toOrderIso (f : α ≃+*o β) : ⇑(f : α ≃o β) = f :=
   rfl
@@ -584,12 +411,6 @@ theorem coe_toOrderIso (f : α ≃+*o β) : ⇑(f : α ≃o β) = f :=
 
 variable (α)
 
-/- warning: order_ring_iso.refl -> OrderRingIso.refl is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α], OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3
-but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α], OrderRingIso.{u1, u1} α α _inst_1 _inst_1 _inst_2 _inst_2 _inst_3 _inst_3
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.refl OrderRingIso.reflₓ'. -/
 /-- The identity map as an ordered ring isomorphism. -/
 @[refl]
 protected def refl : α ≃+*o α :=
@@ -606,23 +427,11 @@ theorem refl_apply (x : α) : OrderRingIso.refl α x = x :=
 #align order_ring_iso.refl_apply OrderRingIso.refl_apply
 -/
 
-/- warning: order_ring_iso.coe_ring_equiv_refl -> OrderRingIso.coe_ringEquiv_refl is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α], Eq.{succ u1} (RingEquiv.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (RingEquiv.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (HasLiftT.mk.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (RingEquiv.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (RingEquiv.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (RingEquiv.hasCoeT.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIsoClass.toRingEquivClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3 (OrderRingIso.orderRingIsoClass.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3))))) (OrderRingIso.refl.{u1} α _inst_1 _inst_2 _inst_3)) (RingEquiv.refl.{u1} α _inst_1 _inst_2)
-but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α], Eq.{succ u1} (RingEquiv.{u1, u1} α α _inst_1 _inst_1 _inst_2 _inst_2) (RingEquivClass.toRingEquiv.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_1 _inst_2 _inst_2 _inst_3 _inst_3) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIsoClass.toRingEquivClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_1 _inst_2 _inst_2 _inst_3 _inst_3) α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3)) (OrderRingIso.refl.{u1} α _inst_1 _inst_2 _inst_3)) (RingEquiv.refl.{u1} α _inst_1 _inst_2)
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_ring_equiv_refl OrderRingIso.coe_ringEquiv_reflₓ'. -/
 @[simp]
 theorem coe_ringEquiv_refl : (OrderRingIso.refl α : α ≃+* α) = RingEquiv.refl α :=
   rfl
 #align order_ring_iso.coe_ring_equiv_refl OrderRingIso.coe_ringEquiv_refl
 
-/- warning: order_ring_iso.coe_order_iso_refl -> OrderRingIso.coe_orderIso_refl is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α], Eq.{succ u1} (OrderIso.{u1, u1} α α _inst_3 _inst_3) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (OrderIso.{u1, u1} α α _inst_3 _inst_3) (HasLiftT.mk.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (OrderIso.{u1, u1} α α _inst_3 _inst_3) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (OrderIso.{u1, u1} α α _inst_3 _inst_3) (OrderIso.hasCoeT.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) α α _inst_3 _inst_3 (OrderRingIsoClass.toOrderIsoClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3 (OrderRingIso.orderRingIsoClass.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3))))) (OrderRingIso.refl.{u1} α _inst_1 _inst_2 _inst_3)) (OrderIso.refl.{u1} α _inst_3)
-but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α], Eq.{succ u1} (OrderIso.{u1, u1} α α _inst_3 _inst_3) (OrderIsoClass.toOrderIso.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_1 _inst_2 _inst_2 _inst_3 _inst_3) α α _inst_3 _inst_3 (OrderRingIsoClass.toOrderIsoClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_1 _inst_2 _inst_2 _inst_3 _inst_3) α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3)) (OrderRingIso.refl.{u1} α _inst_1 _inst_2 _inst_3)) (OrderIso.refl.{u1} α _inst_3)
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_order_iso_refl OrderRingIso.coe_orderIso_reflₓ'. -/
 @[simp]
 theorem coe_orderIso_refl : (OrderRingIso.refl α : α ≃o α) = OrderIso.refl α :=
   rfl
@@ -630,12 +439,6 @@ theorem coe_orderIso_refl : (OrderRingIso.refl α : α ≃o α) = OrderIso.refl
 
 variable {α}
 
-/- warning: order_ring_iso.symm -> OrderRingIso.symm is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) -> (OrderRingIso.{u2, u1} β α _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3)
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) -> (OrderRingIso.{u2, u1} β α _inst_4 _inst_1 _inst_5 _inst_2 _inst_6 _inst_3)
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.symm OrderRingIso.symmₓ'. -/
 /-- The inverse of an ordered ring isomorphism as an ordered ring isomorphism. -/
 @[symm]
 protected def symm (e : α ≃+*o β) : β ≃+*o α :=
@@ -643,76 +446,37 @@ protected def symm (e : α ≃+*o β) : β ≃+*o α :=
     erw [← map_le_map_iff e, e.1.apply_symm_apply, e.1.apply_symm_apply]⟩
 #align order_ring_iso.symm OrderRingIso.symm
 
-/- warning: order_ring_iso.simps.symm_apply -> OrderRingIso.Simps.symm_apply is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) -> β -> α
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) -> β -> α
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.simps.symm_apply OrderRingIso.Simps.symm_applyₓ'. -/
 /-- See Note [custom simps projection] -/
 def Simps.symm_apply (e : α ≃+*o β) : β → α :=
   e.symm
 #align order_ring_iso.simps.symm_apply OrderRingIso.Simps.symm_apply
 
-/- warning: order_ring_iso.symm_symm -> OrderRingIso.symm_symm is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (e : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderRingIso.symm.{u2, u1} β α _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3 (OrderRingIso.symm.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e)) e
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (e : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) (OrderRingIso.symm.{u1, u2} β α _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3 (OrderRingIso.symm.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e)) e
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.symm_symm OrderRingIso.symm_symmₓ'. -/
 @[simp]
 theorem symm_symm (e : α ≃+*o β) : e.symm.symm = e :=
   ext fun _ => rfl
 #align order_ring_iso.symm_symm OrderRingIso.symm_symm
 
-/- warning: order_ring_iso.trans -> OrderRingIso.trans is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] [_inst_7 : Mul.{u3} γ] [_inst_8 : Add.{u3} γ] [_inst_9 : LE.{u3} γ], (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) -> (OrderRingIso.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) -> (OrderRingIso.{u1, u3} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9)
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] [_inst_7 : Mul.{u3} γ] [_inst_8 : Add.{u3} γ] [_inst_9 : LE.{u3} γ], (OrderRingIso.{u1, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) -> (OrderRingIso.{u2, u3} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) -> (OrderRingIso.{u1, u3} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9)
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.trans OrderRingIso.transₓ'. -/
 /-- Composition of `order_ring_iso`s as an `order_ring_iso`. -/
 @[trans, simps]
 protected def trans (f : α ≃+*o β) (g : β ≃+*o γ) : α ≃+*o γ :=
   ⟨f.toRingEquiv.trans g.toRingEquiv, fun a b => (map_le_map_iff g).trans (map_le_map_iff f)⟩
 #align order_ring_iso.trans OrderRingIso.trans
 
-/- warning: order_ring_iso.trans_apply -> OrderRingIso.trans_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.trans_apply OrderRingIso.trans_applyₓ'. -/
 @[simp]
 theorem trans_apply (f : α ≃+*o β) (g : β ≃+*o γ) (a : α) : f.trans g a = g (f a) :=
   rfl
 #align order_ring_iso.trans_apply OrderRingIso.trans_apply
 
-/- warning: order_ring_iso.self_trans_symm -> OrderRingIso.self_trans_symm is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (e : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{succ u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (OrderRingIso.trans.{u1, u2, u1} α β α _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3 e (OrderRingIso.symm.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e)) (OrderRingIso.refl.{u1} α _inst_1 _inst_2 _inst_3)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (e : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{succ u2} (OrderRingIso.{u2, u2} α α _inst_1 _inst_1 _inst_2 _inst_2 _inst_3 _inst_3) (OrderRingIso.trans.{u2, u1, u2} α β α _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3 e (OrderRingIso.symm.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e)) (OrderRingIso.refl.{u2} α _inst_1 _inst_2 _inst_3)
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.self_trans_symm OrderRingIso.self_trans_symmₓ'. -/
 @[simp]
 theorem self_trans_symm (e : α ≃+*o β) : e.trans e.symm = OrderRingIso.refl α :=
   ext e.left_inv
 #align order_ring_iso.self_trans_symm OrderRingIso.self_trans_symm
 
-/- warning: order_ring_iso.symm_trans_self -> OrderRingIso.symm_trans_self is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (e : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{succ u2} (OrderRingIso.{u2, u2} β β _inst_4 _inst_5 _inst_6 _inst_4 _inst_5 _inst_6) (OrderRingIso.trans.{u2, u1, u2} β α β _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.symm.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e) e) (OrderRingIso.refl.{u2} β _inst_4 _inst_5 _inst_6)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (e : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{succ u1} (OrderRingIso.{u1, u1} β β _inst_4 _inst_4 _inst_5 _inst_5 _inst_6 _inst_6) (OrderRingIso.trans.{u1, u2, u1} β α β _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.symm.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e) e) (OrderRingIso.refl.{u1} β _inst_4 _inst_5 _inst_6)
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.symm_trans_self OrderRingIso.symm_trans_selfₓ'. -/
 @[simp]
 theorem symm_trans_self (e : α ≃+*o β) : e.symm.trans e = OrderRingIso.refl β :=
   ext e.right_inv
 #align order_ring_iso.symm_trans_self OrderRingIso.symm_trans_self
 
-/- warning: order_ring_iso.symm_bijective -> OrderRingIso.symm_bijective is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], Function.Bijective.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderRingIso.{u2, u1} β α _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3) (OrderRingIso.symm.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β], Function.Bijective.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) (OrderRingIso.{u1, u2} β α _inst_4 _inst_1 _inst_5 _inst_2 _inst_6 _inst_3) (OrderRingIso.symm.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.symm_bijective OrderRingIso.symm_bijectiveₓ'. -/
 theorem symm_bijective : Bijective (OrderRingIso.symm : α ≃+*o β → β ≃+*o α) :=
   ⟨fun f g h => f.symm_symm.symm.trans <| (congr_arg OrderRingIso.symm h).trans g.symm_symm,
     fun f => ⟨f.symm, f.symm_symm⟩⟩
@@ -725,50 +489,26 @@ section NonAssocSemiring
 variable [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β] [Preorder β] [NonAssocSemiring γ]
   [Preorder γ]
 
-/- warning: order_ring_iso.to_order_ring_hom -> OrderRingIso.toOrderRingHom is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β], (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β], (OrderRingIso.{u1, u2} α β (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u1} α _inst_2) (Preorder.toLE.{u2} β _inst_4)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_ring_hom OrderRingIso.toOrderRingHomₓ'. -/
 /-- Reinterpret an ordered ring isomorphism as an ordered ring homomorphism. -/
 def toOrderRingHom (f : α ≃+*o β) : α →+*o β :=
   ⟨f.toRingEquiv.toRingHom, fun a b => (map_le_map_iff f).2⟩
 #align order_ring_iso.to_order_ring_hom OrderRingIso.toOrderRingHom
 
-/- warning: order_ring_iso.to_order_ring_hom_eq_coe -> OrderRingIso.toOrderRingHom_eq_coe is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_ring_hom_eq_coe OrderRingIso.toOrderRingHom_eq_coeₓ'. -/
 @[simp]
 theorem toOrderRingHom_eq_coe (f : α ≃+*o β) : f.toOrderRingHom = f :=
   rfl
 #align order_ring_iso.to_order_ring_hom_eq_coe OrderRingIso.toOrderRingHom_eq_coe
 
-/- warning: order_ring_iso.coe_to_order_ring_hom -> OrderRingIso.coe_toOrderRingHom is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_order_ring_hom OrderRingIso.coe_toOrderRingHomₓ'. -/
 @[simp, norm_cast]
 theorem coe_toOrderRingHom (f : α ≃+*o β) : ⇑(f : α →+*o β) = f :=
   rfl
 #align order_ring_iso.coe_to_order_ring_hom OrderRingIso.coe_toOrderRingHom
 
-/- warning: order_ring_iso.coe_to_order_ring_hom_refl -> OrderRingIso.coe_toOrderRingHom_refl is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2)) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (HasLiftT.mk.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2)) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2)) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderRingHom.hasCoeT.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIsoClass.toOrderRingHomClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIso.orderRingIsoClass.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2)))))) (OrderRingIso.refl.{u1} α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderRingHomClass.toOrderRingHom.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Preorder.toLE.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIsoClass.toOrderRingHomClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Preorder.toLE.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u1, u1} α α (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2))) (OrderRingIso.refl.{u1} α (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_order_ring_hom_refl OrderRingIso.coe_toOrderRingHom_reflₓ'. -/
 @[simp]
 theorem coe_toOrderRingHom_refl : (OrderRingIso.refl α : α →+*o α) = OrderRingHom.id α :=
   rfl
 #align order_ring_iso.coe_to_order_ring_hom_refl OrderRingIso.coe_toOrderRingHom_refl
 
-/- warning: order_ring_iso.to_order_ring_hom_injective -> OrderRingIso.toOrderRingHom_injective is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β], Function.Injective.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β], Function.Injective.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_ring_hom_injective OrderRingIso.toOrderRingHom_injectiveₓ'. -/
 theorem toOrderRingHom_injective : Injective (toOrderRingHom : α ≃+*o β → α →+*o β) := fun f g h =>
   FunLike.coe_injective <| by convert FunLike.ext'_iff.1 h
 #align order_ring_iso.to_order_ring_hom_injective OrderRingIso.toOrderRingHom_injective
@@ -805,12 +545,6 @@ instance OrderRingHom.subsingleton [LinearOrderedField α] [LinearOrderedField 
 #align order_ring_hom.subsingleton OrderRingHom.subsingleton
 -/
 
-/- warning: order_ring_iso.subsingleton_right -> OrderRingIso.subsingleton_right is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : LinearOrderedField.{u2} β] [_inst_3 : Archimedean.{u2} β (OrderedSemiring.toOrderedAddCommMonoid.{u2} β (StrictOrderedSemiring.toOrderedSemiring.{u2} β (StrictOrderedRing.toStrictOrderedSemiring.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_2))))))], Subsingleton.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Distrib.toHasAdd.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Preorder.toHasLe.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))) (Distrib.toHasMul.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2))))) (Distrib.toHasAdd.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2))))) (Preorder.toHasLe.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommGroup.toPartialOrder.{u2} β (StrictOrderedRing.toOrderedAddCommGroup.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_2))))))))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : LinearOrderedField.{u2} β] [_inst_3 : Archimedean.{u2} β (OrderedSemiring.toOrderedAddCommMonoid.{u2} β (OrderedCommSemiring.toOrderedSemiring.{u2} β (StrictOrderedCommSemiring.toOrderedCommSemiring.{u2} β (LinearOrderedCommSemiring.toStrictOrderedCommSemiring.{u2} β (LinearOrderedSemifield.toLinearOrderedCommSemiring.{u2} β (LinearOrderedField.toLinearOrderedSemifield.{u2} β _inst_2))))))], Subsingleton.{max (succ u2) (succ u1)} (OrderRingIso.{u1, u2} α β (NonUnitalNonAssocRing.toMul.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1)))))) (NonUnitalNonAssocRing.toMul.{u2} β (NonAssocRing.toNonUnitalNonAssocRing.{u2} β (Ring.toNonAssocRing.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2)))))) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1)))))))) (Distrib.toAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} β (NonAssocRing.toNonUnitalNonAssocRing.{u2} β (Ring.toNonAssocRing.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2)))))))) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))) (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (StrictOrderedRing.toPartialOrder.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_2)))))))
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.subsingleton_right OrderRingIso.subsingleton_rightₓ'. -/
 /-- There is at most one ordered ring isomorphism between a linear ordered field and an archimedean
 linear ordered field. -/
 instance OrderRingIso.subsingleton_right [LinearOrderedField α] [LinearOrderedField β]
@@ -818,12 +552,6 @@ instance OrderRingIso.subsingleton_right [LinearOrderedField α] [LinearOrderedF
   OrderRingIso.toOrderRingHom_injective.Subsingleton
 #align order_ring_iso.subsingleton_right OrderRingIso.subsingleton_right
 
-/- warning: order_ring_iso.subsingleton_left -> OrderRingIso.subsingleton_left is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : Archimedean.{u1} α (OrderedSemiring.toOrderedAddCommMonoid.{u1} α (StrictOrderedSemiring.toOrderedSemiring.{u1} α (StrictOrderedRing.toStrictOrderedSemiring.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))] [_inst_3 : LinearOrderedField.{u2} β], Subsingleton.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Distrib.toHasAdd.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Preorder.toHasLe.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))) (Distrib.toHasMul.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3))))) (Distrib.toHasAdd.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3))))) (Preorder.toHasLe.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommGroup.toPartialOrder.{u2} β (StrictOrderedRing.toOrderedAddCommGroup.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_3))))))))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : Archimedean.{u1} α (OrderedSemiring.toOrderedAddCommMonoid.{u1} α (OrderedCommSemiring.toOrderedSemiring.{u1} α (StrictOrderedCommSemiring.toOrderedCommSemiring.{u1} α (LinearOrderedCommSemiring.toStrictOrderedCommSemiring.{u1} α (LinearOrderedSemifield.toLinearOrderedCommSemiring.{u1} α (LinearOrderedField.toLinearOrderedSemifield.{u1} α _inst_1))))))] [_inst_3 : LinearOrderedField.{u2} β], Subsingleton.{max (succ u2) (succ u1)} (OrderRingIso.{u1, u2} α β (NonUnitalNonAssocRing.toMul.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1)))))) (NonUnitalNonAssocRing.toMul.{u2} β (NonAssocRing.toNonUnitalNonAssocRing.{u2} β (Ring.toNonAssocRing.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3)))))) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1)))))))) (Distrib.toAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} β (NonAssocRing.toNonUnitalNonAssocRing.{u2} β (Ring.toNonAssocRing.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3)))))))) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))) (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (StrictOrderedRing.toPartialOrder.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_3)))))))
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.subsingleton_left OrderRingIso.subsingleton_leftₓ'. -/
 /-- There is at most one ordered ring isomorphism between an archimedean linear ordered field and a
 linear ordered field. -/
 instance OrderRingIso.subsingleton_left [LinearOrderedField α] [Archimedean α]
Diff
@@ -507,10 +507,7 @@ instance : OrderRingIsoClass (α ≃+*o β) α β
     where
   coe f := f.toFun
   inv f := f.invFun
-  coe_injective' f g h₁ h₂ := by
-    obtain ⟨⟨_, _⟩, _⟩ := f
-    obtain ⟨⟨_, _⟩, _⟩ := g
-    congr
+  coe_injective' f g h₁ h₂ := by obtain ⟨⟨_, _⟩, _⟩ := f; obtain ⟨⟨_, _⟩, _⟩ := g; congr
   map_add f := f.map_add'
   map_mul f := f.map_mul'
   map_le_map_iff f _ _ := f.map_le_map_iff'
Diff
@@ -198,10 +198,7 @@ theorem toFun_eq_coe (f : α →+*o β) : f.toFun = ⇑f :=
 #align order_ring_hom.to_fun_eq_coe OrderRingHom.toFun_eq_coe
 
 /- warning: order_ring_hom.ext -> OrderRingHom.ext is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] {f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4} {g : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f g)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] {f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4} {g : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g a)) -> (Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) f g)
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.ext OrderRingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : α →+*o β} (h : ∀ a, f a = g a) : f = g :=
@@ -276,10 +273,7 @@ theorem coe_coe_orderMonoidWithZeroHom (f : α →+*o β) : ⇑(f : α →*₀o
 #align order_ring_hom.coe_coe_order_monoid_with_zero_hom OrderRingHom.coe_coe_orderMonoidWithZeroHom
 
 /- warning: order_ring_hom.coe_ring_hom_apply -> OrderRingHom.coe_ringHom_apply is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β _inst_1 _inst_3) (fun (_x : RingHom.{u1, u2} α β _inst_1 _inst_3) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_3) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (RingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f) a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_ring_hom_apply OrderRingHom.coe_ringHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_ringHom_apply (f : α →+*o β) (a : α) : (f : α →+* β) a = f a :=
@@ -287,10 +281,7 @@ theorem coe_ringHom_apply (f : α →+*o β) (a : α) : (f : α →+* β) a = f
 #align order_ring_hom.coe_ring_hom_apply OrderRingHom.coe_ringHom_apply
 
 /- warning: order_ring_hom.coe_order_add_monoid_hom_apply -> OrderRingHom.coe_orderAddMonoidHom_apply is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (fun (_x : OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) => α -> β) (OrderAddMonoidHom.hasCoeToFun.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (OrderAddMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f) a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderAddMonoidHom.instOrderAddMonoidHomClassOrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))))) (OrderAddMonoidHomClass.toOrderAddMonoidHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_order_add_monoid_hom_apply OrderRingHom.coe_orderAddMonoidHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_orderAddMonoidHom_apply (f : α →+*o β) (a : α) : (f : α →+o β) a = f a :=
@@ -298,10 +289,7 @@ theorem coe_orderAddMonoidHom_apply (f : α →+*o β) (a : α) : (f : α →+o
 #align order_ring_hom.coe_order_add_monoid_hom_apply OrderRingHom.coe_orderAddMonoidHom_apply
 
 /- warning: order_ring_hom.coe_order_monoid_with_zero_hom_apply -> OrderRingHom.coe_orderMonoidWithZeroHom_apply is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (OrderMonoidWithZeroHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f) a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1)) (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3))))) (OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_order_monoid_with_zero_hom_apply OrderRingHom.coe_orderMonoidWithZeroHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_orderMonoidWithZeroHom_apply (f : α →+*o β) (a : α) : (f : α →*₀o β) a = f a :=
@@ -419,10 +407,7 @@ protected def comp (f : β →+*o γ) (g : α →+*o β) : α →+*o γ :=
 -/
 
 /- warning: order_ring_hom.coe_comp -> OrderRingHom.coe_comp is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] (f : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) => α -> γ) (OrderRingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) => β -> γ) (OrderRingHom.hasCoeToFun.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] (f : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_2 _inst_6 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_1 _inst_2 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_4 _inst_6 (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6)))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g))
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_comp OrderRingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : β →+*o γ) (g : α →+*o β) : ⇑(f.comp g) = f ∘ g :=
@@ -430,10 +415,7 @@ theorem coe_comp (f : β →+*o γ) (g : α →+*o β) : ⇑(f.comp g) = f ∘ g
 #align order_ring_hom.coe_comp OrderRingHom.coe_comp
 
 /- warning: order_ring_hom.comp_apply -> OrderRingHom.comp_apply is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] (f : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) => α -> γ) (OrderRingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) => β -> γ) (OrderRingHom.hasCoeToFun.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g a))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] (f : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_2 _inst_6 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_1 _inst_2 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_4 _inst_6 (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6)))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g a))
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.comp_apply OrderRingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : β →+*o γ) (g : α →+*o β) (a : α) : f.comp g a = f (g a) :=
@@ -474,10 +456,7 @@ theorem id_comp (f : α →+*o β) : (OrderRingHom.id β).comp f = f :=
 #align order_ring_hom.id_comp OrderRingHom.id_comp
 
 /- warning: order_ring_hom.cancel_right -> OrderRingHom.cancel_right is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] {f₁ : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6} {f₂ : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₁ g) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₂ g)) (Eq.{max (succ u2) (succ u3)} (OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) f₁ f₂))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] {f₁ : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6} {f₂ : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Surjective.{succ u1, succ u3} α β (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₁ g) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₂ g)) (Eq.{max (succ u3) (succ u2)} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) f₁ f₂))
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.cancel_right OrderRingHom.cancel_rightₓ'. -/
 theorem cancel_right {f₁ f₂ : β →+*o γ} {g : α →+*o β} (hg : Surjective g) :
     f₁.comp g = f₂.comp g ↔ f₁ = f₂ :=
@@ -485,10 +464,7 @@ theorem cancel_right {f₁ f₂ : β →+*o γ} {g : α →+*o β} (hg : Surject
 #align order_ring_hom.cancel_right OrderRingHom.cancel_right
 
 /- warning: order_ring_hom.cancel_left -> OrderRingHom.cancel_left is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] {f : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g₁ : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4} {g₂ : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) => β -> γ) (OrderRingHom.hasCoeToFun.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₁) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₂)) (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g₁ g₂))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] {f : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g₁ : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4} {g₂ : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_4 _inst_6 (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6)))) f)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₁) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₂)) (Eq.{max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) g₁ g₂))
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.cancel_left OrderRingHom.cancel_leftₓ'. -/
 theorem cancel_left {f : β →+*o γ} {g₁ g₂ : α →+*o β} (hf : Injective f) :
     f.comp g₁ = f.comp g₂ ↔ g₁ = g₂ :=
@@ -547,20 +523,14 @@ instance : CoeFun (α ≃+*o β) fun _ => α → β :=
   FunLike.hasCoeToFun
 
 /- warning: order_ring_iso.to_fun_eq_coe -> OrderRingIso.toFun_eq_coe is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (RingEquiv.toFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIso.toRingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 (OrderRingIso.toRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f)
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_fun_eq_coe OrderRingIso.toFun_eq_coeₓ'. -/
 theorem toFun_eq_coe (f : α ≃+*o β) : f.toFun = f :=
   rfl
 #align order_ring_iso.to_fun_eq_coe OrderRingIso.toFun_eq_coe
 
 /- warning: order_ring_iso.ext -> OrderRingIso.ext is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] {f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6} {g : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f g)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] {f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6} {g : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) g a)) -> (Eq.{max (succ u2) (succ u1)} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) f g)
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.ext OrderRingIso.extₓ'. -/
 @[ext]
 theorem ext {f g : α ≃+*o β} (h : ∀ a, f a = g a) : f = g :=
@@ -568,10 +538,7 @@ theorem ext {f g : α ≃+*o β} (h : ∀ a, f a = g a) : f = g :=
 #align order_ring_iso.ext OrderRingIso.ext
 
 /- warning: order_ring_iso.coe_mk -> OrderRingIso.coe_mk is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (e : RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (h : forall {a : α} {b : α}, Iff (LE.le.{u2} β _inst_6 (RingEquiv.toFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5 e a) (RingEquiv.toFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5 e b)) (LE.le.{u1} α _inst_3 a b)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderRingIso.mk.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (fun (_x : RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) => α -> β) (RingEquiv.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) e)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (e : RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) (h : forall {a : α} {b : α}, Iff (LE.le.{u1} β _inst_6 (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 e) a) (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 e) b)) (LE.le.{u2} α _inst_3 a b)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) (OrderRingIso.mk.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6 e h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (EquivLike.toEmbeddingLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (MulEquivClass.toEquivLike.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_4 (RingEquivClass.toMulEquivClass.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_2 _inst_4 _inst_5 (RingEquiv.instRingEquivClassRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5))))) e)
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_mk OrderRingIso.coe_mkₓ'. -/
 @[simp]
 theorem coe_mk (e : α ≃+* β) (h) : ⇑(⟨e, h⟩ : α ≃+*o β) = e :=
@@ -579,10 +546,7 @@ theorem coe_mk (e : α ≃+* β) (h) : ⇑(⟨e, h⟩ : α ≃+*o β) = e :=
 #align order_ring_iso.coe_mk OrderRingIso.coe_mk
 
 /- warning: order_ring_iso.mk_coe -> OrderRingIso.mk_coe is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (e : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (h : forall {a : α} {b : α}, Iff (LE.le.{u2} β _inst_6 (RingEquiv.toFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5 ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (RingEquiv.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) e) a) (RingEquiv.toFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5 ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (RingEquiv.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) e) b)) (LE.le.{u1} α _inst_3 a b)), Eq.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderRingIso.mk.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (RingEquiv.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) e) h) e
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (e : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) (h : forall {a : α} {b : α}, Iff (LE.le.{u1} β _inst_6 (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 (RingEquivClass.toRingEquiv.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) e)) a) (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 (RingEquivClass.toRingEquiv.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) e)) b)) (LE.le.{u2} α _inst_3 a b)), Eq.{max (succ u2) (succ u1)} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) (OrderRingIso.mk.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6 (RingEquivClass.toRingEquiv.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) e) h) e
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.mk_coe OrderRingIso.mk_coeₓ'. -/
 @[simp]
 theorem mk_coe (e : α ≃+*o β) (h) : (⟨e, h⟩ : α ≃+*o β) = e :=
@@ -590,10 +554,7 @@ theorem mk_coe (e : α ≃+*o β) (h) : (⟨e, h⟩ : α ≃+*o β) = e :=
 #align order_ring_iso.mk_coe OrderRingIso.mk_coe
 
 /- warning: order_ring_iso.to_ring_equiv_eq_coe -> OrderRingIso.toRingEquiv_eq_coe is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (OrderRingIso.toRingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (RingEquiv.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) (OrderRingIso.toRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6 f) (RingEquivClass.toRingEquiv.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) f)
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_ring_equiv_eq_coe OrderRingIso.toRingEquiv_eq_coeₓ'. -/
 @[simp]
 theorem toRingEquiv_eq_coe (f : α ≃+*o β) : f.toRingEquiv = f :=
@@ -601,10 +562,7 @@ theorem toRingEquiv_eq_coe (f : α ≃+*o β) : f.toRingEquiv = f :=
 #align order_ring_iso.to_ring_equiv_eq_coe OrderRingIso.toRingEquiv_eq_coe
 
 /- warning: order_ring_iso.to_order_iso_eq_coe -> OrderRingIso.toOrderIso_eq_coe is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (OrderIso.{u1, u2} α β _inst_3 _inst_6) (OrderRingIso.toOrderIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (OrderIso.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (OrderIso.{u2, u1} α β _inst_3 _inst_6) (OrderRingIso.toOrderIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f) (OrderIsoClass.toOrderIso.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) f)
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_iso_eq_coe OrderRingIso.toOrderIso_eq_coeₓ'. -/
 @[simp]
 theorem toOrderIso_eq_coe (f : α ≃+*o β) : f.toOrderIso = f :=
@@ -612,10 +570,7 @@ theorem toOrderIso_eq_coe (f : α ≃+*o β) : f.toOrderIso = f :=
 #align order_ring_iso.to_order_iso_eq_coe OrderRingIso.toOrderIso_eq_coe
 
 /- warning: order_ring_iso.coe_to_ring_equiv -> OrderRingIso.coe_toRingEquiv is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (fun (_x : RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) => α -> β) (RingEquiv.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (RingEquiv.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (EquivLike.toEmbeddingLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (MulEquivClass.toEquivLike.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_4 (RingEquivClass.toMulEquivClass.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_2 _inst_4 _inst_5 (RingEquiv.instRingEquivClassRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5))))) (RingEquivClass.toRingEquiv.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f)
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_ring_equiv OrderRingIso.coe_toRingEquivₓ'. -/
 @[simp, norm_cast]
 theorem coe_toRingEquiv (f : α ≃+*o β) : ⇑(f : α ≃+* β) = f :=
@@ -623,10 +578,7 @@ theorem coe_toRingEquiv (f : α ≃+*o β) : ⇑(f : α ≃+* β) = f :=
 #align order_ring_iso.coe_to_ring_equiv OrderRingIso.coe_toRingEquiv
 
 /- warning: order_ring_iso.coe_to_order_iso -> OrderRingIso.coe_toOrderIso is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} α β _inst_3 _inst_6) (fun (_x : RelIso.{u1, u2} α β (LE.le.{u1} α _inst_3) (LE.le.{u2} β _inst_6)) => α -> β) (RelIso.hasCoeToFun.{u1, u2} α β (LE.le.{u1} α _inst_3) (LE.le.{u2} β _inst_6)) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (OrderIso.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderIso.{u2, u1} α β _inst_3 _inst_6) α (fun (_x : α) => β) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderIso.{u2, u1} α β _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) (OrderIsoClass.toOrderIso.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f)
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_order_iso OrderRingIso.coe_toOrderIsoₓ'. -/
 @[simp, norm_cast]
 theorem coe_toOrderIso (f : α ≃+*o β) : ⇑(f : α ≃o β) = f :=
@@ -729,10 +681,7 @@ protected def trans (f : α ≃+*o β) (g : β ≃+*o γ) : α ≃+*o γ :=
 #align order_ring_iso.trans OrderRingIso.trans
 
 /- warning: order_ring_iso.trans_apply -> OrderRingIso.trans_apply is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] [_inst_7 : Mul.{u3} γ] [_inst_8 : Add.{u3} γ] [_inst_9 : LE.{u3} γ] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingIso.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderRingIso.{u1, u3} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9) (fun (_x : OrderRingIso.{u1, u3} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9) => α -> γ) (OrderRingIso.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9) (OrderRingIso.trans.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderRingIso.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) (fun (_x : OrderRingIso.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) => β -> γ) (OrderRingIso.hasCoeToFun.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) g (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f a))
-but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : Mul.{u3} α] [_inst_2 : Add.{u3} α] [_inst_3 : LE.{u3} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] [_inst_7 : Mul.{u1} γ] [_inst_8 : Add.{u1} γ] [_inst_9 : LE.{u1} γ] (f : OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) (g : OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) a) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u3 u1, u3, u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u3} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u1} γ _inst_9 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u3 u1, u3, u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α γ _inst_3 _inst_9 (OrderRingIsoClass.toOrderIsoClass.{max u3 u1, u3, u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u3, u1} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9)))) (OrderRingIso.trans.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 f g) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u2} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u1} γ _inst_9 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β γ _inst_6 _inst_9 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9)))) g (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u3} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u2} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u3 u2, u3, u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u3, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f a))
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.trans_apply OrderRingIso.trans_applyₓ'. -/
 @[simp]
 theorem trans_apply (f : α ≃+*o β) (g : β ≃+*o γ) (a : α) : f.trans g a = g (f a) :=
@@ -791,10 +740,7 @@ def toOrderRingHom (f : α ≃+*o β) : α →+*o β :=
 #align order_ring_iso.to_order_ring_hom OrderRingIso.toOrderRingHom
 
 /- warning: order_ring_iso.to_order_ring_hom_eq_coe -> OrderRingIso.toOrderRingHom_eq_coe is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)), Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.orderRingIsoClass.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)))))) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)), Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f) (OrderRingHomClass.toOrderRingHom.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u1} β _inst_4))) f)
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_ring_hom_eq_coe OrderRingIso.toOrderRingHom_eq_coeₓ'. -/
 @[simp]
 theorem toOrderRingHom_eq_coe (f : α ≃+*o β) : f.toOrderRingHom = f :=
@@ -802,10 +748,7 @@ theorem toOrderRingHom_eq_coe (f : α ≃+*o β) : f.toOrderRingHom = f :=
 #align order_ring_iso.to_order_ring_hom_eq_coe OrderRingIso.toOrderRingHom_eq_coe
 
 /- warning: order_ring_iso.coe_to_order_ring_hom -> OrderRingIso.coe_toOrderRingHom is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.orderRingIsoClass.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (fun (_x : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) (OrderRingHomClass.toOrderRingHom.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u1} β _inst_4))) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u1} β _inst_4)))))) f)
+<too large>
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_order_ring_hom OrderRingIso.coe_toOrderRingHomₓ'. -/
 @[simp, norm_cast]
 theorem coe_toOrderRingHom (f : α ≃+*o β) : ⇑(f : α →+*o β) = f :=
Diff
@@ -191,7 +191,7 @@ instance : CoeFun (α →+*o β) fun _ => α → β :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (RingHom.toFun.{u1, u2} α β _inst_1 _inst_3 (OrderRingHom.toRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (α -> β) (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1))) (MulOneClass.toOne.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3))) (MonoidHom.toOneHom.{u2, u1} α β (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1)) (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) (RingHom.toMonoidHom.{u2, u1} α β _inst_1 _inst_3 (OrderRingHom.toRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f)))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (f : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) f) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (α -> β) (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1))) (MulOneClass.toOne.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3))) (MonoidHom.toOneHom.{u2, u1} α β (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1)) (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) (RingHom.toMonoidHom.{u2, u1} α β _inst_1 _inst_3 (OrderRingHom.toRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f)))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (f : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) f) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.to_fun_eq_coe OrderRingHom.toFun_eq_coeₓ'. -/
 theorem toFun_eq_coe (f : α →+*o β) : f.toFun = ⇑f :=
   rfl
@@ -201,7 +201,7 @@ theorem toFun_eq_coe (f : α →+*o β) : f.toFun = ⇑f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] {f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4} {g : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f g)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] {f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4} {g : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g a)) -> (Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) f g)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] {f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4} {g : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g a)) -> (Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) f g)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.ext OrderRingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : α →+*o β} (h : ∀ a, f a = g a) : f = g :=
@@ -246,7 +246,7 @@ theorem toOrderMonoidWithZeroHom (f : α →+*o β) : f.toOrderMonoidWithZeroHom
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β _inst_1 _inst_3) (fun (_x : RingHom.{u1, u2} α β _inst_1 _inst_3) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_3) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (RingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_coe_ring_hom OrderRingHom.coe_coe_ringHomₓ'. -/
 @[simp]
 theorem coe_coe_ringHom (f : α →+*o β) : ⇑(f : α →+* β) = f :=
@@ -257,7 +257,7 @@ theorem coe_coe_ringHom (f : α →+*o β) : ⇑(f : α →+* β) = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (fun (_x : OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) => α -> β) (OrderAddMonoidHom.hasCoeToFun.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (OrderAddMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderAddMonoidHom.instOrderAddMonoidHomClassOrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))))) (OrderAddMonoidHomClass.toOrderAddMonoidHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderAddMonoidHom.instOrderAddMonoidHomClassOrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))))) (OrderAddMonoidHomClass.toOrderAddMonoidHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_coe_order_add_monoid_hom OrderRingHom.coe_coe_orderAddMonoidHomₓ'. -/
 @[simp]
 theorem coe_coe_orderAddMonoidHom (f : α →+*o β) : ⇑(f : α →+o β) = f :=
@@ -268,7 +268,7 @@ theorem coe_coe_orderAddMonoidHom (f : α →+*o β) : ⇑(f : α →+o β) = f
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (OrderMonoidWithZeroHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1)) (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3))))) (OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1)) (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3))))) (OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_coe_order_monoid_with_zero_hom OrderRingHom.coe_coe_orderMonoidWithZeroHomₓ'. -/
 @[simp]
 theorem coe_coe_orderMonoidWithZeroHom (f : α →+*o β) : ⇑(f : α →*₀o β) = f :=
@@ -279,7 +279,7 @@ theorem coe_coe_orderMonoidWithZeroHom (f : α →+*o β) : ⇑(f : α →*₀o
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β _inst_1 _inst_3) (fun (_x : RingHom.{u1, u2} α β _inst_1 _inst_3) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_3) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (RingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f) a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_ring_hom_apply OrderRingHom.coe_ringHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_ringHom_apply (f : α →+*o β) (a : α) : (f : α →+* β) a = f a :=
@@ -290,7 +290,7 @@ theorem coe_ringHom_apply (f : α →+*o β) (a : α) : (f : α →+* β) a = f
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (fun (_x : OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) => α -> β) (OrderAddMonoidHom.hasCoeToFun.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (OrderAddMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f) a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderAddMonoidHom.instOrderAddMonoidHomClassOrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))))) (OrderAddMonoidHomClass.toOrderAddMonoidHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderAddMonoidHom.instOrderAddMonoidHomClassOrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))))) (OrderAddMonoidHomClass.toOrderAddMonoidHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_order_add_monoid_hom_apply OrderRingHom.coe_orderAddMonoidHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_orderAddMonoidHom_apply (f : α →+*o β) (a : α) : (f : α →+o β) a = f a :=
@@ -301,7 +301,7 @@ theorem coe_orderAddMonoidHom_apply (f : α →+*o β) (a : α) : (f : α →+o
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (OrderMonoidWithZeroHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f) a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1)) (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3))))) (OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1)) (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3))))) (OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_order_monoid_with_zero_hom_apply OrderRingHom.coe_orderMonoidWithZeroHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_orderMonoidWithZeroHom_apply (f : α →+*o β) (a : α) : (f : α →*₀o β) a = f a :=
@@ -312,7 +312,7 @@ theorem coe_orderMonoidWithZeroHom_apply (f : α →+*o β) (a : α) : (f : α 
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.copy OrderRingHom.copyₓ'. -/
 /-- Copy of a `order_ring_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
@@ -324,7 +324,7 @@ protected def copy (f : α →+*o β) (f' : α → β) (h : f' = f) : α →+*o
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h)) f'
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) (OrderRingHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h)) f'
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) (OrderRingHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h)) f'
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_copy OrderRingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : α →+*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
@@ -335,7 +335,7 @@ theorem coe_copy (f : α →+*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)), Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h) f
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)), Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h) f
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)), Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h) f
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.copy_eq OrderRingHom.copy_eqₓ'. -/
 theorem copy_eq (f : α →+*o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
@@ -357,7 +357,7 @@ instance : Inhabited (α →+*o α) :=
 lean 3 declaration is
   forall (α : Type.{u1}) [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (fun (_x : OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) => α -> α) (OrderRingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (id.{succ u1} α)
 but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (id.{succ u1} α)
+  forall (α : Type.{u1}) [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (id.{succ u1} α)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_id OrderRingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(OrderRingHom.id α) = id :=
@@ -370,7 +370,7 @@ variable {α}
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (fun (_x : OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) => α -> α) (OrderRingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderRingHom.id.{u1} α _inst_1 _inst_2) a) a
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)))) (OrderRingHom.id.{u1} α _inst_1 _inst_2) a) a
+  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)))) (OrderRingHom.id.{u1} α _inst_1 _inst_2) a) a
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.id_apply OrderRingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : OrderRingHom.id α a = a :=
@@ -422,7 +422,7 @@ protected def comp (f : β →+*o γ) (g : α →+*o β) : α →+*o γ :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] (f : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) => α -> γ) (OrderRingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) => β -> γ) (OrderRingHom.hasCoeToFun.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] (f : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_2 _inst_6 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_1 _inst_2 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_4 _inst_6 (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6)))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] (f : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_2 _inst_6 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_1 _inst_2 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_4 _inst_6 (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6)))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g))
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_comp OrderRingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : β →+*o γ) (g : α →+*o β) : ⇑(f.comp g) = f ∘ g :=
@@ -433,7 +433,7 @@ theorem coe_comp (f : β →+*o γ) (g : α →+*o β) : ⇑(f.comp g) = f ∘ g
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] (f : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) => α -> γ) (OrderRingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) => β -> γ) (OrderRingHom.hasCoeToFun.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g a))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] (f : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_2 _inst_6 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_1 _inst_2 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_4 _inst_6 (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6)))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g a))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] (f : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_2 _inst_6 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_1 _inst_2 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_4 _inst_6 (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6)))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g a))
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.comp_apply OrderRingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : β →+*o γ) (g : α →+*o β) (a : α) : f.comp g a = f (g a) :=
@@ -477,7 +477,7 @@ theorem id_comp (f : α →+*o β) : (OrderRingHom.id β).comp f = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] {f₁ : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6} {f₂ : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₁ g) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₂ g)) (Eq.{max (succ u2) (succ u3)} (OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) f₁ f₂))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] {f₁ : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6} {f₂ : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Surjective.{succ u1, succ u3} α β (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₁ g) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₂ g)) (Eq.{max (succ u3) (succ u2)} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) f₁ f₂))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] {f₁ : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6} {f₂ : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Surjective.{succ u1, succ u3} α β (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₁ g) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₂ g)) (Eq.{max (succ u3) (succ u2)} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) f₁ f₂))
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.cancel_right OrderRingHom.cancel_rightₓ'. -/
 theorem cancel_right {f₁ f₂ : β →+*o γ} {g : α →+*o β} (hg : Surjective g) :
     f₁.comp g = f₂.comp g ↔ f₁ = f₂ :=
@@ -488,7 +488,7 @@ theorem cancel_right {f₁ f₂ : β →+*o γ} {g : α →+*o β} (hg : Surject
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] {f : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g₁ : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4} {g₂ : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) => β -> γ) (OrderRingHom.hasCoeToFun.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₁) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₂)) (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g₁ g₂))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] {f : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g₁ : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4} {g₂ : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_4 _inst_6 (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6)))) f)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₁) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₂)) (Eq.{max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) g₁ g₂))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] {f : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g₁ : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4} {g₂ : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_4 _inst_6 (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6)))) f)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₁) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₂)) (Eq.{max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) g₁ g₂))
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.cancel_left OrderRingHom.cancel_leftₓ'. -/
 theorem cancel_left {f : β →+*o γ} {g₁ g₂ : α →+*o β} (hf : Injective f) :
     f.comp g₁ = f.comp g₂ ↔ g₁ = g₂ :=
@@ -550,7 +550,7 @@ instance : CoeFun (α ≃+*o β) fun _ => α → β :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (RingEquiv.toFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIso.toRingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 (OrderRingIso.toRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 (OrderRingIso.toRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f)
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_fun_eq_coe OrderRingIso.toFun_eq_coeₓ'. -/
 theorem toFun_eq_coe (f : α ≃+*o β) : f.toFun = f :=
   rfl
@@ -560,7 +560,7 @@ theorem toFun_eq_coe (f : α ≃+*o β) : f.toFun = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] {f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6} {g : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f g)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] {f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6} {g : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) g a)) -> (Eq.{max (succ u2) (succ u1)} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) f g)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] {f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6} {g : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) g a)) -> (Eq.{max (succ u2) (succ u1)} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) f g)
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.ext OrderRingIso.extₓ'. -/
 @[ext]
 theorem ext {f g : α ≃+*o β} (h : ∀ a, f a = g a) : f = g :=
@@ -571,7 +571,7 @@ theorem ext {f g : α ≃+*o β} (h : ∀ a, f a = g a) : f = g :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (e : RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (h : forall {a : α} {b : α}, Iff (LE.le.{u2} β _inst_6 (RingEquiv.toFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5 e a) (RingEquiv.toFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5 e b)) (LE.le.{u1} α _inst_3 a b)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderRingIso.mk.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (fun (_x : RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) => α -> β) (RingEquiv.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) e)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (e : RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) (h : forall {a : α} {b : α}, Iff (LE.le.{u1} β _inst_6 (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 e) a) (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 e) b)) (LE.le.{u2} α _inst_3 a b)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) (OrderRingIso.mk.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6 e h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (EquivLike.toEmbeddingLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (MulEquivClass.toEquivLike.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_4 (RingEquivClass.toMulEquivClass.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_2 _inst_4 _inst_5 (RingEquiv.instRingEquivClassRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5))))) e)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (e : RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) (h : forall {a : α} {b : α}, Iff (LE.le.{u1} β _inst_6 (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 e) a) (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 e) b)) (LE.le.{u2} α _inst_3 a b)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) (OrderRingIso.mk.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6 e h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (EquivLike.toEmbeddingLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (MulEquivClass.toEquivLike.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_4 (RingEquivClass.toMulEquivClass.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_2 _inst_4 _inst_5 (RingEquiv.instRingEquivClassRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5))))) e)
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_mk OrderRingIso.coe_mkₓ'. -/
 @[simp]
 theorem coe_mk (e : α ≃+* β) (h) : ⇑(⟨e, h⟩ : α ≃+*o β) = e :=
@@ -615,7 +615,7 @@ theorem toOrderIso_eq_coe (f : α ≃+*o β) : f.toOrderIso = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (fun (_x : RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) => α -> β) (RingEquiv.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (RingEquiv.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (EquivLike.toEmbeddingLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (MulEquivClass.toEquivLike.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_4 (RingEquivClass.toMulEquivClass.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_2 _inst_4 _inst_5 (RingEquiv.instRingEquivClassRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5))))) (RingEquivClass.toRingEquiv.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (EquivLike.toEmbeddingLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (MulEquivClass.toEquivLike.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_4 (RingEquivClass.toMulEquivClass.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_2 _inst_4 _inst_5 (RingEquiv.instRingEquivClassRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5))))) (RingEquivClass.toRingEquiv.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f)
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_ring_equiv OrderRingIso.coe_toRingEquivₓ'. -/
 @[simp, norm_cast]
 theorem coe_toRingEquiv (f : α ≃+*o β) : ⇑(f : α ≃+* β) = f :=
@@ -626,7 +626,7 @@ theorem coe_toRingEquiv (f : α ≃+*o β) : ⇑(f : α ≃+* β) = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} α β _inst_3 _inst_6) (fun (_x : RelIso.{u1, u2} α β (LE.le.{u1} α _inst_3) (LE.le.{u2} β _inst_6)) => α -> β) (RelIso.hasCoeToFun.{u1, u2} α β (LE.le.{u1} α _inst_3) (LE.le.{u2} β _inst_6)) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (OrderIso.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderIso.{u2, u1} α β _inst_3 _inst_6) α (fun (_x : α) => β) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderIso.{u2, u1} α β _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) (OrderIsoClass.toOrderIso.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderIso.{u2, u1} α β _inst_3 _inst_6) α (fun (_x : α) => β) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderIso.{u2, u1} α β _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302) (RelIso.instRelHomClassRelIso.{u2, u1} α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1285 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1287 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1285 x._@.Mathlib.Order.Hom.Basic._hyg.1287) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1300 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1302 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1300 x._@.Mathlib.Order.Hom.Basic._hyg.1302))) (OrderIsoClass.toOrderIso.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f)
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_order_iso OrderRingIso.coe_toOrderIsoₓ'. -/
 @[simp, norm_cast]
 theorem coe_toOrderIso (f : α ≃+*o β) : ⇑(f : α ≃o β) = f :=
@@ -732,7 +732,7 @@ protected def trans (f : α ≃+*o β) (g : β ≃+*o γ) : α ≃+*o γ :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] [_inst_7 : Mul.{u3} γ] [_inst_8 : Add.{u3} γ] [_inst_9 : LE.{u3} γ] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingIso.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderRingIso.{u1, u3} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9) (fun (_x : OrderRingIso.{u1, u3} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9) => α -> γ) (OrderRingIso.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9) (OrderRingIso.trans.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderRingIso.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) (fun (_x : OrderRingIso.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) => β -> γ) (OrderRingIso.hasCoeToFun.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) g (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f a))
 but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : Mul.{u3} α] [_inst_2 : Add.{u3} α] [_inst_3 : LE.{u3} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] [_inst_7 : Mul.{u1} γ] [_inst_8 : Add.{u1} γ] [_inst_9 : LE.{u1} γ] (f : OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) (g : OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) a) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) _x) (RelHomClass.toFunLike.{max u3 u1, u3, u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u3} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u1} γ _inst_9 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u3 u1, u3, u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α γ _inst_3 _inst_9 (OrderRingIsoClass.toOrderIsoClass.{max u3 u1, u3, u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u3, u1} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9)))) (OrderRingIso.trans.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 f g) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u2} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u1} γ _inst_9 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β γ _inst_6 _inst_9 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9)))) g (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u3} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u2} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u3 u2, u3, u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u3, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f a))
+  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : Mul.{u3} α] [_inst_2 : Add.{u3} α] [_inst_3 : LE.{u3} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] [_inst_7 : Mul.{u1} γ] [_inst_8 : Add.{u1} γ] [_inst_9 : LE.{u1} γ] (f : OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) (g : OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) a) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u3 u1, u3, u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u3} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u1} γ _inst_9 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u3 u1, u3, u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α γ _inst_3 _inst_9 (OrderRingIsoClass.toOrderIsoClass.{max u3 u1, u3, u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u3, u1} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9)))) (OrderRingIso.trans.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 f g) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u2} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : γ) => LE.le.{u1} γ _inst_9 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β γ _inst_6 _inst_9 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9)))) g (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u3} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u2} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderIsoClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u3 u2, u3, u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u3, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f a))
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.trans_apply OrderRingIso.trans_applyₓ'. -/
 @[simp]
 theorem trans_apply (f : α ≃+*o β) (g : β ≃+*o γ) (a : α) : f.trans g a = g (f a) :=
@@ -805,7 +805,7 @@ theorem toOrderRingHom_eq_coe (f : α ≃+*o β) : f.toOrderRingHom = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.orderRingIsoClass.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (fun (_x : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) (OrderRingHomClass.toOrderRingHom.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u1} β _inst_4))) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u1} β _inst_4)))))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) (OrderRingHomClass.toOrderRingHom.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u1} β _inst_4))) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1924 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u1} β _inst_4)))))) f)
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_order_ring_hom OrderRingIso.coe_toOrderRingHomₓ'. -/
 @[simp, norm_cast]
 theorem coe_toOrderRingHom (f : α ≃+*o β) : ⇑(f : α →+*o β) = f :=
Diff
@@ -128,7 +128,7 @@ instance (priority := 100) OrderRingIsoClass.toOrderIsoClass [Mul α] [Add α] [
 
 /- warning: order_ring_iso_class.to_order_ring_hom_class -> OrderRingIsoClass.toOrderRingHomClass is a dubious translation:
 lean 3 declaration is
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : OrderRingIsoClass.{u1, u2, u3} F α β (Distrib.toHasMul.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toHasAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (Distrib.toHasMul.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Distrib.toHasAdd.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Preorder.toLE.{u3} β _inst_4)], OrderRingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : OrderRingIsoClass.{u1, u2, u3} F α β (Distrib.toHasMul.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toHasAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toHasLe.{u2} α _inst_2) (Distrib.toHasMul.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Distrib.toHasAdd.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Preorder.toHasLe.{u3} β _inst_4)], OrderRingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4
 but is expected to have type
   forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : OrderRingIsoClass.{u1, u2, u3} F α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3)) (Distrib.toAdd.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Preorder.toLE.{u3} β _inst_4)], OrderRingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4
 Case conversion may be inaccurate. Consider using '#align order_ring_iso_class.to_order_ring_hom_class OrderRingIsoClass.toOrderRingHomClassₓ'. -/
@@ -781,7 +781,7 @@ variable [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β] [Preorder β]
 
 /- warning: order_ring_iso.to_order_ring_hom -> OrderRingIso.toOrderRingHom is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β], (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β], (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
 but is expected to have type
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β], (OrderRingIso.{u1, u2} α β (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u1} α _inst_2) (Preorder.toLE.{u2} β _inst_4)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_ring_hom OrderRingIso.toOrderRingHomₓ'. -/
@@ -792,7 +792,7 @@ def toOrderRingHom (f : α ≃+*o β) : α →+*o β :=
 
 /- warning: order_ring_iso.to_order_ring_hom_eq_coe -> OrderRingIso.toOrderRingHom_eq_coe is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)), Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.orderRingIsoClass.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)))))) f)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)), Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.orderRingIsoClass.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)))))) f)
 but is expected to have type
   forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)), Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f) (OrderRingHomClass.toOrderRingHom.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u1} β _inst_4))) f)
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_ring_hom_eq_coe OrderRingIso.toOrderRingHom_eq_coeₓ'. -/
@@ -803,7 +803,7 @@ theorem toOrderRingHom_eq_coe (f : α ≃+*o β) : f.toOrderRingHom = f :=
 
 /- warning: order_ring_iso.coe_to_order_ring_hom -> OrderRingIso.coe_toOrderRingHom is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.orderRingIsoClass.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (fun (_x : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) f)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.orderRingIsoClass.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (fun (_x : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) f)
 but is expected to have type
   forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) (OrderRingHomClass.toOrderRingHom.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u1} β _inst_4))) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u1} β _inst_4)))))) f)
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_order_ring_hom OrderRingIso.coe_toOrderRingHomₓ'. -/
@@ -814,7 +814,7 @@ theorem coe_toOrderRingHom (f : α ≃+*o β) : ⇑(f : α →+*o β) = f :=
 
 /- warning: order_ring_iso.coe_to_order_ring_hom_refl -> OrderRingIso.coe_toOrderRingHom_refl is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2)) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (HasLiftT.mk.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2)) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2)) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderRingHom.hasCoeT.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIsoClass.toOrderRingHomClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIso.orderRingIsoClass.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2)))))) (OrderRingIso.refl.{u1} α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)
+  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2)) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (HasLiftT.mk.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2)) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2)) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderRingHom.hasCoeT.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIsoClass.toOrderRingHomClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIso.orderRingIsoClass.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2)))))) (OrderRingIso.refl.{u1} α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)
 but is expected to have type
   forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderRingHomClass.toOrderRingHom.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Preorder.toLE.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIsoClass.toOrderRingHomClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Preorder.toLE.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u1, u1} α α (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2))) (OrderRingIso.refl.{u1} α (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_order_ring_hom_refl OrderRingIso.coe_toOrderRingHom_reflₓ'. -/
@@ -825,7 +825,7 @@ theorem coe_toOrderRingHom_refl : (OrderRingIso.refl α : α →+*o α) = OrderR
 
 /- warning: order_ring_iso.to_order_ring_hom_injective -> OrderRingIso.toOrderRingHom_injective is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β], Function.Injective.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β], Function.Injective.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toHasLe.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toHasLe.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
 but is expected to have type
   forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β], Function.Injective.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_ring_hom_injective OrderRingIso.toOrderRingHom_injectiveₓ'. -/
@@ -867,7 +867,7 @@ instance OrderRingHom.subsingleton [LinearOrderedField α] [LinearOrderedField 
 
 /- warning: order_ring_iso.subsingleton_right -> OrderRingIso.subsingleton_right is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : LinearOrderedField.{u2} β] [_inst_3 : Archimedean.{u2} β (OrderedSemiring.toOrderedAddCommMonoid.{u2} β (StrictOrderedSemiring.toOrderedSemiring.{u2} β (StrictOrderedRing.toStrictOrderedSemiring.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_2))))))], Subsingleton.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Distrib.toHasAdd.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))) (Distrib.toHasMul.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2))))) (Distrib.toHasAdd.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2))))) (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommGroup.toPartialOrder.{u2} β (StrictOrderedRing.toOrderedAddCommGroup.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_2))))))))
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : LinearOrderedField.{u2} β] [_inst_3 : Archimedean.{u2} β (OrderedSemiring.toOrderedAddCommMonoid.{u2} β (StrictOrderedSemiring.toOrderedSemiring.{u2} β (StrictOrderedRing.toStrictOrderedSemiring.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_2))))))], Subsingleton.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Distrib.toHasAdd.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Preorder.toHasLe.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))) (Distrib.toHasMul.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2))))) (Distrib.toHasAdd.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2))))) (Preorder.toHasLe.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommGroup.toPartialOrder.{u2} β (StrictOrderedRing.toOrderedAddCommGroup.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_2))))))))
 but is expected to have type
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : LinearOrderedField.{u2} β] [_inst_3 : Archimedean.{u2} β (OrderedSemiring.toOrderedAddCommMonoid.{u2} β (OrderedCommSemiring.toOrderedSemiring.{u2} β (StrictOrderedCommSemiring.toOrderedCommSemiring.{u2} β (LinearOrderedCommSemiring.toStrictOrderedCommSemiring.{u2} β (LinearOrderedSemifield.toLinearOrderedCommSemiring.{u2} β (LinearOrderedField.toLinearOrderedSemifield.{u2} β _inst_2))))))], Subsingleton.{max (succ u2) (succ u1)} (OrderRingIso.{u1, u2} α β (NonUnitalNonAssocRing.toMul.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1)))))) (NonUnitalNonAssocRing.toMul.{u2} β (NonAssocRing.toNonUnitalNonAssocRing.{u2} β (Ring.toNonAssocRing.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2)))))) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1)))))))) (Distrib.toAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} β (NonAssocRing.toNonUnitalNonAssocRing.{u2} β (Ring.toNonAssocRing.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2)))))))) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))) (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (StrictOrderedRing.toPartialOrder.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_2)))))))
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.subsingleton_right OrderRingIso.subsingleton_rightₓ'. -/
@@ -880,7 +880,7 @@ instance OrderRingIso.subsingleton_right [LinearOrderedField α] [LinearOrderedF
 
 /- warning: order_ring_iso.subsingleton_left -> OrderRingIso.subsingleton_left is a dubious translation:
 lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : Archimedean.{u1} α (OrderedSemiring.toOrderedAddCommMonoid.{u1} α (StrictOrderedSemiring.toOrderedSemiring.{u1} α (StrictOrderedRing.toStrictOrderedSemiring.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))] [_inst_3 : LinearOrderedField.{u2} β], Subsingleton.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Distrib.toHasAdd.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))) (Distrib.toHasMul.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3))))) (Distrib.toHasAdd.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3))))) (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommGroup.toPartialOrder.{u2} β (StrictOrderedRing.toOrderedAddCommGroup.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_3))))))))
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : Archimedean.{u1} α (OrderedSemiring.toOrderedAddCommMonoid.{u1} α (StrictOrderedSemiring.toOrderedSemiring.{u1} α (StrictOrderedRing.toStrictOrderedSemiring.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))] [_inst_3 : LinearOrderedField.{u2} β], Subsingleton.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Distrib.toHasAdd.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Preorder.toHasLe.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))) (Distrib.toHasMul.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3))))) (Distrib.toHasAdd.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3))))) (Preorder.toHasLe.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommGroup.toPartialOrder.{u2} β (StrictOrderedRing.toOrderedAddCommGroup.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_3))))))))
 but is expected to have type
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : Archimedean.{u1} α (OrderedSemiring.toOrderedAddCommMonoid.{u1} α (OrderedCommSemiring.toOrderedSemiring.{u1} α (StrictOrderedCommSemiring.toOrderedCommSemiring.{u1} α (LinearOrderedCommSemiring.toStrictOrderedCommSemiring.{u1} α (LinearOrderedSemifield.toLinearOrderedCommSemiring.{u1} α (LinearOrderedField.toLinearOrderedSemifield.{u1} α _inst_1))))))] [_inst_3 : LinearOrderedField.{u2} β], Subsingleton.{max (succ u2) (succ u1)} (OrderRingIso.{u1, u2} α β (NonUnitalNonAssocRing.toMul.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1)))))) (NonUnitalNonAssocRing.toMul.{u2} β (NonAssocRing.toNonUnitalNonAssocRing.{u2} β (Ring.toNonAssocRing.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3)))))) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1)))))))) (Distrib.toAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} β (NonAssocRing.toNonUnitalNonAssocRing.{u2} β (Ring.toNonAssocRing.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3)))))))) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))) (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (StrictOrderedRing.toPartialOrder.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_3)))))))
 Case conversion may be inaccurate. Consider using '#align order_ring_iso.subsingleton_left OrderRingIso.subsingleton_leftₓ'. -/
Diff
@@ -130,7 +130,7 @@ instance (priority := 100) OrderRingIsoClass.toOrderIsoClass [Mul α] [Add α] [
 lean 3 declaration is
   forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : OrderRingIsoClass.{u1, u2, u3} F α β (Distrib.toHasMul.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toHasAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (Distrib.toHasMul.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Distrib.toHasAdd.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Preorder.toLE.{u3} β _inst_4)], OrderRingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4
 but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} {_inst_1 : NonAssocSemiring.{u2} α} {_inst_2 : Preorder.{u2} α} {_inst_3 : NonAssocSemiring.{u3} β} {_inst_4 : Preorder.{u3} β} [_inst_5 : OrderRingIsoClass.{u1, u2, u3} F α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3)) (Distrib.toAdd.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Preorder.toLE.{u3} β _inst_4)], OrderRingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : OrderRingIsoClass.{u1, u2, u3} F α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3)) (Distrib.toAdd.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Preorder.toLE.{u3} β _inst_4)], OrderRingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4
 Case conversion may be inaccurate. Consider using '#align order_ring_iso_class.to_order_ring_hom_class OrderRingIsoClass.toOrderRingHomClassₓ'. -/
 -- See note [lower instance priority]
 instance (priority := 100) OrderRingIsoClass.toOrderRingHomClass [NonAssocSemiring α] [Preorder α]
Diff
@@ -246,7 +246,7 @@ theorem toOrderMonoidWithZeroHom (f : α →+*o β) : f.toOrderMonoidWithZeroHom
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β _inst_1 _inst_3) (fun (_x : RingHom.{u1, u2} α β _inst_1 _inst_3) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_3) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (RingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_coe_ring_hom OrderRingHom.coe_coe_ringHomₓ'. -/
 @[simp]
 theorem coe_coe_ringHom (f : α →+*o β) : ⇑(f : α →+* β) = f :=
@@ -279,7 +279,7 @@ theorem coe_coe_orderMonoidWithZeroHom (f : α →+*o β) : ⇑(f : α →*₀o
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β _inst_1 _inst_3) (fun (_x : RingHom.{u1, u2} α β _inst_1 _inst_3) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_3) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (RingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f) a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_ring_hom_apply OrderRingHom.coe_ringHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_ringHom_apply (f : α →+*o β) (a : α) : (f : α →+* β) a = f a :=
Diff
@@ -246,7 +246,7 @@ theorem toOrderMonoidWithZeroHom (f : α →+*o β) : f.toOrderMonoidWithZeroHom
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β _inst_1 _inst_3) (fun (_x : RingHom.{u1, u2} α β _inst_1 _inst_3) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_3) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (RingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_coe_ring_hom OrderRingHom.coe_coe_ringHomₓ'. -/
 @[simp]
 theorem coe_coe_ringHom (f : α →+*o β) : ⇑(f : α →+* β) = f :=
@@ -279,7 +279,7 @@ theorem coe_coe_orderMonoidWithZeroHom (f : α →+*o β) : ⇑(f : α →*₀o
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β _inst_1 _inst_3) (fun (_x : RingHom.{u1, u2} α β _inst_1 _inst_3) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_3) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (RingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f) a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
 Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_ring_hom_apply OrderRingHom.coe_ringHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_ringHom_apply (f : α →+*o β) (a : α) : (f : α →+* β) a = f a :=
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Alex J. Best, Yaël Dillies
 
 ! This file was ported from Lean 3 source module algebra.order.hom.ring
-! leanprover-community/mathlib commit 92ca63f0fb391a9ca5f22d2409a6080e786d99f7
+! leanprover-community/mathlib commit ee05e9ce1322178f0c12004eb93c00d2c8c00ed2
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -18,6 +18,9 @@ import Mathbin.Tactic.Wlog
 /-!
 # Ordered ring homomorphisms
 
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
 Homomorphisms between ordered (semi)rings that respect the ordering.
 
 ## Main definitions
Diff
@@ -691,16 +691,16 @@ protected def symm (e : α ≃+*o β) : β ≃+*o α :=
     erw [← map_le_map_iff e, e.1.apply_symm_apply, e.1.apply_symm_apply]⟩
 #align order_ring_iso.symm OrderRingIso.symm
 
-/- warning: order_ring_iso.simps.symm_apply -> OrderRingIso.Simps.symmApply is a dubious translation:
+/- warning: order_ring_iso.simps.symm_apply -> OrderRingIso.Simps.symm_apply is a dubious translation:
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) -> β -> α
 but is expected to have type
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) -> β -> α
-Case conversion may be inaccurate. Consider using '#align order_ring_iso.simps.symm_apply OrderRingIso.Simps.symmApplyₓ'. -/
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.simps.symm_apply OrderRingIso.Simps.symm_applyₓ'. -/
 /-- See Note [custom simps projection] -/
-def Simps.symmApply (e : α ≃+*o β) : β → α :=
+def Simps.symm_apply (e : α ≃+*o β) : β → α :=
   e.symm
-#align order_ring_iso.simps.symm_apply OrderRingIso.Simps.symmApply
+#align order_ring_iso.simps.symm_apply OrderRingIso.Simps.symm_apply
 
 /- warning: order_ring_iso.symm_symm -> OrderRingIso.symm_symm is a dubious translation:
 lean 3 declaration is
Diff
@@ -40,6 +40,7 @@ open Function
 
 variable {F α β γ δ : Type _}
 
+#print OrderRingHom /-
 /-- `order_ring_hom α β` is the type of monotone semiring homomorphisms from `α` to `β`.
 
 When possible, instead of parametrizing results over `(f : order_ring_hom α β)`,
@@ -50,6 +51,7 @@ structure OrderRingHom (α β : Type _) [NonAssocSemiring α] [Preorder α] [Non
   [Preorder β] extends α →+* β where
   monotone' : Monotone to_fun
 #align order_ring_hom OrderRingHom
+-/
 
 /-- Reinterpret an ordered ring homomorphism as a ring homomorphism. -/
 add_decl_doc OrderRingHom.toRingHom
@@ -57,6 +59,12 @@ add_decl_doc OrderRingHom.toRingHom
 -- mathport name: «expr →+*o »
 infixl:25 " →+*o " => OrderRingHom
 
+/- warning: order_ring_iso -> OrderRingIso is a dubious translation:
+lean 3 declaration is
+  forall (α : Type.{u1}) (β : Type.{u2}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], Sort.{max (succ u1) (succ u2)}
+but is expected to have type
+  forall (α : Type.{u1}) (β : Type.{u2}) [_inst_1 : Mul.{u1} α] [_inst_2 : Mul.{u2} β] [_inst_3 : Add.{u1} α] [_inst_4 : Add.{u2} β] [_inst_5 : LE.{u1} α] [_inst_6 : LE.{u2} β], Sort.{max (succ u1) (succ u2)}
+Case conversion may be inaccurate. Consider using '#align order_ring_iso OrderRingIsoₓ'. -/
 /-- `order_ring_hom α β` is the type of order-preserving semiring isomorphisms between `α` and `β`.
 
 When possible, instead of parametrizing results over `(f : order_ring_iso α β)`,
@@ -71,40 +79,56 @@ structure OrderRingIso (α β : Type _) [Mul α] [Add α] [LE α] [Mul β] [Add
 -- mathport name: «expr ≃+*o »
 infixl:25 " ≃+*o " => OrderRingIso
 
+#print OrderRingHomClass /-
 /-- `order_ring_hom_class F α β` states that `F` is a type of ordered semiring homomorphisms.
 You should extend this typeclass when you extend `order_ring_hom`. -/
 class OrderRingHomClass (F : Type _) (α β : outParam <| Type _) [NonAssocSemiring α] [Preorder α]
   [NonAssocSemiring β] [Preorder β] extends RingHomClass F α β where
   Monotone (f : F) : Monotone f
 #align order_ring_hom_class OrderRingHomClass
+-/
 
+#print OrderRingIsoClass /-
 /-- `order_ring_iso_class F α β` states that `F` is a type of ordered semiring isomorphisms.
 You should extend this class when you extend `order_ring_iso`. -/
 class OrderRingIsoClass (F : Type _) (α β : outParam (Type _)) [Mul α] [Add α] [LE α] [Mul β]
   [Add β] [LE β] extends RingEquivClass F α β where
   map_le_map_iff (f : F) {a b : α} : f a ≤ f b ↔ a ≤ b
 #align order_ring_iso_class OrderRingIsoClass
+-/
 
+#print OrderRingHomClass.toOrderAddMonoidHomClass /-
 -- See note [lower priority instance]
 instance (priority := 100) OrderRingHomClass.toOrderAddMonoidHomClass [NonAssocSemiring α]
     [Preorder α] [NonAssocSemiring β] [Preorder β] [OrderRingHomClass F α β] :
     OrderAddMonoidHomClass F α β :=
   { ‹OrderRingHomClass F α β› with }
 #align order_ring_hom_class.to_order_add_monoid_hom_class OrderRingHomClass.toOrderAddMonoidHomClass
+-/
 
+#print OrderRingHomClass.toOrderMonoidWithZeroHomClass /-
 -- See note [lower priority instance]
 instance (priority := 100) OrderRingHomClass.toOrderMonoidWithZeroHomClass [NonAssocSemiring α]
     [Preorder α] [NonAssocSemiring β] [Preorder β] [OrderRingHomClass F α β] :
     OrderMonoidWithZeroHomClass F α β :=
   { ‹OrderRingHomClass F α β› with }
 #align order_ring_hom_class.to_order_monoid_with_zero_hom_class OrderRingHomClass.toOrderMonoidWithZeroHomClass
+-/
 
+#print OrderRingIsoClass.toOrderIsoClass /-
 -- See note [lower instance priority]
 instance (priority := 100) OrderRingIsoClass.toOrderIsoClass [Mul α] [Add α] [LE α] [Mul β] [Add β]
     [LE β] [OrderRingIsoClass F α β] : OrderIsoClass F α β :=
   { ‹OrderRingIsoClass F α β› with }
 #align order_ring_iso_class.to_order_iso_class OrderRingIsoClass.toOrderIsoClass
+-/
 
+/- warning: order_ring_iso_class.to_order_ring_hom_class -> OrderRingIsoClass.toOrderRingHomClass is a dubious translation:
+lean 3 declaration is
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : OrderRingIsoClass.{u1, u2, u3} F α β (Distrib.toHasMul.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toHasAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (Distrib.toHasMul.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Distrib.toHasAdd.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Preorder.toLE.{u3} β _inst_4)], OrderRingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4
+but is expected to have type
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} {_inst_1 : NonAssocSemiring.{u2} α} {_inst_2 : Preorder.{u2} α} {_inst_3 : NonAssocSemiring.{u3} β} {_inst_4 : Preorder.{u3} β} [_inst_5 : OrderRingIsoClass.{u1, u2, u3} F α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3)) (Distrib.toAdd.{u3} β (NonUnitalNonAssocSemiring.toDistrib.{u3} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} β _inst_3))) (Preorder.toLE.{u3} β _inst_4)], OrderRingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4
+Case conversion may be inaccurate. Consider using '#align order_ring_iso_class.to_order_ring_hom_class OrderRingIsoClass.toOrderRingHomClassₓ'. -/
 -- See note [lower instance priority]
 instance (priority := 100) OrderRingIsoClass.toOrderRingHomClass [NonAssocSemiring α] [Preorder α]
     [NonAssocSemiring β] [Preorder β] [OrderRingIsoClass F α β] : OrderRingHomClass F α β :=
@@ -131,15 +155,19 @@ section Preorder
 variable [NonAssocSemiring β] [Preorder β] [NonAssocSemiring γ] [Preorder γ] [NonAssocSemiring δ]
   [Preorder δ]
 
+#print OrderRingHom.toOrderAddMonoidHom /-
 /-- Reinterpret an ordered ring homomorphism as an ordered additive monoid homomorphism. -/
 def toOrderAddMonoidHom (f : α →+*o β) : α →+o β :=
   { f with }
 #align order_ring_hom.to_order_add_monoid_hom OrderRingHom.toOrderAddMonoidHom
+-/
 
+#print OrderRingHom.toOrderMonoidWithZeroHom /-
 /-- Reinterpret an ordered ring homomorphism as an order homomorphism. -/
 def toOrderMonoidWithZeroHom (f : α →+*o β) : α →*₀o β :=
   { f with }
 #align order_ring_hom.to_order_monoid_with_zero_hom OrderRingHom.toOrderMonoidWithZeroHom
+-/
 
 instance : OrderRingHomClass (α →+*o β) α β
     where
@@ -156,85 +184,178 @@ directly. -/
 instance : CoeFun (α →+*o β) fun _ => α → β :=
   ⟨fun f => f.toFun⟩
 
+/- warning: order_ring_hom.to_fun_eq_coe -> OrderRingHom.toFun_eq_coe is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (RingHom.toFun.{u1, u2} α β _inst_1 _inst_3 (OrderRingHom.toRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (α -> β) (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1))) (MulOneClass.toOne.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3))) (MonoidHom.toOneHom.{u2, u1} α β (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1)) (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) (RingHom.toMonoidHom.{u2, u1} α β _inst_1 _inst_3 (OrderRingHom.toRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f)))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (f : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) f) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.to_fun_eq_coe OrderRingHom.toFun_eq_coeₓ'. -/
 theorem toFun_eq_coe (f : α →+*o β) : f.toFun = ⇑f :=
   rfl
 #align order_ring_hom.to_fun_eq_coe OrderRingHom.toFun_eq_coe
 
+/- warning: order_ring_hom.ext -> OrderRingHom.ext is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] {f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4} {g : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f g)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] {f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4} {g : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g a)) -> (Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) f g)
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.ext OrderRingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : α →+*o β} (h : ∀ a, f a = g a) : f = g :=
   FunLike.ext f g h
 #align order_ring_hom.ext OrderRingHom.ext
 
+/- warning: order_ring_hom.to_ring_hom_eq_coe -> OrderRingHom.toRingHom_eq_coe is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (RingHom.{u1, u2} α β _inst_1 _inst_3) (OrderRingHom.toRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (RingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (RingHom.{u2, u1} α β _inst_1 _inst_3) (OrderRingHom.toRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.to_ring_hom_eq_coe OrderRingHom.toRingHom_eq_coeₓ'. -/
 @[simp]
 theorem toRingHom_eq_coe (f : α →+*o β) : f.toRingHom = f :=
   RingHom.ext fun _ => rfl
 #align order_ring_hom.to_ring_hom_eq_coe OrderRingHom.toRingHom_eq_coe
 
+/- warning: order_ring_hom.to_order_add_monoid_hom_eq_coe -> OrderRingHom.toOrderAddMonoidHom_eq_coe is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (OrderRingHom.toOrderAddMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (OrderAddMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) (OrderRingHom.toOrderAddMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f) (OrderAddMonoidHomClass.toOrderAddMonoidHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.to_order_add_monoid_hom_eq_coe OrderRingHom.toOrderAddMonoidHom_eq_coeₓ'. -/
 @[simp]
 theorem toOrderAddMonoidHom_eq_coe (f : α →+*o β) : f.toOrderAddMonoidHom = f :=
   rfl
 #align order_ring_hom.to_order_add_monoid_hom_eq_coe OrderRingHom.toOrderAddMonoidHom_eq_coe
 
+/- warning: order_ring_hom.to_order_monoid_with_zero_hom_eq_coe clashes with order_ring_hom.to_order_monoid_with_zero_hom -> OrderRingHom.toOrderMonoidWithZeroHom
+warning: order_ring_hom.to_order_monoid_with_zero_hom_eq_coe -> OrderRingHom.toOrderMonoidWithZeroHom is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (OrderRingHom.toOrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (OrderMonoidWithZeroHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β], (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) -> (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3))
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.to_order_monoid_with_zero_hom_eq_coe OrderRingHom.toOrderMonoidWithZeroHomₓ'. -/
 @[simp]
-theorem toOrderMonoidWithZeroHom_eq_coe (f : α →+*o β) : f.toOrderMonoidWithZeroHom = f :=
+theorem toOrderMonoidWithZeroHom (f : α →+*o β) : f.toOrderMonoidWithZeroHom = f :=
   rfl
-#align order_ring_hom.to_order_monoid_with_zero_hom_eq_coe OrderRingHom.toOrderMonoidWithZeroHom_eq_coe
-
+#align order_ring_hom.to_order_monoid_with_zero_hom_eq_coe OrderRingHom.toOrderMonoidWithZeroHom
+
+/- warning: order_ring_hom.coe_coe_ring_hom -> OrderRingHom.coe_coe_ringHom is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β _inst_1 _inst_3) (fun (_x : RingHom.{u1, u2} α β _inst_1 _inst_3) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_3) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (RingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_coe_ring_hom OrderRingHom.coe_coe_ringHomₓ'. -/
 @[simp]
 theorem coe_coe_ringHom (f : α →+*o β) : ⇑(f : α →+* β) = f :=
   rfl
 #align order_ring_hom.coe_coe_ring_hom OrderRingHom.coe_coe_ringHom
 
+/- warning: order_ring_hom.coe_coe_order_add_monoid_hom -> OrderRingHom.coe_coe_orderAddMonoidHom is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (fun (_x : OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) => α -> β) (OrderAddMonoidHom.hasCoeToFun.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (OrderAddMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderAddMonoidHom.instOrderAddMonoidHomClassOrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))))) (OrderAddMonoidHomClass.toOrderAddMonoidHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_coe_order_add_monoid_hom OrderRingHom.coe_coe_orderAddMonoidHomₓ'. -/
 @[simp]
 theorem coe_coe_orderAddMonoidHom (f : α →+*o β) : ⇑(f : α →+o β) = f :=
   rfl
 #align order_ring_hom.coe_coe_order_add_monoid_hom OrderRingHom.coe_coe_orderAddMonoidHom
 
+/- warning: order_ring_hom.coe_coe_order_monoid_with_zero_hom -> OrderRingHom.coe_coe_orderMonoidWithZeroHom is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (OrderMonoidWithZeroHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1)) (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3))))) (OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_coe_order_monoid_with_zero_hom OrderRingHom.coe_coe_orderMonoidWithZeroHomₓ'. -/
 @[simp]
 theorem coe_coe_orderMonoidWithZeroHom (f : α →+*o β) : ⇑(f : α →*₀o β) = f :=
   rfl
 #align order_ring_hom.coe_coe_order_monoid_with_zero_hom OrderRingHom.coe_coe_orderMonoidWithZeroHom
 
+/- warning: order_ring_hom.coe_ring_hom_apply -> OrderRingHom.coe_ringHom_apply is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} α β _inst_1 _inst_3) (fun (_x : RingHom.{u1, u2} α β _inst_1 _inst_3) => α -> β) (RingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_3) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (RingHom.{u1, u2} α β _inst_1 _inst_3) (RingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f) a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, u1} (RingHom.{u2, u1} α β _inst_1 _inst_3) α β _inst_1 _inst_3 (RingHom.instRingHomClassRingHom.{u2, u1} α β _inst_1 _inst_3)))) (RingHomClass.toRingHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_3 (OrderRingHomClass.toRingHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_ring_hom_apply OrderRingHom.coe_ringHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_ringHom_apply (f : α →+*o β) (a : α) : (f : α →+* β) a = f a :=
   rfl
 #align order_ring_hom.coe_ring_hom_apply OrderRingHom.coe_ringHom_apply
 
+/- warning: order_ring_hom.coe_order_add_monoid_hom_apply -> OrderRingHom.coe_orderAddMonoidHom_apply is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (fun (_x : OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) => α -> β) (OrderAddMonoidHom.hasCoeToFun.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderAddMonoidHom.{u1, u2} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3))))) (OrderAddMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f) a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderAddMonoidHom.instOrderAddMonoidHomClassOrderAddMonoidHom.{u2, u1} α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3))))))) (OrderAddMonoidHomClass.toOrderAddMonoidHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_order_add_monoid_hom_apply OrderRingHom.coe_orderAddMonoidHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_orderAddMonoidHom_apply (f : α →+*o β) (a : α) : (f : α →+o β) a = f a :=
   rfl
 #align order_ring_hom.coe_order_add_monoid_hom_apply OrderRingHom.coe_orderAddMonoidHom_apply
 
+/- warning: order_ring_hom.coe_order_monoid_with_zero_hom_apply -> OrderRingHom.coe_orderMonoidWithZeroHom_apply is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3)) (OrderMonoidWithZeroHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u2} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.orderRingHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4))))) f) a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f a)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (MulZeroOneClass.toMulOneClass.{u2} α (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1)) (MulZeroOneClass.toMulOneClass.{u1} β (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3)) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3))))) (OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (NonAssocSemiring.toMulZeroOneClass.{u2} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} β _inst_3) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)) f) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f a)
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_order_monoid_with_zero_hom_apply OrderRingHom.coe_orderMonoidWithZeroHom_applyₓ'. -/
 @[norm_cast]
 theorem coe_orderMonoidWithZeroHom_apply (f : α →+*o β) (a : α) : (f : α →*₀o β) a = f a :=
   rfl
 #align order_ring_hom.coe_order_monoid_with_zero_hom_apply OrderRingHom.coe_orderMonoidWithZeroHom_apply
 
+/- warning: order_ring_hom.copy -> OrderRingHom.copy is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} β (AddMonoidWithOne.toAddMonoid.{u2} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} β (NonAssocSemiring.toAddCommMonoidWithOne.{u2} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.copy OrderRingHom.copyₓ'. -/
 /-- Copy of a `order_ring_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
 protected def copy (f : α →+*o β) (f' : α → β) (h : f' = f) : α →+*o β :=
   { f.toRingHom.copy f' h, f.toOrderAddMonoidHom.copy f' h with }
 #align order_ring_hom.copy OrderRingHom.copy
 
+/- warning: order_ring_hom.coe_copy -> OrderRingHom.coe_copy is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h)) f'
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) (OrderRingHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h)) f'
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_copy OrderRingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : α →+*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
   rfl
 #align order_ring_hom.coe_copy OrderRingHom.coe_copy
 
+/- warning: order_ring_hom.copy_eq -> OrderRingHom.copy_eq is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) f)), Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h) f
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) f)), Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f f' h) f
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.copy_eq OrderRingHom.copy_eqₓ'. -/
 theorem copy_eq (f : α →+*o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
 #align order_ring_hom.copy_eq OrderRingHom.copy_eq
 
 variable (α)
 
+#print OrderRingHom.id /-
 /-- The identity as an ordered ring homomorphism. -/
 protected def id : α →+*o α :=
   { RingHom.id _, OrderHom.id with }
 #align order_ring_hom.id OrderRingHom.id
+-/
 
 instance : Inhabited (α →+*o α) :=
   ⟨OrderRingHom.id α⟩
 
+/- warning: order_ring_hom.coe_id -> OrderRingHom.coe_id is a dubious translation:
+lean 3 declaration is
+  forall (α : Type.{u1}) [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (fun (_x : OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) => α -> α) (OrderRingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (id.{succ u1} α)
+but is expected to have type
+  forall (α : Type.{u1}) [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (id.{succ u1} α)
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_id OrderRingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(OrderRingHom.id α) = id :=
   rfl
@@ -242,62 +363,130 @@ theorem coe_id : ⇑(OrderRingHom.id α) = id :=
 
 variable {α}
 
+/- warning: order_ring_hom.id_apply -> OrderRingHom.id_apply is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (fun (_x : OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) => α -> α) (OrderRingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderRingHom.id.{u1} α _inst_1 _inst_2) a) a
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)))) (OrderRingHom.id.{u1} α _inst_1 _inst_2) a) a
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.id_apply OrderRingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : OrderRingHom.id α a = a :=
   rfl
 #align order_ring_hom.id_apply OrderRingHom.id_apply
 
+/- warning: order_ring_hom.coe_ring_hom_id -> OrderRingHom.coe_RingHom_id is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (RingHom.{u1, u1} α α _inst_1 _inst_1) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (RingHom.{u1, u1} α α _inst_1 _inst_1) (HasLiftT.mk.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (RingHom.{u1, u1} α α _inst_1 _inst_1) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (RingHom.{u1, u1} α α _inst_1 _inst_1) (RingHom.hasCoeT.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_1 (OrderRingHomClass.toRingHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.orderRingHomClass.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2))))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (RingHom.id.{u1} α _inst_1)
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (RingHom.{u1, u1} α α _inst_1 _inst_1) (RingHomClass.toRingHom.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_1 (OrderRingHomClass.toRingHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (RingHom.id.{u1} α _inst_1)
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_ring_hom_id OrderRingHom.coe_RingHom_idₓ'. -/
 @[simp]
-theorem coe_ringHom_id : (OrderRingHom.id α : α →+* α) = RingHom.id α :=
+theorem coe_RingHom_id : (OrderRingHom.id α : α →+* α) = RingHom.id α :=
   rfl
-#align order_ring_hom.coe_ring_hom_id OrderRingHom.coe_ringHom_id
-
+#align order_ring_hom.coe_ring_hom_id OrderRingHom.coe_RingHom_id
+
+/- warning: order_ring_hom.coe_order_add_monoid_hom_id -> OrderRingHom.coe_OrderAddMonoidHom_id is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderAddMonoidHom.{u1, u1} α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderAddMonoidHom.{u1, u1} α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1))))) (HasLiftT.mk.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderAddMonoidHom.{u1, u1} α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1))))) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderAddMonoidHom.{u1, u1} α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1))))) (OrderAddMonoidHom.hasCoeT.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.orderRingHomClass.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2))))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (OrderAddMonoidHom.id.{u1} α _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderAddMonoidHom.{u1, u1} α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1))))) (OrderAddMonoidHomClass.toOrderAddMonoidHom.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (OrderAddMonoidHom.id.{u1} α _inst_2 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_order_add_monoid_hom_id OrderRingHom.coe_OrderAddMonoidHom_idₓ'. -/
 @[simp]
-theorem coe_orderAddMonoidHom_id : (OrderRingHom.id α : α →+o α) = OrderAddMonoidHom.id α :=
+theorem coe_OrderAddMonoidHom_id : (OrderRingHom.id α : α →+o α) = OrderAddMonoidHom.id α :=
   rfl
-#align order_ring_hom.coe_order_add_monoid_hom_id OrderRingHom.coe_orderAddMonoidHom_id
-
+#align order_ring_hom.coe_order_add_monoid_hom_id OrderRingHom.coe_OrderAddMonoidHom_id
+
+/- warning: order_ring_hom.coe_order_monoid_with_zero_hom_id -> OrderRingHom.coe_OrderMonoidWithZeroHom_id is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1)) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderMonoidWithZeroHom.{u1, u1} α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1)) (HasLiftT.mk.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderMonoidWithZeroHom.{u1, u1} α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1)) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderMonoidWithZeroHom.{u1, u1} α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1)) (OrderMonoidWithZeroHom.hasCoeT.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.orderRingHomClass.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2))))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (OrderMonoidWithZeroHom.id.{u1} α _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1)) (OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_2 _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1) (OrderRingHomClass.toOrderMonoidWithZeroHomClass.{u1, u1, u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2)) (OrderRingHom.id.{u1} α _inst_1 _inst_2)) (OrderMonoidWithZeroHom.id.{u1} α _inst_2 (NonAssocSemiring.toMulZeroOneClass.{u1} α _inst_1))
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_order_monoid_with_zero_hom_id OrderRingHom.coe_OrderMonoidWithZeroHom_idₓ'. -/
 @[simp]
-theorem coe_orderMonoidWithZeroHom_id :
+theorem coe_OrderMonoidWithZeroHom_id :
     (OrderRingHom.id α : α →*₀o α) = OrderMonoidWithZeroHom.id α :=
   rfl
-#align order_ring_hom.coe_order_monoid_with_zero_hom_id OrderRingHom.coe_orderMonoidWithZeroHom_id
+#align order_ring_hom.coe_order_monoid_with_zero_hom_id OrderRingHom.coe_OrderMonoidWithZeroHom_id
 
+#print OrderRingHom.comp /-
 /-- Composition of two `order_ring_hom`s as an `order_ring_hom`. -/
 protected def comp (f : β →+*o γ) (g : α →+*o β) : α →+*o γ :=
   { f.toRingHom.comp g.toRingHom, f.toOrderAddMonoidHom.comp g.toOrderAddMonoidHom with }
 #align order_ring_hom.comp OrderRingHom.comp
+-/
 
+/- warning: order_ring_hom.coe_comp -> OrderRingHom.coe_comp is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] (f : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) => α -> γ) (OrderRingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) => β -> γ) (OrderRingHom.hasCoeToFun.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g))
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] (f : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_2 _inst_6 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_1 _inst_2 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_4 _inst_6 (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6)))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g))
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.coe_comp OrderRingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : β →+*o γ) (g : α →+*o β) : ⇑(f.comp g) = f ∘ g :=
   rfl
 #align order_ring_hom.coe_comp OrderRingHom.coe_comp
 
+/- warning: order_ring_hom.comp_apply -> OrderRingHom.comp_apply is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] (f : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) => α -> γ) (OrderRingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) => β -> γ) (OrderRingHom.hasCoeToFun.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g a))
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] (f : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_2 _inst_6 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u2, u1, u2} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) α γ _inst_1 _inst_2 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_4 _inst_6 (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6)))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g a))
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.comp_apply OrderRingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : β →+*o γ) (g : α →+*o β) (a : α) : f.comp g a = f (g a) :=
   rfl
 #align order_ring_hom.comp_apply OrderRingHom.comp_apply
 
+/- warning: order_ring_hom.comp_assoc -> OrderRingHom.comp_assoc is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} {δ : Type.{u4}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] [_inst_7 : NonAssocSemiring.{u4} δ] [_inst_8 : Preorder.{u4} δ] (f : OrderRingHom.{u3, u4} γ δ _inst_5 _inst_6 _inst_7 _inst_8) (g : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (h : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u4)} (OrderRingHom.{u1, u4} α δ _inst_1 _inst_2 _inst_7 _inst_8) (OrderRingHom.comp.{u1, u2, u4} α β δ _inst_1 _inst_2 _inst_3 _inst_4 _inst_7 _inst_8 (OrderRingHom.comp.{u2, u3, u4} β γ δ _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f g) h) (OrderRingHom.comp.{u1, u3, u4} α γ δ _inst_1 _inst_2 _inst_5 _inst_6 _inst_7 _inst_8 f (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 g h))
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u4}} {δ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u4} γ] [_inst_6 : Preorder.{u4} γ] [_inst_7 : NonAssocSemiring.{u3} δ] [_inst_8 : Preorder.{u3} δ] (f : OrderRingHom.{u4, u3} γ δ _inst_5 _inst_6 _inst_7 _inst_8) (g : OrderRingHom.{u2, u4} β γ _inst_3 _inst_4 _inst_5 _inst_6) (h : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α δ _inst_1 _inst_2 _inst_7 _inst_8) (OrderRingHom.comp.{u1, u2, u3} α β δ _inst_1 _inst_2 _inst_3 _inst_4 _inst_7 _inst_8 (OrderRingHom.comp.{u2, u4, u3} β γ δ _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 f g) h) (OrderRingHom.comp.{u1, u4, u3} α γ δ _inst_1 _inst_2 _inst_5 _inst_6 _inst_7 _inst_8 f (OrderRingHom.comp.{u1, u2, u4} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 g h))
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.comp_assoc OrderRingHom.comp_assocₓ'. -/
 theorem comp_assoc (f : γ →+*o δ) (g : β →+*o γ) (h : α →+*o β) :
     (f.comp g).comp h = f.comp (g.comp h) :=
   rfl
 #align order_ring_hom.comp_assoc OrderRingHom.comp_assoc
 
+/- warning: order_ring_hom.comp_id -> OrderRingHom.comp_id is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.comp.{u1, u1, u2} α α β _inst_1 _inst_2 _inst_1 _inst_2 _inst_3 _inst_4 f (OrderRingHom.id.{u1} α _inst_1 _inst_2)) f
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.comp.{u2, u2, u1} α α β _inst_1 _inst_2 _inst_1 _inst_2 _inst_3 _inst_4 f (OrderRingHom.id.{u2} α _inst_1 _inst_2)) f
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.comp_id OrderRingHom.comp_idₓ'. -/
 @[simp]
 theorem comp_id (f : α →+*o β) : f.comp (OrderRingHom.id α) = f :=
   ext fun x => rfl
 #align order_ring_hom.comp_id OrderRingHom.comp_id
 
+/- warning: order_ring_hom.id_comp -> OrderRingHom.id_comp is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.comp.{u1, u2, u2} α β β _inst_1 _inst_2 _inst_3 _inst_4 _inst_3 _inst_4 (OrderRingHom.id.{u2} β _inst_3 _inst_4) f) f
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4), Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.comp.{u2, u1, u1} α β β _inst_1 _inst_2 _inst_3 _inst_4 _inst_3 _inst_4 (OrderRingHom.id.{u1} β _inst_3 _inst_4) f) f
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.id_comp OrderRingHom.id_compₓ'. -/
 @[simp]
 theorem id_comp (f : α →+*o β) : (OrderRingHom.id β).comp f = f :=
   ext fun x => rfl
 #align order_ring_hom.id_comp OrderRingHom.id_comp
 
+/- warning: order_ring_hom.cancel_right -> OrderRingHom.cancel_right is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] {f₁ : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6} {f₂ : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₁ g) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₂ g)) (Eq.{max (succ u2) (succ u3)} (OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) f₁ f₂))
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] {f₁ : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6} {f₂ : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Surjective.{succ u1, succ u3} α β (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u1} α (AddMonoidWithOne.toAddMonoid.{u1} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} α (NonAssocSemiring.toAddCommMonoidWithOne.{u1} α _inst_1)))) (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u1 u3, u1, u3} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4)))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₁ g) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f₂ g)) (Eq.{max (succ u3) (succ u2)} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) f₁ f₂))
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.cancel_right OrderRingHom.cancel_rightₓ'. -/
 theorem cancel_right {f₁ f₂ : β →+*o γ} {g : α →+*o β} (hg : Surjective g) :
     f₁.comp g = f₂.comp g ↔ f₁ = f₂ :=
   ⟨fun h => ext <| hg.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
 #align order_ring_hom.cancel_right OrderRingHom.cancel_right
 
+/- warning: order_ring_hom.cancel_left -> OrderRingHom.cancel_left is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] [_inst_5 : NonAssocSemiring.{u3} γ] [_inst_6 : Preorder.{u3} γ] {f : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g₁ : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4} {g₂ : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingHom.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) => β -> γ) (OrderRingHom.hasCoeToFun.{u2, u3} β γ _inst_3 _inst_4 _inst_5 _inst_6) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₁) (OrderRingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₂)) (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) g₁ g₂))
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u3} β] [_inst_4 : Preorder.{u3} β] [_inst_5 : NonAssocSemiring.{u2} γ] [_inst_6 : Preorder.{u2} γ] {f : OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6} {g₁ : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4} {g₂ : OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u2} γ (Preorder.toLE.{u2} γ _inst_6) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_4 _inst_6 (AddMonoid.toAddZeroClass.{u3} β (AddMonoidWithOne.toAddMonoid.{u3} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u3} β (NonAssocSemiring.toAddCommMonoidWithOne.{u3} β _inst_3)))) (AddMonoid.toAddZeroClass.{u2} γ (AddMonoidWithOne.toAddMonoid.{u2} γ (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} γ (NonAssocSemiring.toAddCommMonoidWithOne.{u2} γ _inst_5)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u3 u2, u3, u2} (OrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6) β γ _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u3, u2} β γ _inst_3 _inst_4 _inst_5 _inst_6)))) f)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α γ _inst_1 _inst_2 _inst_5 _inst_6) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₁) (OrderRingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f g₂)) (Eq.{max (succ u1) (succ u3)} (OrderRingHom.{u1, u3} α β _inst_1 _inst_2 _inst_3 _inst_4) g₁ g₂))
+Case conversion may be inaccurate. Consider using '#align order_ring_hom.cancel_left OrderRingHom.cancel_leftₓ'. -/
 theorem cancel_left {f : β →+*o γ} {g₁ g₂ : α →+*o β} (hf : Injective f) :
     f.comp g₁ = f.comp g₂ ↔ g₁ = g₂ :=
   ⟨fun h => ext fun a => hf <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
@@ -324,6 +513,12 @@ section LE
 
 variable [Mul α] [Add α] [LE α] [Mul β] [Add β] [LE β] [Mul γ] [Add γ] [LE γ] [Mul δ] [Add δ] [LE δ]
 
+/- warning: order_ring_iso.to_order_iso -> OrderRingIso.toOrderIso is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) -> (OrderIso.{u1, u2} α β _inst_3 _inst_6)
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) -> (OrderIso.{u1, u2} α β _inst_3 _inst_6)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_iso OrderRingIso.toOrderIsoₓ'. -/
 /-- Reinterpret an ordered ring isomorphism as an order isomorphism. -/
 def toOrderIso (f : α ≃+*o β) : α ≃o β :=
   ⟨f.toRingEquiv.toEquiv, fun _ _ => f.map_le_map_iff'⟩
@@ -348,47 +543,101 @@ directly. -/
 instance : CoeFun (α ≃+*o β) fun _ => α → β :=
   FunLike.hasCoeToFun
 
+/- warning: order_ring_iso.to_fun_eq_coe -> OrderRingIso.toFun_eq_coe is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (RingEquiv.toFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIso.toRingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 (OrderRingIso.toRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_fun_eq_coe OrderRingIso.toFun_eq_coeₓ'. -/
 theorem toFun_eq_coe (f : α ≃+*o β) : f.toFun = f :=
   rfl
 #align order_ring_iso.to_fun_eq_coe OrderRingIso.toFun_eq_coe
 
+/- warning: order_ring_iso.ext -> OrderRingIso.ext is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] {f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6} {g : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f g)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] {f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6} {g : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) g a)) -> (Eq.{max (succ u2) (succ u1)} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) f g)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.ext OrderRingIso.extₓ'. -/
 @[ext]
 theorem ext {f g : α ≃+*o β} (h : ∀ a, f a = g a) : f = g :=
   FunLike.ext f g h
 #align order_ring_iso.ext OrderRingIso.ext
 
+/- warning: order_ring_iso.coe_mk -> OrderRingIso.coe_mk is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (e : RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (h : forall {a : α} {b : α}, Iff (LE.le.{u2} β _inst_6 (RingEquiv.toFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5 e a) (RingEquiv.toFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5 e b)) (LE.le.{u1} α _inst_3 a b)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderRingIso.mk.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (fun (_x : RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) => α -> β) (RingEquiv.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) e)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (e : RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) (h : forall {a : α} {b : α}, Iff (LE.le.{u1} β _inst_6 (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 e) a) (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 e) b)) (LE.le.{u2} α _inst_3 a b)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) (OrderRingIso.mk.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6 e h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (EquivLike.toEmbeddingLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (MulEquivClass.toEquivLike.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_4 (RingEquivClass.toMulEquivClass.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_2 _inst_4 _inst_5 (RingEquiv.instRingEquivClassRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5))))) e)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_mk OrderRingIso.coe_mkₓ'. -/
 @[simp]
 theorem coe_mk (e : α ≃+* β) (h) : ⇑(⟨e, h⟩ : α ≃+*o β) = e :=
   rfl
 #align order_ring_iso.coe_mk OrderRingIso.coe_mk
 
+/- warning: order_ring_iso.mk_coe -> OrderRingIso.mk_coe is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (e : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (h : forall {a : α} {b : α}, Iff (LE.le.{u2} β _inst_6 (RingEquiv.toFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5 ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (RingEquiv.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) e) a) (RingEquiv.toFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5 ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (RingEquiv.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) e) b)) (LE.le.{u1} α _inst_3 a b)), Eq.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderRingIso.mk.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (RingEquiv.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) e) h) e
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (e : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) (h : forall {a : α} {b : α}, Iff (LE.le.{u1} β _inst_6 (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 (RingEquivClass.toRingEquiv.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) e)) a) (Equiv.toFun.{succ u2, succ u1} α β (RingEquiv.toEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 (RingEquivClass.toRingEquiv.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) e)) b)) (LE.le.{u2} α _inst_3 a b)), Eq.{max (succ u2) (succ u1)} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) (OrderRingIso.mk.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6 (RingEquivClass.toRingEquiv.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) e) h) e
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.mk_coe OrderRingIso.mk_coeₓ'. -/
 @[simp]
 theorem mk_coe (e : α ≃+*o β) (h) : (⟨e, h⟩ : α ≃+*o β) = e :=
   ext fun _ => rfl
 #align order_ring_iso.mk_coe OrderRingIso.mk_coe
 
+/- warning: order_ring_iso.to_ring_equiv_eq_coe -> OrderRingIso.toRingEquiv_eq_coe is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (OrderRingIso.toRingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (RingEquiv.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) f)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) (OrderRingIso.toRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6 f) (RingEquivClass.toRingEquiv.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) f)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_ring_equiv_eq_coe OrderRingIso.toRingEquiv_eq_coeₓ'. -/
 @[simp]
 theorem toRingEquiv_eq_coe (f : α ≃+*o β) : f.toRingEquiv = f :=
   RingEquiv.ext fun _ => rfl
 #align order_ring_iso.to_ring_equiv_eq_coe OrderRingIso.toRingEquiv_eq_coe
 
+/- warning: order_ring_iso.to_order_iso_eq_coe -> OrderRingIso.toOrderIso_eq_coe is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (OrderIso.{u1, u2} α β _inst_3 _inst_6) (OrderRingIso.toOrderIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (OrderIso.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) f)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (OrderIso.{u2, u1} α β _inst_3 _inst_6) (OrderRingIso.toOrderIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 f) (OrderIsoClass.toOrderIso.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) f)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_iso_eq_coe OrderRingIso.toOrderIso_eq_coeₓ'. -/
 @[simp]
 theorem toOrderIso_eq_coe (f : α ≃+*o β) : f.toOrderIso = f :=
   OrderIso.ext rfl
 #align order_ring_iso.to_order_iso_eq_coe OrderRingIso.toOrderIso_eq_coe
 
+/- warning: order_ring_iso.coe_to_ring_equiv -> OrderRingIso.coe_toRingEquiv is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (fun (_x : RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) => α -> β) (RingEquiv.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (RingEquiv.{u1, u2} α β _inst_1 _inst_2 _inst_4 _inst_5) (RingEquiv.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Data.FunLike.Embedding._hyg.19 : α) => β) _x) (EmbeddingLike.toFunLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (EquivLike.toEmbeddingLike.{max (succ u2) (succ u1), succ u2, succ u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β (MulEquivClass.toEquivLike.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_4 (RingEquivClass.toMulEquivClass.{max u2 u1, u2, u1} (RingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5) α β _inst_1 _inst_2 _inst_4 _inst_5 (RingEquiv.instRingEquivClassRingEquiv.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5))))) (RingEquivClass.toRingEquiv.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_4 _inst_5 (OrderRingIsoClass.toRingEquivClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_ring_equiv OrderRingIso.coe_toRingEquivₓ'. -/
 @[simp, norm_cast]
-theorem coe_to_ringEquiv (f : α ≃+*o β) : ⇑(f : α ≃+* β) = f :=
+theorem coe_toRingEquiv (f : α ≃+*o β) : ⇑(f : α ≃+* β) = f :=
   rfl
-#align order_ring_iso.coe_to_ring_equiv OrderRingIso.coe_to_ringEquiv
-
+#align order_ring_iso.coe_to_ring_equiv OrderRingIso.coe_toRingEquiv
+
+/- warning: order_ring_iso.coe_to_order_iso -> OrderRingIso.coe_toOrderIso is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderIso.{u1, u2} α β _inst_3 _inst_6) (fun (_x : RelIso.{u1, u2} α β (LE.le.{u1} α _inst_3) (LE.le.{u2} β _inst_6)) => α -> β) (RelIso.hasCoeToFun.{u1, u2} α β (LE.le.{u1} α _inst_3) (LE.le.{u2} β _inst_6)) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderIso.{u1, u2} α β _inst_3 _inst_6) (OrderIso.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.orderRingIsoClass.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (f : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderIso.{u2, u1} α β _inst_3 _inst_6) α (fun (_x : α) => β) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderIso.{u2, u1} α β _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298) (RelIso.instRelHomClassRelIso.{u2, u1} α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1281 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1283 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1281 x._@.Mathlib.Order.Hom.Basic._hyg.1283) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1296 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1298 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1296 x._@.Mathlib.Order.Hom.Basic._hyg.1298))) (OrderIsoClass.toOrderIso.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_order_iso OrderRingIso.coe_toOrderIsoₓ'. -/
 @[simp, norm_cast]
-theorem coe_to_orderIso (f : α ≃+*o β) : ⇑(f : α ≃o β) = f :=
+theorem coe_toOrderIso (f : α ≃+*o β) : ⇑(f : α ≃o β) = f :=
   rfl
-#align order_ring_iso.coe_to_order_iso OrderRingIso.coe_to_orderIso
+#align order_ring_iso.coe_to_order_iso OrderRingIso.coe_toOrderIso
 
 variable (α)
 
+/- warning: order_ring_iso.refl -> OrderRingIso.refl is a dubious translation:
+lean 3 declaration is
+  forall (α : Type.{u1}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α], OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3
+but is expected to have type
+  forall (α : Type.{u1}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α], OrderRingIso.{u1, u1} α α _inst_1 _inst_1 _inst_2 _inst_2 _inst_3 _inst_3
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.refl OrderRingIso.reflₓ'. -/
 /-- The identity map as an ordered ring isomorphism. -/
 @[refl]
 protected def refl : α ≃+*o α :=
@@ -398,16 +647,30 @@ protected def refl : α ≃+*o α :=
 instance : Inhabited (α ≃+*o α) :=
   ⟨OrderRingIso.refl α⟩
 
+#print OrderRingIso.refl_apply /-
 @[simp]
 theorem refl_apply (x : α) : OrderRingIso.refl α x = x :=
   rfl
 #align order_ring_iso.refl_apply OrderRingIso.refl_apply
+-/
 
+/- warning: order_ring_iso.coe_ring_equiv_refl -> OrderRingIso.coe_ringEquiv_refl is a dubious translation:
+lean 3 declaration is
+  forall (α : Type.{u1}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α], Eq.{succ u1} (RingEquiv.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (RingEquiv.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (HasLiftT.mk.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (RingEquiv.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (RingEquiv.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (RingEquiv.hasCoeT.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIsoClass.toRingEquivClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3 (OrderRingIso.orderRingIsoClass.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3))))) (OrderRingIso.refl.{u1} α _inst_1 _inst_2 _inst_3)) (RingEquiv.refl.{u1} α _inst_1 _inst_2)
+but is expected to have type
+  forall (α : Type.{u1}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α], Eq.{succ u1} (RingEquiv.{u1, u1} α α _inst_1 _inst_1 _inst_2 _inst_2) (RingEquivClass.toRingEquiv.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_1 _inst_2 _inst_2 _inst_3 _inst_3) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIsoClass.toRingEquivClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_1 _inst_2 _inst_2 _inst_3 _inst_3) α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3)) (OrderRingIso.refl.{u1} α _inst_1 _inst_2 _inst_3)) (RingEquiv.refl.{u1} α _inst_1 _inst_2)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_ring_equiv_refl OrderRingIso.coe_ringEquiv_reflₓ'. -/
 @[simp]
 theorem coe_ringEquiv_refl : (OrderRingIso.refl α : α ≃+* α) = RingEquiv.refl α :=
   rfl
 #align order_ring_iso.coe_ring_equiv_refl OrderRingIso.coe_ringEquiv_refl
 
+/- warning: order_ring_iso.coe_order_iso_refl -> OrderRingIso.coe_orderIso_refl is a dubious translation:
+lean 3 declaration is
+  forall (α : Type.{u1}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α], Eq.{succ u1} (OrderIso.{u1, u1} α α _inst_3 _inst_3) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (OrderIso.{u1, u1} α α _inst_3 _inst_3) (HasLiftT.mk.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (OrderIso.{u1, u1} α α _inst_3 _inst_3) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (OrderIso.{u1, u1} α α _inst_3 _inst_3) (OrderIso.hasCoeT.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) α α _inst_3 _inst_3 (OrderRingIsoClass.toOrderIsoClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3 (OrderRingIso.orderRingIsoClass.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3))))) (OrderRingIso.refl.{u1} α _inst_1 _inst_2 _inst_3)) (OrderIso.refl.{u1} α _inst_3)
+but is expected to have type
+  forall (α : Type.{u1}) [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α], Eq.{succ u1} (OrderIso.{u1, u1} α α _inst_3 _inst_3) (OrderIsoClass.toOrderIso.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_1 _inst_2 _inst_2 _inst_3 _inst_3) α α _inst_3 _inst_3 (OrderRingIsoClass.toOrderIsoClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_1 _inst_2 _inst_2 _inst_3 _inst_3) α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3)) (OrderRingIso.refl.{u1} α _inst_1 _inst_2 _inst_3)) (OrderIso.refl.{u1} α _inst_3)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_order_iso_refl OrderRingIso.coe_orderIso_reflₓ'. -/
 @[simp]
 theorem coe_orderIso_refl : (OrderRingIso.refl α : α ≃o α) = OrderIso.refl α :=
   rfl
@@ -415,6 +678,12 @@ theorem coe_orderIso_refl : (OrderRingIso.refl α : α ≃o α) = OrderIso.refl
 
 variable {α}
 
+/- warning: order_ring_iso.symm -> OrderRingIso.symm is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) -> (OrderRingIso.{u2, u1} β α _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3)
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) -> (OrderRingIso.{u2, u1} β α _inst_4 _inst_1 _inst_5 _inst_2 _inst_6 _inst_3)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.symm OrderRingIso.symmₓ'. -/
 /-- The inverse of an ordered ring isomorphism as an ordered ring isomorphism. -/
 @[symm]
 protected def symm (e : α ≃+*o β) : β ≃+*o α :=
@@ -422,37 +691,79 @@ protected def symm (e : α ≃+*o β) : β ≃+*o α :=
     erw [← map_le_map_iff e, e.1.apply_symm_apply, e.1.apply_symm_apply]⟩
 #align order_ring_iso.symm OrderRingIso.symm
 
+/- warning: order_ring_iso.simps.symm_apply -> OrderRingIso.Simps.symmApply is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) -> β -> α
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], (OrderRingIso.{u1, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) -> β -> α
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.simps.symm_apply OrderRingIso.Simps.symmApplyₓ'. -/
 /-- See Note [custom simps projection] -/
 def Simps.symmApply (e : α ≃+*o β) : β → α :=
   e.symm
 #align order_ring_iso.simps.symm_apply OrderRingIso.Simps.symmApply
 
+/- warning: order_ring_iso.symm_symm -> OrderRingIso.symm_symm is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (e : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderRingIso.symm.{u2, u1} β α _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3 (OrderRingIso.symm.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e)) e
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (e : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{max (succ u2) (succ u1)} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) (OrderRingIso.symm.{u1, u2} β α _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3 (OrderRingIso.symm.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e)) e
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.symm_symm OrderRingIso.symm_symmₓ'. -/
 @[simp]
 theorem symm_symm (e : α ≃+*o β) : e.symm.symm = e :=
   ext fun _ => rfl
 #align order_ring_iso.symm_symm OrderRingIso.symm_symm
 
+/- warning: order_ring_iso.trans -> OrderRingIso.trans is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] [_inst_7 : Mul.{u3} γ] [_inst_8 : Add.{u3} γ] [_inst_9 : LE.{u3} γ], (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) -> (OrderRingIso.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) -> (OrderRingIso.{u1, u3} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9)
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] [_inst_7 : Mul.{u3} γ] [_inst_8 : Add.{u3} γ] [_inst_9 : LE.{u3} γ], (OrderRingIso.{u1, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) -> (OrderRingIso.{u2, u3} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) -> (OrderRingIso.{u1, u3} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.trans OrderRingIso.transₓ'. -/
 /-- Composition of `order_ring_iso`s as an `order_ring_iso`. -/
 @[trans, simps]
 protected def trans (f : α ≃+*o β) (g : β ≃+*o γ) : α ≃+*o γ :=
   ⟨f.toRingEquiv.trans g.toRingEquiv, fun a b => (map_le_map_iff g).trans (map_le_map_iff f)⟩
 #align order_ring_iso.trans OrderRingIso.trans
 
+/- warning: order_ring_iso.trans_apply -> OrderRingIso.trans_apply is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] [_inst_7 : Mul.{u3} γ] [_inst_8 : Add.{u3} γ] [_inst_9 : LE.{u3} γ] (f : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (g : OrderRingIso.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderRingIso.{u1, u3} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9) (fun (_x : OrderRingIso.{u1, u3} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9) => α -> γ) (OrderRingIso.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9) (OrderRingIso.trans.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderRingIso.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) (fun (_x : OrderRingIso.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) => β -> γ) (OrderRingIso.hasCoeToFun.{u2, u3} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9) g (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (fun (_x : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) f a))
+but is expected to have type
+  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : Mul.{u3} α] [_inst_2 : Add.{u3} α] [_inst_3 : LE.{u3} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] [_inst_7 : Mul.{u1} γ] [_inst_8 : Add.{u1} γ] [_inst_9 : LE.{u1} γ] (f : OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) (g : OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) a) (FunLike.coe.{max (succ u3) (succ u1), succ u3, succ u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) _x) (RelHomClass.toFunLike.{max u3 u1, u3, u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u3} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u1} γ _inst_9 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u3 u1, u3, u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α γ _inst_3 _inst_9 (OrderRingIsoClass.toOrderIsoClass.{max u3 u1, u3, u1} (OrderRingIso.{u3, u1} α γ _inst_1 _inst_7 _inst_2 _inst_8 _inst_3 _inst_9) α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u3, u1} α γ _inst_1 _inst_2 _inst_3 _inst_7 _inst_8 _inst_9)))) (OrderRingIso.trans.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 f g) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u2} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : γ) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : γ) => LE.le.{u1} γ _inst_9 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β γ _inst_6 _inst_9 (OrderRingIsoClass.toOrderIsoClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} β γ _inst_4 _inst_7 _inst_5 _inst_8 _inst_6 _inst_9) β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} β γ _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9)))) g (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u3} α _inst_3 x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u2} β _inst_6 x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderIsoClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_3 _inst_6 (OrderRingIsoClass.toOrderIsoClass.{max u3 u2, u3, u2} (OrderRingIso.{u3, u2} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u3, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) f a))
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.trans_apply OrderRingIso.trans_applyₓ'. -/
 @[simp]
 theorem trans_apply (f : α ≃+*o β) (g : β ≃+*o γ) (a : α) : f.trans g a = g (f a) :=
   rfl
 #align order_ring_iso.trans_apply OrderRingIso.trans_apply
 
+/- warning: order_ring_iso.self_trans_symm -> OrderRingIso.self_trans_symm is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (e : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{succ u1} (OrderRingIso.{u1, u1} α α _inst_1 _inst_2 _inst_3 _inst_1 _inst_2 _inst_3) (OrderRingIso.trans.{u1, u2, u1} α β α _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3 e (OrderRingIso.symm.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e)) (OrderRingIso.refl.{u1} α _inst_1 _inst_2 _inst_3)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (e : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{succ u2} (OrderRingIso.{u2, u2} α α _inst_1 _inst_1 _inst_2 _inst_2 _inst_3 _inst_3) (OrderRingIso.trans.{u2, u1, u2} α β α _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3 e (OrderRingIso.symm.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e)) (OrderRingIso.refl.{u2} α _inst_1 _inst_2 _inst_3)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.self_trans_symm OrderRingIso.self_trans_symmₓ'. -/
 @[simp]
 theorem self_trans_symm (e : α ≃+*o β) : e.trans e.symm = OrderRingIso.refl α :=
   ext e.left_inv
 #align order_ring_iso.self_trans_symm OrderRingIso.self_trans_symm
 
+/- warning: order_ring_iso.symm_trans_self -> OrderRingIso.symm_trans_self is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β] (e : OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6), Eq.{succ u2} (OrderRingIso.{u2, u2} β β _inst_4 _inst_5 _inst_6 _inst_4 _inst_5 _inst_6) (OrderRingIso.trans.{u2, u1, u2} β α β _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.symm.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e) e) (OrderRingIso.refl.{u2} β _inst_4 _inst_5 _inst_6)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β] (e : OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6), Eq.{succ u1} (OrderRingIso.{u1, u1} β β _inst_4 _inst_4 _inst_5 _inst_5 _inst_6 _inst_6) (OrderRingIso.trans.{u1, u2, u1} β α β _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (OrderRingIso.symm.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 e) e) (OrderRingIso.refl.{u1} β _inst_4 _inst_5 _inst_6)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.symm_trans_self OrderRingIso.symm_trans_selfₓ'. -/
 @[simp]
 theorem symm_trans_self (e : α ≃+*o β) : e.symm.trans e = OrderRingIso.refl β :=
   ext e.right_inv
 #align order_ring_iso.symm_trans_self OrderRingIso.symm_trans_self
 
+/- warning: order_ring_iso.symm_bijective -> OrderRingIso.symm_bijective is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Mul.{u1} α] [_inst_2 : Add.{u1} α] [_inst_3 : LE.{u1} α] [_inst_4 : Mul.{u2} β] [_inst_5 : Add.{u2} β] [_inst_6 : LE.{u2} β], Function.Bijective.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderRingIso.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (OrderRingIso.{u2, u1} β α _inst_4 _inst_5 _inst_6 _inst_1 _inst_2 _inst_3) (OrderRingIso.symm.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Mul.{u2} α] [_inst_2 : Add.{u2} α] [_inst_3 : LE.{u2} α] [_inst_4 : Mul.{u1} β] [_inst_5 : Add.{u1} β] [_inst_6 : LE.{u1} β], Function.Bijective.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (OrderRingIso.{u2, u1} α β _inst_1 _inst_4 _inst_2 _inst_5 _inst_3 _inst_6) (OrderRingIso.{u1, u2} β α _inst_4 _inst_1 _inst_5 _inst_2 _inst_6 _inst_3) (OrderRingIso.symm.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.symm_bijective OrderRingIso.symm_bijectiveₓ'. -/
 theorem symm_bijective : Bijective (OrderRingIso.symm : α ≃+*o β → β ≃+*o α) :=
   ⟨fun f g h => f.symm_symm.symm.trans <| (congr_arg OrderRingIso.symm h).trans g.symm_symm,
     fun f => ⟨f.symm, f.symm_symm⟩⟩
@@ -465,26 +776,56 @@ section NonAssocSemiring
 variable [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β] [Preorder β] [NonAssocSemiring γ]
   [Preorder γ]
 
+/- warning: order_ring_iso.to_order_ring_hom -> OrderRingIso.toOrderRingHom is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β], (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β], (OrderRingIso.{u1, u2} α β (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u1} α _inst_2) (Preorder.toLE.{u2} β _inst_4)) -> (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_ring_hom OrderRingIso.toOrderRingHomₓ'. -/
 /-- Reinterpret an ordered ring isomorphism as an ordered ring homomorphism. -/
 def toOrderRingHom (f : α ≃+*o β) : α →+*o β :=
   ⟨f.toRingEquiv.toRingHom, fun a b => (map_le_map_iff f).2⟩
 #align order_ring_iso.to_order_ring_hom OrderRingIso.toOrderRingHom
 
+/- warning: order_ring_iso.to_order_ring_hom_eq_coe -> OrderRingIso.toOrderRingHom_eq_coe is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)), Eq.{max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4 f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.orderRingIsoClass.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)))))) f)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)), Eq.{max (succ u2) (succ u1)} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4 f) (OrderRingHomClass.toOrderRingHom.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u1} β _inst_4))) f)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_ring_hom_eq_coe OrderRingIso.toOrderRingHom_eq_coeₓ'. -/
 @[simp]
 theorem toOrderRingHom_eq_coe (f : α ≃+*o β) : f.toOrderRingHom = f :=
   rfl
 #align order_ring_iso.to_order_ring_hom_eq_coe OrderRingIso.toOrderRingHom_eq_coe
 
+/- warning: order_ring_iso.coe_to_order_ring_hom -> OrderRingIso.coe_toOrderRingHom is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β] (f : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (fun (_x : OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) => α -> β) (OrderRingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u1) (succ u2)} a b] => self.0) (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingHom.hasCoeT.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u1 u2, u1, u2} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.orderRingIsoClass.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (fun (_x : OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) => α -> β) (OrderRingIso.hasCoeToFun.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) f)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β] (f : OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingHom.instOrderRingHomClassOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)))) (OrderRingHomClass.toOrderRingHom.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u1} β _inst_4))) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_2) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1918 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u1} β (Preorder.toLE.{u1} β _inst_4) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_2 _inst_4 (AddMonoid.toAddZeroClass.{u2} α (AddMonoidWithOne.toAddMonoid.{u2} α (AddCommMonoidWithOne.toAddMonoidWithOne.{u2} α (NonAssocSemiring.toAddCommMonoidWithOne.{u2} α _inst_1)))) (AddMonoid.toAddZeroClass.{u1} β (AddMonoidWithOne.toAddMonoid.{u1} β (AddCommMonoidWithOne.toAddMonoidWithOne.{u1} β (NonAssocSemiring.toAddCommMonoidWithOne.{u1} β _inst_3)))) (OrderRingHomClass.toOrderAddMonoidHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIsoClass.toOrderRingHomClass.{max u2 u1, u2, u1} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) α β _inst_1 _inst_2 _inst_3 _inst_4 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Preorder.toLE.{u2} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u1} β _inst_4)))))) f)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_order_ring_hom OrderRingIso.coe_toOrderRingHomₓ'. -/
 @[simp, norm_cast]
-theorem coe_to_orderRingHom (f : α ≃+*o β) : ⇑(f : α →+*o β) = f :=
+theorem coe_toOrderRingHom (f : α ≃+*o β) : ⇑(f : α →+*o β) = f :=
   rfl
-#align order_ring_iso.coe_to_order_ring_hom OrderRingIso.coe_to_orderRingHom
-
+#align order_ring_iso.coe_to_order_ring_hom OrderRingIso.coe_toOrderRingHom
+
+/- warning: order_ring_iso.coe_to_order_ring_hom_refl -> OrderRingIso.coe_toOrderRingHom_refl is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2)) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (HasLiftT.mk.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2)) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (CoeTCₓ.coe.{succ u1, succ u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2)) (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderRingHom.hasCoeT.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIsoClass.toOrderRingHomClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIso.orderRingIsoClass.{u1, u1} α α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2)))))) (OrderRingIso.refl.{u1} α (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α], Eq.{succ u1} (OrderRingHom.{u1, u1} α α _inst_1 _inst_2 _inst_1 _inst_2) (OrderRingHomClass.toOrderRingHom.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Preorder.toLE.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIsoClass.toOrderRingHomClass.{u1, u1, u1} (OrderRingIso.{u1, u1} α α (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Preorder.toLE.{u1} α _inst_2)) α α _inst_1 _inst_2 _inst_1 _inst_2 (OrderRingIso.instOrderRingIsoClassOrderRingIso.{u1, u1} α α (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2))) (OrderRingIso.refl.{u1} α (NonUnitalNonAssocSemiring.toMul.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1)) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2))) (OrderRingHom.id.{u1} α _inst_1 _inst_2)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.coe_to_order_ring_hom_refl OrderRingIso.coe_toOrderRingHom_reflₓ'. -/
 @[simp]
-theorem coe_to_orderRingHom_refl : (OrderRingIso.refl α : α →+*o α) = OrderRingHom.id α :=
+theorem coe_toOrderRingHom_refl : (OrderRingIso.refl α : α →+*o α) = OrderRingHom.id α :=
   rfl
-#align order_ring_iso.coe_to_order_ring_hom_refl OrderRingIso.coe_to_orderRingHom_refl
-
+#align order_ring_iso.coe_to_order_ring_hom_refl OrderRingIso.coe_toOrderRingHom_refl
+
+/- warning: order_ring_iso.to_order_ring_hom_injective -> OrderRingIso.toOrderRingHom_injective is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : NonAssocSemiring.{u1} α] [_inst_2 : Preorder.{u1} α] [_inst_3 : NonAssocSemiring.{u2} β] [_inst_4 : Preorder.{u2} β], Function.Injective.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Distrib.toHasAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} α _inst_1))) (Preorder.toLE.{u1} α _inst_2) (Distrib.toHasMul.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Distrib.toHasAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} β _inst_3))) (Preorder.toLE.{u2} β _inst_4)) (OrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u1, u2} α β _inst_1 _inst_2 _inst_3 _inst_4)
+but is expected to have type
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : NonAssocSemiring.{u2} α] [_inst_2 : Preorder.{u2} α] [_inst_3 : NonAssocSemiring.{u1} β] [_inst_4 : Preorder.{u1} β], Function.Injective.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (OrderRingIso.{u2, u1} α β (NonUnitalNonAssocSemiring.toMul.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1)) (NonUnitalNonAssocSemiring.toMul.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3)) (Distrib.toAdd.{u2} α (NonUnitalNonAssocSemiring.toDistrib.{u2} α (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} α _inst_1))) (Distrib.toAdd.{u1} β (NonUnitalNonAssocSemiring.toDistrib.{u1} β (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} β _inst_3))) (Preorder.toLE.{u2} α _inst_2) (Preorder.toLE.{u1} β _inst_4)) (OrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4) (OrderRingIso.toOrderRingHom.{u2, u1} α β _inst_1 _inst_2 _inst_3 _inst_4)
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.to_order_ring_hom_injective OrderRingIso.toOrderRingHom_injectiveₓ'. -/
 theorem toOrderRingHom_injective : Injective (toOrderRingHom : α ≃+*o β → α →+*o β) := fun f g h =>
   FunLike.coe_injective <| by convert FunLike.ext'_iff.1 h
 #align order_ring_iso.to_order_ring_hom_injective OrderRingIso.toOrderRingHom_injective
@@ -502,6 +843,7 @@ conditionally complete.
 -/
 
 
+#print OrderRingHom.subsingleton /-
 /-- There is at most one ordered ring homomorphism from a linear ordered field to an archimedean
 linear ordered field. -/
 instance OrderRingHom.subsingleton [LinearOrderedField α] [LinearOrderedField β] [Archimedean β] :
@@ -518,7 +860,14 @@ instance OrderRingHom.subsingleton [LinearOrderedField α] [LinearOrderedField 
       (lt_asymm ((OrderHomClass.mono g).reflect_lt hg) <|
           (OrderHomClass.mono f).reflect_lt hf).elim⟩
 #align order_ring_hom.subsingleton OrderRingHom.subsingleton
+-/
 
+/- warning: order_ring_iso.subsingleton_right -> OrderRingIso.subsingleton_right is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : LinearOrderedField.{u2} β] [_inst_3 : Archimedean.{u2} β (OrderedSemiring.toOrderedAddCommMonoid.{u2} β (StrictOrderedSemiring.toOrderedSemiring.{u2} β (StrictOrderedRing.toStrictOrderedSemiring.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_2))))))], Subsingleton.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Distrib.toHasAdd.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))) (Distrib.toHasMul.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2))))) (Distrib.toHasAdd.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2))))) (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommGroup.toPartialOrder.{u2} β (StrictOrderedRing.toOrderedAddCommGroup.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_2))))))))
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : LinearOrderedField.{u2} β] [_inst_3 : Archimedean.{u2} β (OrderedSemiring.toOrderedAddCommMonoid.{u2} β (OrderedCommSemiring.toOrderedSemiring.{u2} β (StrictOrderedCommSemiring.toOrderedCommSemiring.{u2} β (LinearOrderedCommSemiring.toStrictOrderedCommSemiring.{u2} β (LinearOrderedSemifield.toLinearOrderedCommSemiring.{u2} β (LinearOrderedField.toLinearOrderedSemifield.{u2} β _inst_2))))))], Subsingleton.{max (succ u2) (succ u1)} (OrderRingIso.{u1, u2} α β (NonUnitalNonAssocRing.toMul.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1)))))) (NonUnitalNonAssocRing.toMul.{u2} β (NonAssocRing.toNonUnitalNonAssocRing.{u2} β (Ring.toNonAssocRing.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2)))))) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1)))))))) (Distrib.toAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} β (NonAssocRing.toNonUnitalNonAssocRing.{u2} β (Ring.toNonAssocRing.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_2)))))))) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))) (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (StrictOrderedRing.toPartialOrder.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_2)))))))
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.subsingleton_right OrderRingIso.subsingleton_rightₓ'. -/
 /-- There is at most one ordered ring isomorphism between a linear ordered field and an archimedean
 linear ordered field. -/
 instance OrderRingIso.subsingleton_right [LinearOrderedField α] [LinearOrderedField β]
@@ -526,6 +875,12 @@ instance OrderRingIso.subsingleton_right [LinearOrderedField α] [LinearOrderedF
   OrderRingIso.toOrderRingHom_injective.Subsingleton
 #align order_ring_iso.subsingleton_right OrderRingIso.subsingleton_right
 
+/- warning: order_ring_iso.subsingleton_left -> OrderRingIso.subsingleton_left is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : Archimedean.{u1} α (OrderedSemiring.toOrderedAddCommMonoid.{u1} α (StrictOrderedSemiring.toOrderedSemiring.{u1} α (StrictOrderedRing.toStrictOrderedSemiring.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))] [_inst_3 : LinearOrderedField.{u2} β], Subsingleton.{max (succ u1) (succ u2)} (OrderRingIso.{u1, u2} α β (Distrib.toHasMul.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Distrib.toHasAdd.{u1} α (Ring.toDistrib.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1))))) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (OrderedAddCommGroup.toPartialOrder.{u1} α (StrictOrderedRing.toOrderedAddCommGroup.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1))))))) (Distrib.toHasMul.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3))))) (Distrib.toHasAdd.{u2} β (Ring.toDistrib.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3))))) (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommGroup.toPartialOrder.{u2} β (StrictOrderedRing.toOrderedAddCommGroup.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_3))))))))
+but is expected to have type
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedField.{u1} α] [_inst_2 : Archimedean.{u1} α (OrderedSemiring.toOrderedAddCommMonoid.{u1} α (OrderedCommSemiring.toOrderedSemiring.{u1} α (StrictOrderedCommSemiring.toOrderedCommSemiring.{u1} α (LinearOrderedCommSemiring.toStrictOrderedCommSemiring.{u1} α (LinearOrderedSemifield.toLinearOrderedCommSemiring.{u1} α (LinearOrderedField.toLinearOrderedSemifield.{u1} α _inst_1))))))] [_inst_3 : LinearOrderedField.{u2} β], Subsingleton.{max (succ u2) (succ u1)} (OrderRingIso.{u1, u2} α β (NonUnitalNonAssocRing.toMul.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1)))))) (NonUnitalNonAssocRing.toMul.{u2} β (NonAssocRing.toNonUnitalNonAssocRing.{u2} β (Ring.toNonAssocRing.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3)))))) (Distrib.toAdd.{u1} α (NonUnitalNonAssocSemiring.toDistrib.{u1} α (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} α (NonAssocRing.toNonUnitalNonAssocRing.{u1} α (Ring.toNonAssocRing.{u1} α (DivisionRing.toRing.{u1} α (Field.toDivisionRing.{u1} α (LinearOrderedField.toField.{u1} α _inst_1)))))))) (Distrib.toAdd.{u2} β (NonUnitalNonAssocSemiring.toDistrib.{u2} β (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} β (NonAssocRing.toNonUnitalNonAssocRing.{u2} β (Ring.toNonAssocRing.{u2} β (DivisionRing.toRing.{u2} β (Field.toDivisionRing.{u2} β (LinearOrderedField.toField.{u2} β _inst_3)))))))) (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (StrictOrderedRing.toPartialOrder.{u1} α (LinearOrderedRing.toStrictOrderedRing.{u1} α (LinearOrderedCommRing.toLinearOrderedRing.{u1} α (LinearOrderedField.toLinearOrderedCommRing.{u1} α _inst_1)))))) (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (StrictOrderedRing.toPartialOrder.{u2} β (LinearOrderedRing.toStrictOrderedRing.{u2} β (LinearOrderedCommRing.toLinearOrderedRing.{u2} β (LinearOrderedField.toLinearOrderedCommRing.{u2} β _inst_3)))))))
+Case conversion may be inaccurate. Consider using '#align order_ring_iso.subsingleton_left OrderRingIso.subsingleton_leftₓ'. -/
 /-- There is at most one ordered ring isomorphism between an archimedean linear ordered field and a
 linear ordered field. -/
 instance OrderRingIso.subsingleton_left [LinearOrderedField α] [Archimedean α]

Changes in mathlib4

mathlib3
mathlib4
style: homogenise porting notes (#11145)

Homogenises porting notes via capitalisation and addition of whitespace.

It makes the following changes:

  • converts "--porting note" into "-- Porting note";
  • converts "porting note" into "Porting note".
Diff
@@ -155,7 +155,7 @@ instance : FunLike (α →+*o β) α β where
   coe f := f.toFun
   coe_injective' f g h := by
     obtain ⟨⟨_, _⟩, _⟩ := f; obtain ⟨⟨_, _⟩, _⟩ := g; congr
-    -- porting note: needed to add the following line
+    -- Porting note: needed to add the following line
     exact DFunLike.coe_injective' h
 
 instance : OrderHomClass (α →+*o β) α β where
@@ -536,7 +536,7 @@ instance OrderRingHom.subsingleton [LinearOrderedField α] [LinearOrderedField 
     ext x
     by_contra! h' : f x ≠ g x
     wlog h : f x < g x generalizing α β with h₂
-    -- porting note: had to add the `generalizing` as there are random variables
+    -- Porting note: had to add the `generalizing` as there are random variables
     -- `F γ δ` flying around in context.
     · exact h₂ g f x (Ne.symm h') (h'.lt_or_lt.resolve_left h)
     obtain ⟨q, hf, hg⟩ := exists_rat_btwn h
refactor: drop some *HomClasses (#10544)

Drop classes that mix OrderHomClass with algebraic hom classes.

Diff
@@ -25,6 +25,13 @@ Homomorphisms between ordered (semi)rings that respect the ordering.
 * `→+*o`: Ordered ring homomorphisms.
 * `≃+*o`: Ordered ring isomorphisms.
 
+## Implementation notes
+
+This file used to define typeclasses for order-preserving ring homomorphisms and isomorphisms.
+In #10544, we migrated from assumptions like `[FunLike F R S] [OrderRingHomClass F R S]`
+to assumptions like `[FunLike F R S] [OrderHomClass F R S] [RingHomClass F R S]`,
+making some typeclasses and instances irrelevant.
+
 ## Tags
 
 ordered ring homomorphism, order homomorphism
@@ -75,80 +82,30 @@ structure OrderRingIso (α β : Type*) [Mul α] [Mul β] [Add α] [Add β] [LE 
 @[inherit_doc]
 infixl:25 " ≃+*o " => OrderRingIso
 
-/-- `OrderRingHomClass F α β` states that `F` is a type of ordered semiring homomorphisms.
-You should extend this typeclass when you extend `OrderRingHom`. -/
-class OrderRingHomClass (F : Type*) (α β : outParam <| Type*) [NonAssocSemiring α] [Preorder α]
-  [NonAssocSemiring β] [Preorder β] [FunLike F α β] extends RingHomClass F α β : Prop where
-  /-- The proposition that the function preserves the order. -/
-  monotone (f : F) : Monotone f
-#align order_ring_hom_class OrderRingHomClass
-
-/-- `OrderRingIsoClass F α β` states that `F` is a type of ordered semiring isomorphisms.
-You should extend this class when you extend `OrderRingIso`. -/
-class OrderRingIsoClass (F : Type*) (α β : outParam (Type*)) [Mul α] [Add α] [LE α] [Mul β]
-  [Add β] [LE β] [EquivLike F α β] extends RingEquivClass F α β : Prop where
-  /-- The proposition that the function preserves the order bijectively. -/
-  map_le_map_iff (f : F) {a b : α} : f a ≤ f b ↔ a ≤ b
-#align order_ring_iso_class OrderRingIsoClass
+-- See module docstring for details
+#noalign order_ring_hom_class
+#noalign order_ring_iso_class
+#noalign order_ring_hom_class.to_order_add_monoid_hom_class
+#noalign order_ring_hom_class.to_order_monoid_with_zero_hom_class
+#noalign order_ring_iso_class.to_order_iso_class
+#noalign order_ring_iso_class.to_order_ring_hom_class
 
 section Hom
 
 variable [FunLike F α β]
 
--- See note [lower priority instance]
-instance (priority := 100) OrderRingHomClass.toOrderAddMonoidHomClass [NonAssocSemiring α]
-    [Preorder α] [NonAssocSemiring β] [Preorder β] [OrderRingHomClass F α β] :
-    OrderAddMonoidHomClass F α β :=
-  { ‹OrderRingHomClass F α β› with }
-#align order_ring_hom_class.to_order_add_monoid_hom_class OrderRingHomClass.toOrderAddMonoidHomClass
-
--- See note [lower priority instance]
-instance (priority := 100) OrderRingHomClass.toOrderMonoidWithZeroHomClass [NonAssocSemiring α]
-    [Preorder α] [NonAssocSemiring β] [Preorder β] [OrderRingHomClass F α β] :
-    OrderMonoidWithZeroHomClass F α β :=
-  { ‹OrderRingHomClass F α β› with }
-#align order_ring_hom_class.to_order_monoid_with_zero_hom_class OrderRingHomClass.toOrderMonoidWithZeroHomClass
-
-end Hom
-
-section Equiv
-
-variable [EquivLike F α β]
-
--- See note [lower instance priority]
-instance (priority := 100) OrderRingIsoClass.toOrderIsoClass [Mul α] [Add α] [LE α]
-  [Mul β] [Add β] [LE β] [OrderRingIsoClass F α β] : OrderIsoClass F α β :=
-  { ‹OrderRingIsoClass F α β› with }
-#align order_ring_iso_class.to_order_iso_class OrderRingIsoClass.toOrderIsoClass
-
--- See note [lower instance priority]
-instance (priority := 100) OrderRingIsoClass.toOrderRingHomClass [NonAssocSemiring α]
-  [Preorder α] [NonAssocSemiring β] [Preorder β] [OrderRingIsoClass F α β] :
-    OrderRingHomClass F α β :=
-  { monotone := fun f _ _ => (map_le_map_iff f).2
-    -- porting note: used to be the following which times out
-    --‹OrderRingIsoClass F α β› with monotone := fun f => OrderHomClass.mono f
-    }
-#align order_ring_iso_class.to_order_ring_hom_class OrderRingIsoClass.toOrderRingHomClass
-
-end Equiv
-
-section Hom
-
-variable [FunLike F α β]
-
--- porting note: OrderRingHomClass.toOrderRingHom is new
-/-- Turn an element of a type `F` satisfying `OrderRingHomClass F α β` into an actual
-`OrderRingHom`. This is declared as the default coercion from `F` to `α →+*o β`. -/
+/-- Turn an element of a type `F` satisfying `OrderHomClass F α β` and `RingHomClass F α β`
+into an actual `OrderRingHom`.
+This is declared as the default coercion from `F` to `α →+*o β`. -/
 @[coe]
 def OrderRingHomClass.toOrderRingHom [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β]
-    [Preorder β] [OrderRingHomClass F α β] (f : F) : α →+*o β :=
-{ (f : α →+* β) with monotone' := monotone f}
+    [Preorder β] [OrderHomClass F α β] [RingHomClass F α β] (f : F) : α →+*o β :=
+{ (f : α →+* β) with monotone' := OrderHomClass.monotone f}
 
 /-- Any type satisfying `OrderRingHomClass` can be cast into `OrderRingHom` via
   `OrderRingHomClass.toOrderRingHom`. -/
 instance [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β] [Preorder β]
-    [OrderRingHomClass F α β] : CoeTC F (α →+*o β) :=
+    [OrderHomClass F α β] [RingHomClass F α β] : CoeTC F (α →+*o β) :=
   ⟨OrderRingHomClass.toOrderRingHom⟩
 
 end Hom
@@ -157,18 +114,18 @@ section Equiv
 
 variable [EquivLike F α β]
 
--- porting note: OrderRingIsoClass.toOrderRingIso is new
-/-- Turn an element of a type `F` satisfying `OrderRingIsoClass F α β` into an actual
-`OrderRingIso`. This is declared as the default coercion from `F` to `α ≃+*o β`. -/
+/-- Turn an element of a type `F` satisfying `OrderIsoClass F α β` and `RingEquivClass F α β`
+into an actual `OrderRingIso`.
+This is declared as the default coercion from `F` to `α ≃+*o β`. -/
 @[coe]
 def OrderRingIsoClass.toOrderRingIso [Mul α] [Add α] [LE α] [Mul β] [Add β] [LE β]
-    [OrderRingIsoClass F α β] (f : F) : α ≃+*o β :=
+    [OrderIsoClass F α β] [RingEquivClass F α β] (f : F) : α ≃+*o β :=
 { (f : α ≃+* β) with map_le_map_iff' := map_le_map_iff f}
 
 /-- Any type satisfying `OrderRingIsoClass` can be cast into `OrderRingIso` via
   `OrderRingIsoClass.toOrderRingIso`. -/
-instance [Mul α] [Add α] [LE α] [Mul β] [Add β] [LE β] [OrderRingIsoClass F α β] :
-    CoeTC F (α ≃+*o β) :=
+instance [Mul α] [Add α] [LE α] [Mul β] [Add β] [LE β] [OrderIsoClass F α β]
+    [RingEquivClass F α β] : CoeTC F (α ≃+*o β) :=
   ⟨OrderRingIsoClass.toOrderRingIso⟩
 
 end Equiv
@@ -194,21 +151,21 @@ def toOrderMonoidWithZeroHom (f : α →+*o β) : α →*₀o β :=
   { f with }
 #align order_ring_hom.to_order_monoid_with_zero_hom OrderRingHom.toOrderMonoidWithZeroHom
 
-instance : FunLike (α →+*o β) α β
-    where
+instance : FunLike (α →+*o β) α β where
   coe f := f.toFun
   coe_injective' f g h := by
     obtain ⟨⟨_, _⟩, _⟩ := f; obtain ⟨⟨_, _⟩, _⟩ := g; congr
     -- porting note: needed to add the following line
     exact DFunLike.coe_injective' h
 
-instance : OrderRingHomClass (α →+*o β) α β
-    where
+instance : OrderHomClass (α →+*o β) α β where
+  map_rel f _ _ h := f.monotone' h
+
+instance : RingHomClass (α →+*o β) α β where
   map_mul f := f.map_mul'
   map_one f := f.map_one'
   map_add f := f.map_add'
   map_zero f := f.map_zero'
-  monotone f := f.monotone'
 
 theorem toFun_eq_coe (f : α →+*o β) : f.toFun = f :=
   rfl
@@ -398,12 +355,13 @@ instance : EquivLike (α ≃+*o β) α β
   left_inv f := f.left_inv
   right_inv f := f.right_inv
 
-instance : OrderRingIsoClass (α ≃+*o β) α β
-    where
-  map_add f := f.map_add'
-  map_mul f := f.map_mul'
+instance : OrderIsoClass (α ≃+*o β) α β where
   map_le_map_iff f _ _ := f.map_le_map_iff'
 
+instance : RingEquivClass (α ≃+*o β) α β where
+  map_mul f := f.map_mul'
+  map_add f := f.map_add'
+
 theorem toFun_eq_coe (f : α ≃+*o β) : f.toFun = f :=
   rfl
 #align order_ring_iso.to_fun_eq_coe OrderRingIso.toFun_eq_coe
refactor(Data/FunLike): use unbundled inheritance from FunLike (#8386)

The FunLike hierarchy is very big and gets scanned through each time we need a coercion (via the CoeFun instance). It looks like unbundled inheritance suits Lean 4 better here. The only class that still extends FunLike is EquivLike, since that has a custom coe_injective' field that is easier to implement. All other classes should take FunLike or EquivLike as a parameter.

Zulip thread

Important changes

Previously, morphism classes would be Type-valued and extend FunLike:

/-- `MyHomClass F A B` states that `F` is a type of `MyClass.op`-preserving morphisms.
You should extend this class when you extend `MyHom`. -/
class MyHomClass (F : Type*) (A B : outParam <| Type*) [MyClass A] [MyClass B]
  extends FunLike F A B :=
(map_op : ∀ (f : F) (x y : A), f (MyClass.op x y) = MyClass.op (f x) (f y))

After this PR, they should be Prop-valued and take FunLike as a parameter:

/-- `MyHomClass F A B` states that `F` is a type of `MyClass.op`-preserving morphisms.
You should extend this class when you extend `MyHom`. -/
class MyHomClass (F : Type*) (A B : outParam <| Type*) [MyClass A] [MyClass B]
  [FunLike F A B] : Prop :=
(map_op : ∀ (f : F) (x y : A), f (MyClass.op x y) = MyClass.op (f x) (f y))

(Note that A B stay marked as outParam even though they are not purely required to be so due to the FunLike parameter already filling them in. This is required to see through type synonyms, which is important in the category theory library. Also, I think keeping them as outParam is slightly faster.)

Similarly, MyEquivClass should take EquivLike as a parameter.

As a result, every mention of [MyHomClass F A B] should become [FunLike F A B] [MyHomClass F A B].

Remaining issues

Slower (failing) search

While overall this gives some great speedups, there are some cases that are noticeably slower. In particular, a failing application of a lemma such as map_mul is more expensive. This is due to suboptimal processing of arguments. For example:

variable [FunLike F M N] [Mul M] [Mul N] (f : F) (x : M) (y : M)

theorem map_mul [MulHomClass F M N] : f (x * y) = f x * f y

example [AddHomClass F A B] : f (x * y) = f x * f y := map_mul f _ _

Before this PR, applying map_mul f gives the goals [Mul ?M] [Mul ?N] [MulHomClass F ?M ?N]. Since M and N are out_params, [MulHomClass F ?M ?N] is synthesized first, supplies values for ?M and ?N and then the Mul M and Mul N instances can be found.

After this PR, the goals become [FunLike F ?M ?N] [Mul ?M] [Mul ?N] [MulHomClass F ?M ?N]. Now [FunLike F ?M ?N] is synthesized first, supplies values for ?M and ?N and then the Mul M and Mul N instances can be found, before trying MulHomClass F M N which fails. Since the Mul hierarchy is very big, this can be slow to fail, especially when there is no such Mul instance.

A long-term but harder to achieve solution would be to specify the order in which instance goals get solved. For example, we'd like to change the arguments to map_mul to look like [FunLike F M N] [Mul M] [Mul N] [highPriority <| MulHomClass F M N] because MulHomClass fails or succeeds much faster than the others.

As a consequence, the simpNF linter is much slower since by design it tries and fails to apply many map_ lemmas. The same issue occurs a few times in existing calls to simp [map_mul], where map_mul is tried "too soon" and fails. Thanks to the speedup of leanprover/lean4#2478 the impact is very limited, only in files that already were close to the timeout.

simp not firing sometimes

This affects map_smulₛₗ and related definitions. For simp lemmas Lean apparently uses a slightly different mechanism to find instances, so that rw can find every argument to map_smulₛₗ successfully but simp can't: leanprover/lean4#3701.

Missing instances due to unification failing

Especially in the category theory library, we might sometimes have a type A which is also accessible as a synonym (Bundled A hA).1. Instance synthesis doesn't always work if we have f : A →* B but x * y : (Bundled A hA).1 or vice versa. This seems to be mostly fixed by keeping A B as outParams in MulHomClass F A B. (Presumably because Lean will do a definitional check A =?= (Bundled A hA).1 instead of using the syntax in the discrimination tree.)

Workaround for issues

The timeouts can be worked around for now by specifying which map_mul we mean, either as map_mul f for some explicit f, or as e.g. MonoidHomClass.map_mul.

map_smulₛₗ not firing as simp lemma can be worked around by going back to the pre-FunLike situation and making LinearMap.map_smulₛₗ a simp lemma instead of the generic map_smulₛₗ. Writing simp [map_smulₛₗ _] also works.

Co-authored-by: Matthew Ballard <matt@mrb.email> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Scott Morrison <scott@tqft.net> Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>

Diff
@@ -78,7 +78,7 @@ infixl:25 " ≃+*o " => OrderRingIso
 /-- `OrderRingHomClass F α β` states that `F` is a type of ordered semiring homomorphisms.
 You should extend this typeclass when you extend `OrderRingHom`. -/
 class OrderRingHomClass (F : Type*) (α β : outParam <| Type*) [NonAssocSemiring α] [Preorder α]
-  [NonAssocSemiring β] [Preorder β] extends RingHomClass F α β where
+  [NonAssocSemiring β] [Preorder β] [FunLike F α β] extends RingHomClass F α β : Prop where
   /-- The proposition that the function preserves the order. -/
   monotone (f : F) : Monotone f
 #align order_ring_hom_class OrderRingHomClass
@@ -86,11 +86,15 @@ class OrderRingHomClass (F : Type*) (α β : outParam <| Type*) [NonAssocSemirin
 /-- `OrderRingIsoClass F α β` states that `F` is a type of ordered semiring isomorphisms.
 You should extend this class when you extend `OrderRingIso`. -/
 class OrderRingIsoClass (F : Type*) (α β : outParam (Type*)) [Mul α] [Add α] [LE α] [Mul β]
-  [Add β] [LE β] extends RingEquivClass F α β where
+  [Add β] [LE β] [EquivLike F α β] extends RingEquivClass F α β : Prop where
   /-- The proposition that the function preserves the order bijectively. -/
   map_le_map_iff (f : F) {a b : α} : f a ≤ f b ↔ a ≤ b
 #align order_ring_iso_class OrderRingIsoClass
 
+section Hom
+
+variable [FunLike F α β]
+
 -- See note [lower priority instance]
 instance (priority := 100) OrderRingHomClass.toOrderAddMonoidHomClass [NonAssocSemiring α]
     [Preorder α] [NonAssocSemiring β] [Preorder β] [OrderRingHomClass F α β] :
@@ -105,6 +109,12 @@ instance (priority := 100) OrderRingHomClass.toOrderMonoidWithZeroHomClass [NonA
   { ‹OrderRingHomClass F α β› with }
 #align order_ring_hom_class.to_order_monoid_with_zero_hom_class OrderRingHomClass.toOrderMonoidWithZeroHomClass
 
+end Hom
+
+section Equiv
+
+variable [EquivLike F α β]
+
 -- See note [lower instance priority]
 instance (priority := 100) OrderRingIsoClass.toOrderIsoClass [Mul α] [Add α] [LE α]
   [Mul β] [Add β] [LE β] [OrderRingIsoClass F α β] : OrderIsoClass F α β :=
@@ -121,6 +131,12 @@ instance (priority := 100) OrderRingIsoClass.toOrderRingHomClass [NonAssocSemiri
     }
 #align order_ring_iso_class.to_order_ring_hom_class OrderRingIsoClass.toOrderRingHomClass
 
+end Equiv
+
+section Hom
+
+variable [FunLike F α β]
+
 -- porting note: OrderRingHomClass.toOrderRingHom is new
 /-- Turn an element of a type `F` satisfying `OrderRingHomClass F α β` into an actual
 `OrderRingHom`. This is declared as the default coercion from `F` to `α →+*o β`. -/
@@ -135,6 +151,12 @@ instance [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β] [Preorder β]
     [OrderRingHomClass F α β] : CoeTC F (α →+*o β) :=
   ⟨OrderRingHomClass.toOrderRingHom⟩
 
+end Hom
+
+section Equiv
+
+variable [EquivLike F α β]
+
 -- porting note: OrderRingIsoClass.toOrderRingIso is new
 /-- Turn an element of a type `F` satisfying `OrderRingIsoClass F α β` into an actual
 `OrderRingIso`. This is declared as the default coercion from `F` to `α ≃+*o β`. -/
@@ -149,6 +171,8 @@ instance [Mul α] [Add α] [LE α] [Mul β] [Add β] [LE β] [OrderRingIsoClass
     CoeTC F (α ≃+*o β) :=
   ⟨OrderRingIsoClass.toOrderRingIso⟩
 
+end Equiv
+
 /-! ### Ordered ring homomorphisms -/
 
 namespace OrderRingHom
@@ -170,25 +194,22 @@ def toOrderMonoidWithZeroHom (f : α →+*o β) : α →*₀o β :=
   { f with }
 #align order_ring_hom.to_order_monoid_with_zero_hom OrderRingHom.toOrderMonoidWithZeroHom
 
-instance : OrderRingHomClass (α →+*o β) α β
+instance : FunLike (α →+*o β) α β
     where
   coe f := f.toFun
   coe_injective' f g h := by
     obtain ⟨⟨_, _⟩, _⟩ := f; obtain ⟨⟨_, _⟩, _⟩ := g; congr
     -- porting note: needed to add the following line
-    exact MonoidHom.monoidHomClass.coe_injective' h
+    exact DFunLike.coe_injective' h
+
+instance : OrderRingHomClass (α →+*o β) α β
+    where
   map_mul f := f.map_mul'
   map_one f := f.map_one'
   map_add f := f.map_add'
   map_zero f := f.map_zero'
   monotone f := f.monotone'
 
--- porting note: These helper instances are unhelpful in Lean 4, so omitting:
--- /-- Helper instance for when there's too many metavariables to apply `DFunLike.has_coe_to_fun`
--- directly. -/
--- instance : CoeFun (α →+*o β) fun _ => α → β :=
---   ⟨fun f => f.toFun⟩
-
 theorem toFun_eq_coe (f : α →+*o β) : f.toFun = f :=
   rfl
 #align order_ring_hom.to_fun_eq_coe OrderRingHom.toFun_eq_coe
@@ -366,7 +387,7 @@ def toOrderIso (f : α ≃+*o β) : α ≃o β :=
   ⟨f.toRingEquiv.toEquiv, f.map_le_map_iff'⟩
 #align order_ring_iso.to_order_iso OrderRingIso.toOrderIso
 
-instance : OrderRingIsoClass (α ≃+*o β) α β
+instance : EquivLike (α ≃+*o β) α β
     where
   coe f := f.toFun
   inv f := f.invFun
@@ -374,17 +395,14 @@ instance : OrderRingIsoClass (α ≃+*o β) α β
     obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := f
     obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := g
     congr
-  map_add f := f.map_add'
-  map_mul f := f.map_mul'
-  map_le_map_iff f _ _ := f.map_le_map_iff'
   left_inv f := f.left_inv
   right_inv f := f.right_inv
 
--- porting note: These helper instances are unhelpful in Lean 4, so omitting:
-/-- Helper instance for when there's too many metavariables to apply `DFunLike.has_coe_to_fun`
-directly. -/
--- instance : CoeFun (α ≃+*o β) fun _ => α → β :=
---   DFunLike.has_coe_to_fun
+instance : OrderRingIsoClass (α ≃+*o β) α β
+    where
+  map_add f := f.map_add'
+  map_mul f := f.map_mul'
+  map_le_map_iff f _ _ := f.map_le_map_iff'
 
 theorem toFun_eq_coe (f : α ≃+*o β) : f.toFun = f :=
   rfl
chore(*): rename FunLike to DFunLike (#9785)

This prepares for the introduction of a non-dependent synonym of FunLike, which helps a lot with keeping #8386 readable.

This is entirely search-and-replace in 680197f combined with manual fixes in 4145626, e900597 and b8428f8. The commands that generated this change:

sed -i 's/\bFunLike\b/DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoFunLike\b/toDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/import Mathlib.Data.DFunLike/import Mathlib.Data.FunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bHom_FunLike\b/Hom_DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean     
sed -i 's/\binstFunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bfunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoo many metavariables to apply `fun_like.has_coe_to_fun`/too many metavariables to apply `DFunLike.hasCoeToFun`/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean

Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>

Diff
@@ -184,7 +184,7 @@ instance : OrderRingHomClass (α →+*o β) α β
   monotone f := f.monotone'
 
 -- porting note: These helper instances are unhelpful in Lean 4, so omitting:
--- /-- Helper instance for when there's too many metavariables to apply `FunLike.has_coe_to_fun`
+-- /-- Helper instance for when there's too many metavariables to apply `DFunLike.has_coe_to_fun`
 -- directly. -/
 -- instance : CoeFun (α →+*o β) fun _ => α → β :=
 --   ⟨fun f => f.toFun⟩
@@ -195,7 +195,7 @@ theorem toFun_eq_coe (f : α →+*o β) : f.toFun = f :=
 
 @[ext]
 theorem ext {f g : α →+*o β} (h : ∀ a, f a = g a) : f = g :=
-  FunLike.ext f g h
+  DFunLike.ext f g h
 #align order_ring_hom.ext OrderRingHom.ext
 
 @[simp]
@@ -255,7 +255,7 @@ theorem coe_copy (f : α →+*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f
 #align order_ring_hom.coe_copy OrderRingHom.coe_copy
 
 theorem copy_eq (f : α →+*o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
-  FunLike.ext' h
+  DFunLike.ext' h
 #align order_ring_hom.copy_eq OrderRingHom.copy_eq
 
 variable (α)
@@ -329,7 +329,7 @@ theorem id_comp (f : α →+*o β) : (OrderRingHom.id β).comp f = f :=
 @[simp]
 theorem cancel_right {f₁ f₂ : β →+*o γ} {g : α →+*o β} (hg : Surjective g) :
     f₁.comp g = f₂.comp g ↔ f₁ = f₂ :=
-  ⟨fun h => ext <| hg.forall.2 <| FunLike.ext_iff.1 h, fun h => by rw [h]⟩
+  ⟨fun h => ext <| hg.forall.2 <| DFunLike.ext_iff.1 h, fun h => by rw [h]⟩
 #align order_ring_hom.cancel_right OrderRingHom.cancel_right
 
 @[simp]
@@ -346,7 +346,7 @@ instance [Preorder β] : Preorder (OrderRingHom α β) :=
   Preorder.lift ((⇑) : _ → α → β)
 
 instance [PartialOrder β] : PartialOrder (OrderRingHom α β) :=
-  PartialOrder.lift _ FunLike.coe_injective
+  PartialOrder.lift _ DFunLike.coe_injective
 
 end OrderRingHom
 
@@ -381,10 +381,10 @@ instance : OrderRingIsoClass (α ≃+*o β) α β
   right_inv f := f.right_inv
 
 -- porting note: These helper instances are unhelpful in Lean 4, so omitting:
-/-- Helper instance for when there's too many metavariables to apply `FunLike.has_coe_to_fun`
+/-- Helper instance for when there's too many metavariables to apply `DFunLike.has_coe_to_fun`
 directly. -/
 -- instance : CoeFun (α ≃+*o β) fun _ => α → β :=
---   FunLike.has_coe_to_fun
+--   DFunLike.has_coe_to_fun
 
 theorem toFun_eq_coe (f : α ≃+*o β) : f.toFun = f :=
   rfl
@@ -392,7 +392,7 @@ theorem toFun_eq_coe (f : α ≃+*o β) : f.toFun = f :=
 
 @[ext]
 theorem ext {f g : α ≃+*o β} (h : ∀ a, f a = g a) : f = g :=
-  FunLike.ext f g h
+  DFunLike.ext f g h
 #align order_ring_iso.ext OrderRingIso.ext
 
 @[simp]
@@ -420,9 +420,9 @@ theorem coe_toRingEquiv (f : α ≃+*o β) : ⇑(f : α ≃+* β) = f :=
   rfl
 #align order_ring_iso.coe_to_ring_equiv OrderRingIso.coe_toRingEquiv
 
--- Porting note: needed to add FunLike.coe on the lhs, bad Equiv coercion otherwise
+-- Porting note: needed to add DFunLike.coe on the lhs, bad Equiv coercion otherwise
 @[simp, norm_cast]
-theorem coe_toOrderIso (f : α ≃+*o β) : FunLike.coe (f : α ≃o β) = f :=
+theorem coe_toOrderIso (f : α ≃+*o β) : DFunLike.coe (f : α ≃o β) = f :=
   rfl
 #align order_ring_iso.coe_to_order_iso OrderRingIso.coe_toOrderIso
 
@@ -537,7 +537,7 @@ theorem coe_toOrderRingHom_refl : (OrderRingIso.refl α : α →+*o α) = OrderR
 #align order_ring_iso.coe_to_order_ring_hom_refl OrderRingIso.coe_toOrderRingHom_refl
 
 theorem toOrderRingHom_injective : Injective (toOrderRingHom : α ≃+*o β → α →+*o β) :=
-  fun f g h => FunLike.coe_injective <| by convert FunLike.ext'_iff.1 h using 0
+  fun f g h => DFunLike.coe_injective <| by convert DFunLike.ext'_iff.1 h using 0
 #align order_ring_iso.to_order_ring_hom_injective OrderRingIso.toOrderRingHom_injective
 
 end NonAssocSemiring
chore: rename by_contra' to by_contra! (#8797)

To fit with the "please try harder" convention of ! tactics.

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -558,7 +558,7 @@ instance OrderRingHom.subsingleton [LinearOrderedField α] [LinearOrderedField 
     Subsingleton (α →+*o β) :=
   ⟨fun f g => by
     ext x
-    by_contra' h' : f x ≠ g x
+    by_contra! h' : f x ≠ g x
     wlog h : f x < g x generalizing α β with h₂
     -- porting note: had to add the `generalizing` as there are random variables
     -- `F γ δ` flying around in context.
feat(/Equiv/): Add symm_bijective lemmas next to symm_symms (#8444)

Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: lines <34025592+linesthatinterlace@users.noreply.github.com>

Diff
@@ -505,9 +505,8 @@ theorem symm_trans_self (e : α ≃+*o β) : e.symm.trans e = OrderRingIso.refl
   ext e.right_inv
 #align order_ring_iso.symm_trans_self OrderRingIso.symm_trans_self
 
-theorem symm_bijective : Bijective (OrderRingIso.symm : α ≃+*o β → β ≃+*o α) :=
-  ⟨fun f g h => f.symm_symm.symm.trans <| (congr_arg OrderRingIso.symm h).trans g.symm_symm,
-    fun f => ⟨f.symm, f.symm_symm⟩⟩
+theorem symm_bijective : Bijective (OrderRingIso.symm : (α ≃+*o β) → β ≃+*o α) :=
+  Function.bijective_iff_has_inverse.mpr ⟨_, symm_symm, symm_symm⟩
 #align order_ring_iso.symm_bijective OrderRingIso.symm_bijective
 
 end LE
chore: @[simp] cancel_(right|left) (#6300)

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -326,10 +326,13 @@ theorem id_comp (f : α →+*o β) : (OrderRingHom.id β).comp f = f :=
   rfl
 #align order_ring_hom.id_comp OrderRingHom.id_comp
 
+@[simp]
 theorem cancel_right {f₁ f₂ : β →+*o γ} {g : α →+*o β} (hg : Surjective g) :
     f₁.comp g = f₂.comp g ↔ f₁ = f₂ :=
   ⟨fun h => ext <| hg.forall.2 <| FunLike.ext_iff.1 h, fun h => by rw [h]⟩
 #align order_ring_hom.cancel_right OrderRingHom.cancel_right
+
+@[simp]
 theorem cancel_left {f : β →+*o γ} {g₁ g₂ : α →+*o β} (hf : Injective f) :
     f.comp g₁ = f.comp g₂ ↔ g₁ = g₂ :=
   ⟨fun h => ext fun a => hf <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
chore: banish Type _ and Sort _ (#6499)

We remove all possible occurences of Type _ and Sort _ in favor of Type* and Sort*.

This has nice performance benefits.

Diff
@@ -33,15 +33,15 @@ ordered ring homomorphism, order homomorphism
 
 open Function
 
-variable {F α β γ δ : Type _}
+variable {F α β γ δ : Type*}
 
 /-- `OrderRingHom α β` is the type of monotone semiring homomorphisms from `α` to `β`.
 
 When possible, instead of parametrizing results over `(f : OrderRingHom α β)`,
-you should parametrize over `(F : Type _) [OrderRingHomClass F α β] (f : F)`.
+you should parametrize over `(F : Type*) [OrderRingHomClass F α β] (f : F)`.
 
 When you extend this structure, make sure to extend `OrderRingHomClass`. -/
-structure OrderRingHom (α β : Type _) [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β]
+structure OrderRingHom (α β : Type*) [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β]
   [Preorder β] extends α →+* β where
   /-- The proposition that the function preserves the order. -/
   monotone' : Monotone toFun
@@ -66,7 +66,7 @@ When possible, instead of parametrizing results over `(f : OrderRingIso α β)`,
 you should parametrize over `(F : Type*) [OrderRingIsoClass F α β] (f : F)`.
 
 When you extend this structure, make sure to extend `OrderRingIsoClass`. -/
-structure OrderRingIso (α β : Type _) [Mul α] [Mul β] [Add α] [Add β] [LE α] [LE β] extends
+structure OrderRingIso (α β : Type*) [Mul α] [Mul β] [Add α] [Add β] [LE α] [LE β] extends
   α ≃+* β where
   /-- The proposition that the function preserves the order bijectively. -/
   map_le_map_iff' {a b : α} : toFun a ≤ toFun b ↔ a ≤ b
@@ -77,7 +77,7 @@ infixl:25 " ≃+*o " => OrderRingIso
 
 /-- `OrderRingHomClass F α β` states that `F` is a type of ordered semiring homomorphisms.
 You should extend this typeclass when you extend `OrderRingHom`. -/
-class OrderRingHomClass (F : Type _) (α β : outParam <| Type _) [NonAssocSemiring α] [Preorder α]
+class OrderRingHomClass (F : Type*) (α β : outParam <| Type*) [NonAssocSemiring α] [Preorder α]
   [NonAssocSemiring β] [Preorder β] extends RingHomClass F α β where
   /-- The proposition that the function preserves the order. -/
   monotone (f : F) : Monotone f
@@ -85,7 +85,7 @@ class OrderRingHomClass (F : Type _) (α β : outParam <| Type _) [NonAssocSemir
 
 /-- `OrderRingIsoClass F α β` states that `F` is a type of ordered semiring isomorphisms.
 You should extend this class when you extend `OrderRingIso`. -/
-class OrderRingIsoClass (F : Type _) (α β : outParam (Type _)) [Mul α] [Add α] [LE α] [Mul β]
+class OrderRingIsoClass (F : Type*) (α β : outParam (Type*)) [Mul α] [Add α] [LE α] [Mul β]
   [Add β] [LE β] extends RingEquivClass F α β where
   /-- The proposition that the function preserves the order bijectively. -/
   map_le_map_iff (f : F) {a b : α} : f a ≤ f b ↔ a ≤ b
chore: tidy various files (#6274)
Diff
@@ -38,7 +38,7 @@ variable {F α β γ δ : Type _}
 /-- `OrderRingHom α β` is the type of monotone semiring homomorphisms from `α` to `β`.
 
 When possible, instead of parametrizing results over `(f : OrderRingHom α β)`,
-you should parametrize over `(F : Type*) [OrderRingHomClass F α β] (f : F)`.
+you should parametrize over `(F : Type _) [OrderRingHomClass F α β] (f : F)`.
 
 When you extend this structure, make sure to extend `OrderRingHomClass`. -/
 structure OrderRingHom (α β : Type _) [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β]
@@ -281,20 +281,20 @@ theorem id_apply (a : α) : OrderRingHom.id α a = a :=
 #align order_ring_hom.id_apply OrderRingHom.id_apply
 
 @[simp]
-theorem coe_RingHom_id : (OrderRingHom.id α : α →+* α) = RingHom.id α :=
+theorem coe_ringHom_id : (OrderRingHom.id α : α →+* α) = RingHom.id α :=
   rfl
-#align order_ring_hom.coe_ring_hom_id OrderRingHom.coe_RingHom_id
+#align order_ring_hom.coe_ring_hom_id OrderRingHom.coe_ringHom_id
 
 @[simp]
-theorem coe_OrderAddMonoidHom_id : (OrderRingHom.id α : α →+o α) = OrderAddMonoidHom.id α :=
+theorem coe_orderAddMonoidHom_id : (OrderRingHom.id α : α →+o α) = OrderAddMonoidHom.id α :=
   rfl
-#align order_ring_hom.coe_order_add_monoid_hom_id OrderRingHom.coe_OrderAddMonoidHom_id
+#align order_ring_hom.coe_order_add_monoid_hom_id OrderRingHom.coe_orderAddMonoidHom_id
 
 @[simp]
-theorem coe_OrderMonoidWithZeroHom_id :
+theorem coe_orderMonoidWithZeroHom_id :
     (OrderRingHom.id α : α →*₀o α) = OrderMonoidWithZeroHom.id α :=
   rfl
-#align order_ring_hom.coe_order_monoid_with_zero_hom_id OrderRingHom.coe_OrderMonoidWithZeroHom_id
+#align order_ring_hom.coe_order_monoid_with_zero_hom_id OrderRingHom.coe_orderMonoidWithZeroHom_id
 
 /-- Composition of two `OrderRingHom`s as an `OrderRingHom`. -/
 protected def comp (f : β →+*o γ) (g : α →+*o β) : α →+*o γ :=
chore: script to replace headers with #align_import statements (#5979)

Open in Gitpod

Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -2,17 +2,14 @@
 Copyright (c) 2022 Alex J. Best, Yaël Dillies. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Alex J. Best, Yaël Dillies
-
-! This file was ported from Lean 3 source module algebra.order.hom.ring
-! leanprover-community/mathlib commit 92ca63f0fb391a9ca5f22d2409a6080e786d99f7
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Algebra.Order.Archimedean
 import Mathlib.Algebra.Order.Hom.Monoid
 import Mathlib.Algebra.Order.Ring.Defs
 import Mathlib.Algebra.Ring.Equiv
 
+#align_import algebra.order.hom.ring from "leanprover-community/mathlib"@"92ca63f0fb391a9ca5f22d2409a6080e786d99f7"
+
 /-!
 # Ordered ring homomorphisms
 
chore: cleanup whitespace (#5988)

Grepping for [^ .:{-] [^ :] and reviewing the results. Once I started I couldn't stop. :-)

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -110,7 +110,7 @@ instance (priority := 100) OrderRingHomClass.toOrderMonoidWithZeroHomClass [NonA
 
 -- See note [lower instance priority]
 instance (priority := 100) OrderRingIsoClass.toOrderIsoClass [Mul α] [Add α] [LE α]
-  [Mul β] [Add β]  [LE β] [OrderRingIsoClass F α β] : OrderIsoClass F α β :=
+  [Mul β] [Add β] [LE β] [OrderRingIsoClass F α β] : OrderIsoClass F α β :=
   { ‹OrderRingIsoClass F α β› with }
 #align order_ring_iso_class.to_order_iso_class OrderRingIsoClass.toOrderIsoClass
 
@@ -129,7 +129,7 @@ instance (priority := 100) OrderRingIsoClass.toOrderRingHomClass [NonAssocSemiri
 `OrderRingHom`. This is declared as the default coercion from `F` to `α →+*o β`. -/
 @[coe]
 def OrderRingHomClass.toOrderRingHom [NonAssocSemiring α] [Preorder α] [NonAssocSemiring β]
-    [Preorder β] [OrderRingHomClass F α β]  (f : F) : α →+*o β :=
+    [Preorder β] [OrderRingHomClass F α β] (f : F) : α →+*o β :=
 { (f : α →+* β) with monotone' := monotone f}
 
 /-- Any type satisfying `OrderRingHomClass` can be cast into `OrderRingHom` via
chore: fix grammar 1/3 (#5001)

All of these are doc fixes

Diff
@@ -246,7 +246,7 @@ theorem coe_orderMonoidWithZeroHom_apply (f : α →+*o β) (a : α) : (f : α 
   rfl
 #align order_ring_hom.coe_order_monoid_with_zero_hom_apply OrderRingHom.coe_orderMonoidWithZeroHom_apply
 
-/-- Copy of a `OrderRingHom` with a new `toFun` equal to the old one. Useful to fix definitional
+/-- Copy of an `OrderRingHom` with a new `toFun` equal to the old one. Useful to fix definitional
 equalities. -/
 protected def copy (f : α →+*o β) (f' : α → β) (h : f' = f) : α →+*o β :=
   { f.toRingHom.copy f' h, f.toOrderAddMonoidHom.copy f' h with }
chore: formatting issues (#4947)

Co-authored-by: Scott Morrison <scott.morrison@anu.edu.au> Co-authored-by: Parcly Taxel <reddeloostw@gmail.com>

Diff
@@ -480,12 +480,12 @@ protected def trans (f : α ≃+*o β) (g : β ≃+*o γ) : α ≃+*o γ :=
 
 /- Porting note: Used to be generated by [simps] on `trans`, but the lhs of this simplifies under
 simp, so problem with the simpNF linter. Removed [simps] attribute and added aux version below. -/
-theorem trans_toRingEquiv (f : α ≃+*o β) (g : β ≃+*o γ):
+theorem trans_toRingEquiv (f : α ≃+*o β) (g : β ≃+*o γ) :
     (OrderRingIso.trans f g).toRingEquiv = RingEquiv.trans f.toRingEquiv g.toRingEquiv :=
   rfl
 
 @[simp]
-theorem trans_toRingEquiv_aux (f : α ≃+*o β) (g : β ≃+*o γ):
+theorem trans_toRingEquiv_aux (f : α ≃+*o β) (g : β ≃+*o γ) :
     RingEquivClass.toRingEquiv (OrderRingIso.trans f g)
       = RingEquiv.trans f.toRingEquiv g.toRingEquiv :=
   rfl
feat: add Mathlib.Tactic.Common, and import (#4056)

This makes a mathlib4 version of mathlib3's tactic.basic, now called Mathlib.Tactic.Common, which imports all tactics which do not have significant theory requirements, and then is imported all across the base of the hierarchy.

This ensures that all common tactics are available nearly everywhere in the library, rather than having to be imported one-by-one as you need them.

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -12,9 +12,6 @@ import Mathlib.Algebra.Order.Archimedean
 import Mathlib.Algebra.Order.Hom.Monoid
 import Mathlib.Algebra.Order.Ring.Defs
 import Mathlib.Algebra.Ring.Equiv
-import Mathlib.Tactic.ByContra
-import Mathlib.Tactic.SwapVar
-import Mathlib.Tactic.WLOG
 
 /-!
 # Ordered ring homomorphisms
chore: fix #align lines (#3640)

This PR fixes two things:

  • Most align statements for definitions and theorems and instances that are separated by two newlines from the relevant declaration (s/\n\n#align/\n#align). This is often seen in the mathport output after ending calc blocks.
  • All remaining more-than-one-line #align statements. (This was needed for a script I wrote for #3630.)
Diff
@@ -102,18 +102,14 @@ instance (priority := 100) OrderRingHomClass.toOrderAddMonoidHomClass [NonAssocS
     [Preorder α] [NonAssocSemiring β] [Preorder β] [OrderRingHomClass F α β] :
     OrderAddMonoidHomClass F α β :=
   { ‹OrderRingHomClass F α β› with }
-#align
-  order_ring_hom_class.to_order_add_monoid_hom_class
-  OrderRingHomClass.toOrderAddMonoidHomClass
+#align order_ring_hom_class.to_order_add_monoid_hom_class OrderRingHomClass.toOrderAddMonoidHomClass
 
 -- See note [lower priority instance]
 instance (priority := 100) OrderRingHomClass.toOrderMonoidWithZeroHomClass [NonAssocSemiring α]
     [Preorder α] [NonAssocSemiring β] [Preorder β] [OrderRingHomClass F α β] :
     OrderMonoidWithZeroHomClass F α β :=
   { ‹OrderRingHomClass F α β› with }
-#align
-  order_ring_hom_class.to_order_monoid_with_zero_hom_class
-  OrderRingHomClass.toOrderMonoidWithZeroHomClass
+#align order_ring_hom_class.to_order_monoid_with_zero_hom_class OrderRingHomClass.toOrderMonoidWithZeroHomClass
 
 -- See note [lower instance priority]
 instance (priority := 100) OrderRingIsoClass.toOrderIsoClass [Mul α] [Add α] [LE α]
@@ -236,8 +232,7 @@ theorem coe_coe_orderAddMonoidHom (f : α →+*o β) : ⇑(f : α →+o β) = f
 @[simp]
 theorem coe_coe_orderMonoidWithZeroHom (f : α →+*o β) : ⇑(f : α →*₀o β) = f :=
   rfl
-#align
-  order_ring_hom.coe_coe_order_monoid_with_zero_hom OrderRingHom.coe_coe_orderMonoidWithZeroHom
+#align order_ring_hom.coe_coe_order_monoid_with_zero_hom OrderRingHom.coe_coe_orderMonoidWithZeroHom
 
 @[norm_cast]
 theorem coe_ringHom_apply (f : α →+*o β) (a : α) : (f : α →+* β) a = f a :=
@@ -252,9 +247,7 @@ theorem coe_orderAddMonoidHom_apply (f : α →+*o β) (a : α) : (f : α →+o
 @[norm_cast]
 theorem coe_orderMonoidWithZeroHom_apply (f : α →+*o β) (a : α) : (f : α →*₀o β) a = f a :=
   rfl
-#align
-  order_ring_hom.coe_order_monoid_with_zero_hom_apply
-  OrderRingHom.coe_orderMonoidWithZeroHom_apply
+#align order_ring_hom.coe_order_monoid_with_zero_hom_apply OrderRingHom.coe_orderMonoidWithZeroHom_apply
 
 /-- Copy of a `OrderRingHom` with a new `toFun` equal to the old one. Useful to fix definitional
 equalities. -/
@@ -307,8 +300,7 @@ theorem coe_OrderAddMonoidHom_id : (OrderRingHom.id α : α →+o α) = OrderAdd
 theorem coe_OrderMonoidWithZeroHom_id :
     (OrderRingHom.id α : α →*₀o α) = OrderMonoidWithZeroHom.id α :=
   rfl
-#align
-  order_ring_hom.coe_order_monoid_with_zero_hom_id OrderRingHom.coe_OrderMonoidWithZeroHom_id
+#align order_ring_hom.coe_order_monoid_with_zero_hom_id OrderRingHom.coe_OrderMonoidWithZeroHom_id
 
 /-- Composition of two `OrderRingHom`s as an `OrderRingHom`. -/
 protected def comp (f : β →+*o γ) (g : α →+*o β) : α →+*o γ :=
chore: bump to nightly-2023-04-11 (#3139)
Diff
@@ -98,8 +98,8 @@ class OrderRingIsoClass (F : Type _) (α β : outParam (Type _)) [Mul α] [Add 
 #align order_ring_iso_class OrderRingIsoClass
 
 -- See note [lower priority instance]
-instance (priority := 100) OrderRingHomClass.toOrderAddMonoidHomClass {_ :NonAssocSemiring α}
-    {_ : Preorder α} {_ :NonAssocSemiring β} {_ : Preorder β} [OrderRingHomClass F α β] :
+instance (priority := 100) OrderRingHomClass.toOrderAddMonoidHomClass [NonAssocSemiring α]
+    [Preorder α] [NonAssocSemiring β] [Preorder β] [OrderRingHomClass F α β] :
     OrderAddMonoidHomClass F α β :=
   { ‹OrderRingHomClass F α β› with }
 #align
@@ -107,8 +107,8 @@ instance (priority := 100) OrderRingHomClass.toOrderAddMonoidHomClass {_ :NonAss
   OrderRingHomClass.toOrderAddMonoidHomClass
 
 -- See note [lower priority instance]
-instance (priority := 100) OrderRingHomClass.toOrderMonoidWithZeroHomClass {_ : NonAssocSemiring α}
-    {_ : Preorder α} {_ : NonAssocSemiring β} {_ : Preorder β} [OrderRingHomClass F α β] :
+instance (priority := 100) OrderRingHomClass.toOrderMonoidWithZeroHomClass [NonAssocSemiring α]
+    [Preorder α] [NonAssocSemiring β] [Preorder β] [OrderRingHomClass F α β] :
     OrderMonoidWithZeroHomClass F α β :=
   { ‹OrderRingHomClass F α β› with }
 #align
@@ -116,15 +116,14 @@ instance (priority := 100) OrderRingHomClass.toOrderMonoidWithZeroHomClass {_ :
   OrderRingHomClass.toOrderMonoidWithZeroHomClass
 
 -- See note [lower instance priority]
--- porting note: replaced []'s with {_ : }'s to prevent dangerous instances
-instance (priority := 100) OrderRingIsoClass.toOrderIsoClass {_ : Mul α}  {_ : Add α}  {_ :LE α}
-  {_ :Mul β} {_ :Add β}  {_ : LE β} [OrderRingIsoClass F α β] : OrderIsoClass F α β :=
+instance (priority := 100) OrderRingIsoClass.toOrderIsoClass [Mul α] [Add α] [LE α]
+  [Mul β] [Add β]  [LE β] [OrderRingIsoClass F α β] : OrderIsoClass F α β :=
   { ‹OrderRingIsoClass F α β› with }
 #align order_ring_iso_class.to_order_iso_class OrderRingIsoClass.toOrderIsoClass
 
 -- See note [lower instance priority]
-instance (priority := 100) OrderRingIsoClass.toOrderRingHomClass {_ :NonAssocSemiring α}
-  {_ : Preorder α} {_ :NonAssocSemiring β} {_ : Preorder β} [OrderRingIsoClass F α β] :
+instance (priority := 100) OrderRingIsoClass.toOrderRingHomClass [NonAssocSemiring α]
+  [Preorder α] [NonAssocSemiring β] [Preorder β] [OrderRingIsoClass F α β] :
     OrderRingHomClass F α β :=
   { monotone := fun f _ _ => (map_le_map_iff f).2
     -- porting note: used to be the following which times out
chore: sync Algebra.Order.Hom.Ring (#3153)
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Alex J. Best, Yaël Dillies
 
 ! This file was ported from Lean 3 source module algebra.order.hom.ring
-! leanprover-community/mathlib commit a2d2e18906e2b62627646b5d5be856e6a642062f
+! leanprover-community/mathlib commit 92ca63f0fb391a9ca5f22d2409a6080e786d99f7
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -14,6 +14,7 @@ import Mathlib.Algebra.Order.Ring.Defs
 import Mathlib.Algebra.Ring.Equiv
 import Mathlib.Tactic.ByContra
 import Mathlib.Tactic.SwapVar
+import Mathlib.Tactic.WLOG
 
 /-!
 # Ordered ring homomorphisms
@@ -570,19 +571,17 @@ instance OrderRingHom.subsingleton [LinearOrderedField α] [LinearOrderedField 
     Subsingleton (α →+*o β) :=
   ⟨fun f g => by
     ext x
-    by_contra' h
-    cases' Ne.lt_or_lt h with h h
-    on_goal 2 => swap_var f ↔ g
-    all_goals
-    -- porting note: the above three lines used to be:
-    -- wlog h : f x < g x using f g, g f
-    -- · exact Ne.lt_or_lt h
-      obtain ⟨q, hf, hg⟩ := exists_rat_btwn h
-      rw [← map_ratCast f] at hf
-      rw [← map_ratCast g] at hg
-      exact
-        (lt_asymm ((OrderHomClass.mono g).reflect_lt hg) <|
-            (OrderHomClass.mono f).reflect_lt hf).elim⟩
+    by_contra' h' : f x ≠ g x
+    wlog h : f x < g x generalizing α β with h₂
+    -- porting note: had to add the `generalizing` as there are random variables
+    -- `F γ δ` flying around in context.
+    · exact h₂ g f x (Ne.symm h') (h'.lt_or_lt.resolve_left h)
+    obtain ⟨q, hf, hg⟩ := exists_rat_btwn h
+    rw [← map_ratCast f] at hf
+    rw [← map_ratCast g] at hg
+    exact
+      (lt_asymm ((OrderHomClass.mono g).reflect_lt hg) <|
+          (OrderHomClass.mono f).reflect_lt hf).elim⟩
 #align order_ring_hom.subsingleton OrderRingHom.subsingleton
 
 /-- There is at most one ordered ring isomorphism between a linear ordered field and an archimedean
feat: improvements to congr! and convert (#2606)
  • There is now configuration for congr!, convert, and convert_to to control parts of the congruence algorithm, in particular transparency settings when applying congruence lemmas.
  • congr! now applies congruence lemmas with reducible transparency by default. This prevents it from unfolding definitions when applying congruence lemmas. It also now tries both the LHS-biased and RHS-biased simp congruence lemmas, with a configuration option to set which it should try first.
  • There is now a new HEq congruence lemma generator that gives each hypothesis access to the proofs of previous hypotheses. This means that if you have an equality ⊢ ⟨a, x⟩ = ⟨b, y⟩ of sigma types, congr! turns this into goals ⊢ a = b and ⊢ a = b → HEq x y (note that congr! will also auto-introduce a = b for you in the second goal). This congruence lemma generator applies to more cases than the simp congruence lemma generator does.
  • congr! (and hence convert) are more careful about applying lemmas that don't force definitions to unfold. There were a number of cases in mathlib where the implementation of congr was being abused to unfold definitions.
  • With set_option trace.congr! true you can see what congr! sees when it is deciding on congruence lemmas.
  • There is also a bug fix in convert_to to do using 1 when there is no using clause, to match its documentation.

Note that congr! is more capable than congr at finding a way to equate left-hand sides and right-hand sides, so you will frequently need to limit its depth with a using clause. However, there is also a new heuristic to prevent considering unlikely-to-be-provable type equalities (controlled by the typeEqs option), which can help limit the depth automatically.

There is also a predefined configuration that you can invoke with, for example, convert (config := .unfoldSameFun) h, that causes it to behave more like congr, including using default transparency when unfolding.

Diff
@@ -549,7 +549,7 @@ theorem coe_toOrderRingHom_refl : (OrderRingIso.refl α : α →+*o α) = OrderR
 #align order_ring_iso.coe_to_order_ring_hom_refl OrderRingIso.coe_toOrderRingHom_refl
 
 theorem toOrderRingHom_injective : Injective (toOrderRingHom : α ≃+*o β → α →+*o β) :=
-  fun f g h => FunLike.coe_injective <| by convert FunLike.ext'_iff.1 h
+  fun f g h => FunLike.coe_injective <| by convert FunLike.ext'_iff.1 h using 0
 #align order_ring_iso.to_order_ring_hom_injective OrderRingIso.toOrderRingHom_injective
 
 end NonAssocSemiring
fix: replace symmApply by symm_apply (#2560)
Diff
@@ -474,9 +474,9 @@ protected def symm (e : α ≃+*o β) : β ≃+*o α :=
 #align order_ring_iso.symm OrderRingIso.symm
 
 /-- See Note [custom simps projection] -/
-def Simps.symmApply (e : α ≃+*o β) : β → α :=
+def Simps.symm_apply (e : α ≃+*o β) : β → α :=
   e.symm
-#align order_ring_iso.simps.symm_apply OrderRingIso.Simps.symmApply
+#align order_ring_iso.simps.symm_apply OrderRingIso.Simps.symm_apply
 
 @[simp]
 theorem symm_symm (e : α ≃+*o β) : e.symm.symm = e :=
feat: port Algebra.Order.Hom.Ring (#1482)

Worked around https://github.com/leanprover-community/mathlib4/issues/2505, but finally everything works.

Dependencies 3 + 152

153 files ported (98.1%)
63598 lines ported (98.4%)
Show graph

The unported dependencies are