algebra.order.hom.monoid
⟷
Mathlib.Algebra.Order.Hom.Monoid
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.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(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)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -6,7 +6,7 @@ Authors: Yaël Dillies
import Algebra.Group.Pi.Basic
import Algebra.Group.Hom.Defs
import Algebra.Order.Group.Instances
-import Algebra.Order.Monoid.WithZero
+import Algebra.Order.Monoid.WithZero.Defs
import Order.Hom.Basic
#align_import algebra.order.hom.monoid from "leanprover-community/mathlib"@"448144f7ae193a8990cb7473c9e9a01990f64ac7"
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -3,10 +3,10 @@ Copyright (c) 2022 Yaël Dillies. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Yaël Dillies
-/
-import Data.Pi.Algebra
-import Algebra.Hom.Group
+import Algebra.Group.Pi.Basic
+import Algebra.Group.Hom.Defs
import Algebra.Order.Group.Instances
-import Algebra.Order.Monoid.WithZero.Defs
+import Algebra.Order.Monoid.WithZero
import Order.Hom.Basic
#align_import algebra.order.hom.monoid from "leanprover-community/mathlib"@"448144f7ae193a8990cb7473c9e9a01990f64ac7"
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -83,7 +83,6 @@ infixr:25 " →+o " => OrderAddMonoidHom
section
-#print OrderAddMonoidHomClass /-
/-- `order_add_monoid_hom_class F α β` states that `F` is a type of ordered monoid homomorphisms.
You should also extend this typeclass when you extend `order_add_monoid_hom`. -/
@@ -91,7 +90,6 @@ class OrderAddMonoidHomClass (F : Type _) (α β : outParam <| Type _) [Preorder
[AddZeroClass α] [AddZeroClass β] extends AddMonoidHomClass F α β where
Monotone (f : F) : Monotone f
#align order_add_monoid_hom_class OrderAddMonoidHomClass
--/
end
@@ -123,7 +121,6 @@ infixr:25 " →*o " => OrderMonoidHom
section
-#print OrderMonoidHomClass /-
/-- `order_monoid_hom_class F α β` states that `F` is a type of ordered monoid homomorphisms.
You should also extend this typeclass when you extend `order_monoid_hom`. -/
@@ -133,19 +130,16 @@ class OrderMonoidHomClass (F : Type _) (α β : outParam <| Type _) [Preorder α
Monotone (f : F) : Monotone f
#align order_monoid_hom_class OrderMonoidHomClass
#align order_add_monoid_hom_class OrderAddMonoidHomClass
--/
end
-#print OrderMonoidHomClass.toOrderHomClass /-
-- See note [lower instance priority]
@[to_additive]
instance (priority := 100) OrderMonoidHomClass.toOrderHomClass [OrderMonoidHomClass F α β] :
OrderHomClass F α β :=
{ ‹OrderMonoidHomClass F α β› with mapRel := OrderMonoidHomClass.monotone }
#align order_monoid_hom_class.to_order_hom_class OrderMonoidHomClass.toOrderHomClass
-#align order_add_monoid_hom_class.to_order_hom_class OrderAddMonoidHomClass.toOrderHomClass
--/
+#align order_add_monoid_hom_class.to_order_hom_class OrderAddMonoidHomClass.to_order_hom_class
@[to_additive]
instance [OrderMonoidHomClass F α β] : CoeTC F (α →*o β) :=
@@ -181,7 +175,6 @@ infixr:25 " →*₀o " => OrderMonoidWithZeroHom
section
-#print OrderMonoidWithZeroHomClass /-
/-- `order_monoid_with_zero_hom_class F α β` states that `F` is a type of
ordered monoid with zero homomorphisms.
@@ -190,17 +183,14 @@ class OrderMonoidWithZeroHomClass (F : Type _) (α β : outParam <| Type _) [Pre
[MulZeroOneClass α] [MulZeroOneClass β] extends MonoidWithZeroHomClass F α β where
Monotone (f : F) : Monotone f
#align order_monoid_with_zero_hom_class OrderMonoidWithZeroHomClass
--/
end
-#print OrderMonoidWithZeroHomClass.toOrderMonoidHomClass /-
-- See note [lower instance priority]
instance (priority := 100) OrderMonoidWithZeroHomClass.toOrderMonoidHomClass
[OrderMonoidWithZeroHomClass F α β] : OrderMonoidHomClass F α β :=
{ ‹OrderMonoidWithZeroHomClass F α β› with }
#align order_monoid_with_zero_hom_class.to_order_monoid_hom_class OrderMonoidWithZeroHomClass.toOrderMonoidHomClass
--/
instance [OrderMonoidWithZeroHomClass F α β] : CoeTC F (α →*₀o β) :=
⟨fun f =>
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -142,7 +142,7 @@ end
@[to_additive]
instance (priority := 100) OrderMonoidHomClass.toOrderHomClass [OrderMonoidHomClass F α β] :
OrderHomClass F α β :=
- { ‹OrderMonoidHomClass F α β› with map_rel := OrderMonoidHomClass.monotone }
+ { ‹OrderMonoidHomClass F α β› with mapRel := OrderMonoidHomClass.monotone }
#align order_monoid_hom_class.to_order_hom_class OrderMonoidHomClass.toOrderHomClass
#align order_add_monoid_hom_class.to_order_hom_class OrderAddMonoidHomClass.toOrderHomClass
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -308,13 +308,13 @@ directly. -/
@[to_additive
"Helper instance for when there's too many metavariables to apply\n`fun_like.has_coe_to_fun` directly."]
instance : CoeFun (α →*o β) fun _ => α → β :=
- FunLike.hasCoeToFun
+ DFunLike.hasCoeToFun
#print OrderMonoidHom.ext /-
-- Other lemmas should be accessed through the `fun_like` API
@[ext, to_additive]
theorem ext (h : ∀ a, f a = g a) : f = g :=
- FunLike.ext f g h
+ DFunLike.ext f g h
#align order_monoid_hom.ext OrderMonoidHom.ext
#align order_add_monoid_hom.ext OrderAddMonoidHom.ext
-/
@@ -370,7 +370,7 @@ theorem coe_orderHom (f : α →*o β) : ((f : α →o β) : α → β) = f :=
#print OrderMonoidHom.toMonoidHom_injective /-
@[to_additive]
theorem toMonoidHom_injective : Injective (toMonoidHom : _ → α →* β) := fun f g h =>
- ext <| by convert FunLike.ext_iff.1 h
+ ext <| by convert DFunLike.ext_iff.1 h
#align order_monoid_hom.to_monoid_hom_injective OrderMonoidHom.toMonoidHom_injective
#align order_add_monoid_hom.to_add_monoid_hom_injective OrderAddMonoidHom.toAddMonoidHom_injective
-/
@@ -378,7 +378,7 @@ theorem toMonoidHom_injective : Injective (toMonoidHom : _ → α →* β) := fu
#print OrderMonoidHom.toOrderHom_injective /-
@[to_additive]
theorem toOrderHom_injective : Injective (toOrderHom : _ → α →o β) := fun f g h =>
- ext <| by convert FunLike.ext_iff.1 h
+ ext <| by convert DFunLike.ext_iff.1 h
#align order_monoid_hom.to_order_hom_injective OrderMonoidHom.toOrderHom_injective
#align order_add_monoid_hom.to_order_hom_injective OrderAddMonoidHom.toOrderHom_injective
-/
@@ -407,7 +407,7 @@ theorem coe_copy (f : α →*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f'
#print OrderMonoidHom.copy_eq /-
@[to_additive]
theorem copy_eq (f : α →*o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
- FunLike.ext' h
+ DFunLike.ext' h
#align order_monoid_hom.copy_eq OrderMonoidHom.copy_eq
#align order_add_monoid_hom.copy_eq OrderAddMonoidHom.copy_eq
-/
@@ -508,7 +508,7 @@ theorem id_comp (f : α →*o β) : (OrderMonoidHom.id β).comp f = f :=
@[to_additive]
theorem cancel_right {g₁ g₂ : β →*o γ} {f : α →*o β} (hf : Function.Surjective f) :
g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
- ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
+ ⟨fun h => ext <| hf.forall.2 <| DFunLike.ext_iff.1 h, congr_arg _⟩
#align order_monoid_hom.cancel_right OrderMonoidHom.cancel_right
#align order_add_monoid_hom.cancel_right OrderAddMonoidHom.cancel_right
-/
@@ -664,13 +664,13 @@ instance : OrderMonoidWithZeroHomClass (α →*₀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 OrderMonoidWithZeroHom.ext /-
-- Other lemmas should be accessed through the `fun_like` API
@[ext]
theorem ext (h : ∀ a, f a = g a) : f = g :=
- FunLike.ext f g h
+ DFunLike.ext f g h
#align order_monoid_with_zero_hom.ext OrderMonoidWithZeroHom.ext
-/
@@ -716,13 +716,13 @@ theorem coe_orderMonoidHom (f : α →*₀o β) : ⇑(f : α →*o β) = f :=
#print OrderMonoidWithZeroHom.toOrderMonoidHom_injective /-
theorem toOrderMonoidHom_injective : Injective (toOrderMonoidHom : _ → α →*o β) := fun f g h =>
- ext <| by convert FunLike.ext_iff.1 h
+ ext <| by convert DFunLike.ext_iff.1 h
#align order_monoid_with_zero_hom.to_order_monoid_hom_injective OrderMonoidWithZeroHom.toOrderMonoidHom_injective
-/
#print OrderMonoidWithZeroHom.toMonoidWithZeroHom_injective /-
theorem toMonoidWithZeroHom_injective : Injective (toMonoidWithZeroHom : _ → α →*₀ β) :=
- fun f g h => ext <| by convert FunLike.ext_iff.1 h
+ fun f g h => ext <| by convert DFunLike.ext_iff.1 h
#align order_monoid_with_zero_hom.to_monoid_with_zero_hom_injective OrderMonoidWithZeroHom.toMonoidWithZeroHom_injective
-/
@@ -743,7 +743,7 @@ theorem coe_copy (f : α →*₀o β) (f' : α → β) (h : f' = f) : ⇑(f.copy
#print OrderMonoidWithZeroHom.copy_eq /-
theorem copy_eq (f : α →*₀o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
- FunLike.ext' h
+ DFunLike.ext' h
#align order_monoid_with_zero_hom.copy_eq OrderMonoidWithZeroHom.copy_eq
-/
@@ -830,7 +830,7 @@ theorem id_comp (f : α →*₀o β) : (OrderMonoidWithZeroHom.id β).comp f = f
#print OrderMonoidWithZeroHom.cancel_right /-
theorem cancel_right {g₁ g₂ : β →*₀o γ} {f : α →*₀o β} (hf : Function.Surjective f) :
g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
- ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
+ ⟨fun h => ext <| hf.forall.2 <| DFunLike.ext_iff.1 h, congr_arg _⟩
#align order_monoid_with_zero_hom.cancel_right OrderMonoidWithZeroHom.cancel_right
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,11 +3,11 @@ Copyright (c) 2022 Yaël Dillies. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Yaël Dillies
-/
-import Mathbin.Data.Pi.Algebra
-import Mathbin.Algebra.Hom.Group
-import Mathbin.Algebra.Order.Group.Instances
-import Mathbin.Algebra.Order.Monoid.WithZero.Defs
-import Mathbin.Order.Hom.Basic
+import Data.Pi.Algebra
+import Algebra.Hom.Group
+import Algebra.Order.Group.Instances
+import Algebra.Order.Monoid.WithZero.Defs
+import Order.Hom.Basic
#align_import algebra.order.hom.monoid from "leanprover-community/mathlib"@"448144f7ae193a8990cb7473c9e9a01990f64ac7"
mathlib commit https://github.com/leanprover-community/mathlib/commit/32a7e535287f9c73f2e4d2aef306a39190f0b504
@@ -299,7 +299,7 @@ instance : OrderMonoidHomClass (α →*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'
Monotone f := f.monotone'
@@ -656,7 +656,7 @@ instance : OrderMonoidWithZeroHomClass (α →*₀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_zero f := f.map_zero'
Monotone f := f.monotone'
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,11 +2,6 @@
Copyright (c) 2022 Yaël Dillies. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Yaël Dillies
-
-! This file was ported from Lean 3 source module algebra.order.hom.monoid
-! leanprover-community/mathlib commit 448144f7ae193a8990cb7473c9e9a01990f64ac7
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.Data.Pi.Algebra
import Mathbin.Algebra.Hom.Group
@@ -14,6 +9,8 @@ import Mathbin.Algebra.Order.Group.Instances
import Mathbin.Algebra.Order.Monoid.WithZero.Defs
import Mathbin.Order.Hom.Basic
+#align_import algebra.order.hom.monoid from "leanprover-community/mathlib"@"448144f7ae193a8990cb7473c9e9a01990f64ac7"
+
/-!
# Ordered monoid and group homomorphisms
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -82,7 +82,6 @@ structure OrderAddMonoidHom (α β : Type _) [Preorder α] [Preorder β] [AddZer
#align order_add_monoid_hom OrderAddMonoidHom
-/
--- mathport name: «expr →+o »
infixr:25 " →+o " => OrderAddMonoidHom
section
@@ -123,7 +122,6 @@ structure OrderMonoidHom (α β : Type _) [Preorder α] [Preorder β] [MulOneCla
#align order_add_monoid_hom OrderAddMonoidHom
-/
--- mathport name: «expr →*o »
infixr:25 " →*o " => OrderMonoidHom
section
@@ -182,7 +180,6 @@ structure OrderMonoidWithZeroHom (α β : Type _) [Preorder α] [Preorder β] [M
#align order_monoid_with_zero_hom OrderMonoidWithZeroHom
-/
--- mathport name: «expr →*₀o »
infixr:25 " →*₀o " => OrderMonoidWithZeroHom
section
@@ -223,13 +220,15 @@ section OrderedAddCommMonoid
variable [OrderedAddCommMonoid α] [OrderedAddCommMonoid β] [OrderAddMonoidHomClass F α β] (f : F)
{a : α}
-include β
-
+#print map_nonneg /-
theorem map_nonneg (ha : 0 ≤ a) : 0 ≤ f a := by rw [← map_zero f]; exact OrderHomClass.mono _ ha
#align map_nonneg map_nonneg
+-/
+#print map_nonpos /-
theorem map_nonpos (ha : a ≤ 0) : f a ≤ 0 := by rw [← map_zero f]; exact OrderHomClass.mono _ ha
#align map_nonpos map_nonpos
+-/
end OrderedAddCommMonoid
@@ -237,41 +236,57 @@ section OrderedAddCommGroup
variable [OrderedAddCommGroup α] [OrderedAddCommMonoid β] [AddMonoidHomClass F α β] (f : F)
+#print monotone_iff_map_nonneg /-
theorem monotone_iff_map_nonneg : Monotone (f : α → β) ↔ ∀ a, 0 ≤ a → 0 ≤ f a :=
⟨fun h a => by rw [← map_zero f]; apply h, fun h a b hl => by
rw [← sub_add_cancel b a, map_add f]; exact le_add_of_nonneg_left (h _ <| sub_nonneg.2 hl)⟩
#align monotone_iff_map_nonneg monotone_iff_map_nonneg
+-/
+#print antitone_iff_map_nonpos /-
theorem antitone_iff_map_nonpos : Antitone (f : α → β) ↔ ∀ a, 0 ≤ a → f a ≤ 0 :=
monotone_toDual_comp_iff.symm.trans <| monotone_iff_map_nonneg _
#align antitone_iff_map_nonpos antitone_iff_map_nonpos
+-/
+#print monotone_iff_map_nonpos /-
theorem monotone_iff_map_nonpos : Monotone (f : α → β) ↔ ∀ a ≤ 0, f a ≤ 0 :=
antitone_comp_ofDual_iff.symm.trans <| antitone_iff_map_nonpos _
#align monotone_iff_map_nonpos monotone_iff_map_nonpos
+-/
+#print antitone_iff_map_nonneg /-
theorem antitone_iff_map_nonneg : Antitone (f : α → β) ↔ ∀ a ≤ 0, 0 ≤ f a :=
monotone_comp_ofDual_iff.symm.trans <| monotone_iff_map_nonneg _
#align antitone_iff_map_nonneg antitone_iff_map_nonneg
+-/
variable [CovariantClass β β (· + ·) (· < ·)]
+#print strictMono_iff_map_pos /-
theorem strictMono_iff_map_pos : StrictMono (f : α → β) ↔ ∀ a, 0 < a → 0 < f a :=
⟨fun h a => by rw [← map_zero f]; apply h, fun h a b hl => by
rw [← sub_add_cancel b a, map_add f]; exact lt_add_of_pos_left _ (h _ <| sub_pos.2 hl)⟩
#align strict_mono_iff_map_pos strictMono_iff_map_pos
+-/
+#print strictAnti_iff_map_neg /-
theorem strictAnti_iff_map_neg : StrictAnti (f : α → β) ↔ ∀ a, 0 < a → f a < 0 :=
strictMono_toDual_comp_iff.symm.trans <| strictMono_iff_map_pos _
#align strict_anti_iff_map_neg strictAnti_iff_map_neg
+-/
+#print strictMono_iff_map_neg /-
theorem strictMono_iff_map_neg : StrictMono (f : α → β) ↔ ∀ a < 0, f a < 0 :=
strictAnti_comp_ofDual_iff.symm.trans <| strictAnti_iff_map_neg _
#align strict_mono_iff_map_neg strictMono_iff_map_neg
+-/
+#print strictAnti_iff_map_pos /-
theorem strictAnti_iff_map_pos : StrictAnti (f : α → β) ↔ ∀ a < 0, 0 < f a :=
strictMono_comp_ofDual_iff.symm.trans <| strictMono_iff_map_pos _
#align strict_anti_iff_map_pos strictAnti_iff_map_pos
+-/
end OrderedAddCommGroup
@@ -298,29 +313,37 @@ directly. -/
instance : CoeFun (α →*o β) fun _ => α → β :=
FunLike.hasCoeToFun
+#print OrderMonoidHom.ext /-
-- Other lemmas should be accessed through the `fun_like` API
@[ext, to_additive]
theorem ext (h : ∀ a, f a = g a) : f = g :=
FunLike.ext f g h
#align order_monoid_hom.ext OrderMonoidHom.ext
#align order_add_monoid_hom.ext OrderAddMonoidHom.ext
+-/
+#print OrderMonoidHom.toFun_eq_coe /-
@[to_additive]
theorem toFun_eq_coe (f : α →*o β) : f.toFun = (f : α → β) :=
rfl
#align order_monoid_hom.to_fun_eq_coe OrderMonoidHom.toFun_eq_coe
#align order_add_monoid_hom.to_fun_eq_coe OrderAddMonoidHom.toFun_eq_coe
+-/
+#print OrderMonoidHom.coe_mk /-
@[simp, to_additive]
theorem coe_mk (f : α →* β) (h) : (OrderMonoidHom.mk f h : α → β) = f :=
rfl
#align order_monoid_hom.coe_mk OrderMonoidHom.coe_mk
#align order_add_monoid_hom.coe_mk OrderAddMonoidHom.coe_mk
+-/
+#print OrderMonoidHom.mk_coe /-
@[simp, to_additive]
theorem mk_coe (f : α →*o β) (h) : OrderMonoidHom.mk (f : α →* β) h = f := by ext; rfl
#align order_monoid_hom.mk_coe OrderMonoidHom.mk_coe
#align order_add_monoid_hom.mk_coe OrderAddMonoidHom.mk_coe
+-/
#print OrderMonoidHom.toOrderHom /-
/-- Reinterpret an ordered monoid homomorphism as an order homomorphism. -/
@@ -331,30 +354,39 @@ def toOrderHom (f : α →*o β) : α →o β :=
#align order_add_monoid_hom.to_order_hom OrderAddMonoidHom.toOrderHom
-/
+#print OrderMonoidHom.coe_monoidHom /-
@[simp, to_additive]
theorem coe_monoidHom (f : α →*o β) : ((f : α →* β) : α → β) = f :=
rfl
#align order_monoid_hom.coe_monoid_hom OrderMonoidHom.coe_monoidHom
#align order_add_monoid_hom.coe_add_monoid_hom OrderAddMonoidHom.coe_addMonoidHom
+-/
+#print OrderMonoidHom.coe_orderHom /-
@[simp, to_additive]
theorem coe_orderHom (f : α →*o β) : ((f : α →o β) : α → β) = f :=
rfl
#align order_monoid_hom.coe_order_hom OrderMonoidHom.coe_orderHom
#align order_add_monoid_hom.coe_order_hom OrderAddMonoidHom.coe_orderHom
+-/
+#print OrderMonoidHom.toMonoidHom_injective /-
@[to_additive]
theorem toMonoidHom_injective : Injective (toMonoidHom : _ → α →* β) := fun f g h =>
ext <| by convert FunLike.ext_iff.1 h
#align order_monoid_hom.to_monoid_hom_injective OrderMonoidHom.toMonoidHom_injective
#align order_add_monoid_hom.to_add_monoid_hom_injective OrderAddMonoidHom.toAddMonoidHom_injective
+-/
+#print OrderMonoidHom.toOrderHom_injective /-
@[to_additive]
theorem toOrderHom_injective : Injective (toOrderHom : _ → α →o β) := fun f g h =>
ext <| by convert FunLike.ext_iff.1 h
#align order_monoid_hom.to_order_hom_injective OrderMonoidHom.toOrderHom_injective
#align order_add_monoid_hom.to_order_hom_injective OrderAddMonoidHom.toOrderHom_injective
+-/
+#print OrderMonoidHom.copy /-
/-- Copy of an `order_monoid_hom` with a new `to_fun` equal to the old one. Useful to fix
definitional equalities. -/
@[to_additive
@@ -365,18 +397,23 @@ protected def copy (f : α →*o β) (f' : α → β) (h : f' = f) : α →*o β
monotone' := h.symm.subst f.monotone' }
#align order_monoid_hom.copy OrderMonoidHom.copy
#align order_add_monoid_hom.copy OrderAddMonoidHom.copy
+-/
+#print OrderMonoidHom.coe_copy /-
@[simp, to_additive]
theorem coe_copy (f : α →*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
rfl
#align order_monoid_hom.coe_copy OrderMonoidHom.coe_copy
#align order_add_monoid_hom.coe_copy OrderAddMonoidHom.coe_copy
+-/
+#print OrderMonoidHom.copy_eq /-
@[to_additive]
theorem copy_eq (f : α →*o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
FunLike.ext' h
#align order_monoid_hom.copy_eq OrderMonoidHom.copy_eq
#align order_add_monoid_hom.copy_eq OrderAddMonoidHom.copy_eq
+-/
variable (α)
@@ -389,11 +426,13 @@ protected def id : α →*o α :=
#align order_add_monoid_hom.id OrderAddMonoidHom.id
-/
+#print OrderMonoidHom.coe_id /-
@[simp, to_additive]
theorem coe_id : ⇑(OrderMonoidHom.id α) = id :=
rfl
#align order_monoid_hom.coe_id OrderMonoidHom.coe_id
#align order_add_monoid_hom.coe_id OrderAddMonoidHom.coe_id
+-/
@[to_additive]
instance : Inhabited (α →*o α) :=
@@ -410,91 +449,117 @@ def comp (f : β →*o γ) (g : α →*o β) : α →*o γ :=
#align order_add_monoid_hom.comp OrderAddMonoidHom.comp
-/
+#print OrderMonoidHom.coe_comp /-
@[simp, to_additive]
theorem coe_comp (f : β →*o γ) (g : α →*o β) : (f.comp g : α → γ) = f ∘ g :=
rfl
#align order_monoid_hom.coe_comp OrderMonoidHom.coe_comp
#align order_add_monoid_hom.coe_comp OrderAddMonoidHom.coe_comp
+-/
+#print OrderMonoidHom.comp_apply /-
@[simp, to_additive]
theorem comp_apply (f : β →*o γ) (g : α →*o β) (a : α) : (f.comp g) a = f (g a) :=
rfl
#align order_monoid_hom.comp_apply OrderMonoidHom.comp_apply
#align order_add_monoid_hom.comp_apply OrderAddMonoidHom.comp_apply
+-/
+#print OrderMonoidHom.coe_comp_monoidHom /-
@[simp, to_additive]
theorem coe_comp_monoidHom (f : β →*o γ) (g : α →*o β) :
(f.comp g : α →* γ) = (f : β →* γ).comp g :=
rfl
#align order_monoid_hom.coe_comp_monoid_hom OrderMonoidHom.coe_comp_monoidHom
#align order_add_monoid_hom.coe_comp_add_monoid_hom OrderAddMonoidHom.coe_comp_addMonoidHom
+-/
+#print OrderMonoidHom.coe_comp_orderHom /-
@[simp, to_additive]
theorem coe_comp_orderHom (f : β →*o γ) (g : α →*o β) : (f.comp g : α →o γ) = (f : β →o γ).comp g :=
rfl
#align order_monoid_hom.coe_comp_order_hom OrderMonoidHom.coe_comp_orderHom
#align order_add_monoid_hom.coe_comp_order_hom OrderAddMonoidHom.coe_comp_orderHom
+-/
+#print OrderMonoidHom.comp_assoc /-
@[simp, to_additive]
theorem comp_assoc (f : γ →*o δ) (g : β →*o γ) (h : α →*o β) :
(f.comp g).comp h = f.comp (g.comp h) :=
rfl
#align order_monoid_hom.comp_assoc OrderMonoidHom.comp_assoc
#align order_add_monoid_hom.comp_assoc OrderAddMonoidHom.comp_assoc
+-/
+#print OrderMonoidHom.comp_id /-
@[simp, to_additive]
theorem comp_id (f : α →*o β) : f.comp (OrderMonoidHom.id α) = f :=
ext fun a => rfl
#align order_monoid_hom.comp_id OrderMonoidHom.comp_id
#align order_add_monoid_hom.comp_id OrderAddMonoidHom.comp_id
+-/
+#print OrderMonoidHom.id_comp /-
@[simp, to_additive]
theorem id_comp (f : α →*o β) : (OrderMonoidHom.id β).comp f = f :=
ext fun a => rfl
#align order_monoid_hom.id_comp OrderMonoidHom.id_comp
#align order_add_monoid_hom.id_comp OrderAddMonoidHom.id_comp
+-/
+#print OrderMonoidHom.cancel_right /-
@[to_additive]
theorem cancel_right {g₁ g₂ : β →*o γ} {f : α →*o β} (hf : Function.Surjective f) :
g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
#align order_monoid_hom.cancel_right OrderMonoidHom.cancel_right
#align order_add_monoid_hom.cancel_right OrderAddMonoidHom.cancel_right
+-/
+#print OrderMonoidHom.cancel_left /-
@[to_additive]
theorem cancel_left {g : β →*o γ} {f₁ f₂ : α →*o β} (hg : Function.Injective g) :
g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
⟨fun h => ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
#align order_monoid_hom.cancel_left OrderMonoidHom.cancel_left
#align order_add_monoid_hom.cancel_left OrderAddMonoidHom.cancel_left
+-/
/-- `1` is the homomorphism sending all elements to `1`. -/
@[to_additive "`1` is the homomorphism sending all elements to `1`."]
instance : One (α →*o β) :=
⟨{ (1 : α →* β) with monotone' := monotone_const }⟩
+#print OrderMonoidHom.coe_one /-
@[simp, to_additive]
theorem coe_one : ⇑(1 : α →*o β) = 1 :=
rfl
#align order_monoid_hom.coe_one OrderMonoidHom.coe_one
#align order_add_monoid_hom.coe_zero OrderAddMonoidHom.coe_zero
+-/
+#print OrderMonoidHom.one_apply /-
@[simp, to_additive]
theorem one_apply (a : α) : (1 : α →*o β) a = 1 :=
rfl
#align order_monoid_hom.one_apply OrderMonoidHom.one_apply
#align order_add_monoid_hom.zero_apply OrderAddMonoidHom.zero_apply
+-/
+#print OrderMonoidHom.one_comp /-
@[simp, to_additive]
theorem one_comp (f : α →*o β) : (1 : β →*o γ).comp f = 1 :=
rfl
#align order_monoid_hom.one_comp OrderMonoidHom.one_comp
#align order_add_monoid_hom.zero_comp OrderAddMonoidHom.zero_comp
+-/
+#print OrderMonoidHom.comp_one /-
@[simp, to_additive]
theorem comp_one (f : β →*o γ) : f.comp (1 : α →*o β) = 1 := by ext; exact map_one f
#align order_monoid_hom.comp_one OrderMonoidHom.comp_one
#align order_add_monoid_hom.comp_zero OrderAddMonoidHom.comp_zero
+-/
end Preorder
@@ -509,29 +574,37 @@ sending `a` to `f a * g a`. -/
instance : Mul (α →*o β) :=
⟨fun f g => { (f * g : α →* β) with monotone' := f.monotone'.mul' g.monotone' }⟩
+#print OrderMonoidHom.coe_mul /-
@[simp, to_additive]
theorem coe_mul (f g : α →*o β) : ⇑(f * g) = f * g :=
rfl
#align order_monoid_hom.coe_mul OrderMonoidHom.coe_mul
#align order_add_monoid_hom.coe_add OrderAddMonoidHom.coe_add
+-/
+#print OrderMonoidHom.mul_apply /-
@[simp, to_additive]
theorem mul_apply (f g : α →*o β) (a : α) : (f * g) a = f a * g a :=
rfl
#align order_monoid_hom.mul_apply OrderMonoidHom.mul_apply
#align order_add_monoid_hom.add_apply OrderAddMonoidHom.add_apply
+-/
+#print OrderMonoidHom.mul_comp /-
@[to_additive]
theorem mul_comp (g₁ g₂ : β →*o γ) (f : α →*o β) : (g₁ * g₂).comp f = g₁.comp f * g₂.comp f :=
rfl
#align order_monoid_hom.mul_comp OrderMonoidHom.mul_comp
#align order_add_monoid_hom.add_comp OrderAddMonoidHom.add_comp
+-/
+#print OrderMonoidHom.comp_mul /-
@[to_additive]
theorem comp_mul (g : β →*o γ) (f₁ f₂ : α →*o β) : g.comp (f₁ * f₂) = g.comp f₁ * g.comp f₂ := by
ext; exact map_mul g _ _
#align order_monoid_hom.comp_mul OrderMonoidHom.comp_mul
#align order_add_monoid_hom.comp_add OrderAddMonoidHom.comp_add
+-/
end Mul
@@ -539,18 +612,20 @@ section OrderedCommMonoid
variable {hα : OrderedCommMonoid α} {hβ : OrderedCommMonoid β}
-include hα hβ
-
+#print OrderMonoidHom.toMonoidHom_eq_coe /-
@[simp, to_additive]
theorem toMonoidHom_eq_coe (f : α →*o β) : f.toMonoidHom = f := by ext; rfl
#align order_monoid_hom.to_monoid_hom_eq_coe OrderMonoidHom.toMonoidHom_eq_coe
#align order_add_monoid_hom.to_add_monoid_hom_eq_coe OrderAddMonoidHom.toAddMonoidHom_eq_coe
+-/
+#print OrderMonoidHom.toOrderHom_eq_coe /-
@[simp, to_additive]
theorem toOrderHom_eq_coe (f : α →*o β) : f.toOrderHom = f :=
rfl
#align order_monoid_hom.to_order_hom_eq_coe OrderMonoidHom.toOrderHom_eq_coe
#align order_add_monoid_hom.to_order_hom_eq_coe OrderAddMonoidHom.toOrderHom_eq_coe
+-/
end OrderedCommMonoid
@@ -558,8 +633,7 @@ section OrderedCommGroup
variable {hα : OrderedCommGroup α} {hβ : OrderedCommGroup β}
-include hα hβ
-
+#print OrderMonoidHom.mk' /-
/-- Makes an ordered group homomorphism from a proof that the map preserves multiplication. -/
@[to_additive
"Makes an ordered additive group homomorphism from a proof that the map preserves\naddition.",
@@ -568,6 +642,7 @@ def mk' (f : α → β) (hf : Monotone f) (map_mul : ∀ a b : α, f (a * b) = f
{ MonoidHom.mk' f map_mul with monotone' := hf }
#align order_monoid_hom.mk' OrderMonoidHom.mk'
#align order_add_monoid_hom.mk' OrderAddMonoidHom.mk'
+-/
end OrderedCommGroup
@@ -594,24 +669,32 @@ directly. -/
instance : CoeFun (α →*₀o β) fun _ => α → β :=
FunLike.hasCoeToFun
+#print OrderMonoidWithZeroHom.ext /-
-- Other lemmas should be accessed through the `fun_like` API
@[ext]
theorem ext (h : ∀ a, f a = g a) : f = g :=
FunLike.ext f g h
#align order_monoid_with_zero_hom.ext OrderMonoidWithZeroHom.ext
+-/
+#print OrderMonoidWithZeroHom.toFun_eq_coe /-
theorem toFun_eq_coe (f : α →*₀o β) : f.toFun = (f : α → β) :=
rfl
#align order_monoid_with_zero_hom.to_fun_eq_coe OrderMonoidWithZeroHom.toFun_eq_coe
+-/
+#print OrderMonoidWithZeroHom.coe_mk /-
@[simp]
theorem coe_mk (f : α →*₀ β) (h) : (OrderMonoidWithZeroHom.mk f h : α → β) = f :=
rfl
#align order_monoid_with_zero_hom.coe_mk OrderMonoidWithZeroHom.coe_mk
+-/
+#print OrderMonoidWithZeroHom.mk_coe /-
@[simp]
theorem mk_coe (f : α →*₀o β) (h) : OrderMonoidWithZeroHom.mk (f : α →*₀ β) h = f := by ext; rfl
#align order_monoid_with_zero_hom.mk_coe OrderMonoidWithZeroHom.mk_coe
+-/
#print OrderMonoidWithZeroHom.toOrderMonoidHom /-
/-- Reinterpret an ordered monoid with zero homomorphism as an order monoid homomorphism. -/
@@ -620,38 +703,52 @@ def toOrderMonoidHom (f : α →*₀o β) : α →*o β :=
#align order_monoid_with_zero_hom.to_order_monoid_hom OrderMonoidWithZeroHom.toOrderMonoidHom
-/
+#print OrderMonoidWithZeroHom.coe_monoidWithZeroHom /-
@[simp]
theorem coe_monoidWithZeroHom (f : α →*₀o β) : ⇑(f : α →*₀ β) = f :=
rfl
#align order_monoid_with_zero_hom.coe_monoid_with_zero_hom OrderMonoidWithZeroHom.coe_monoidWithZeroHom
+-/
+#print OrderMonoidWithZeroHom.coe_orderMonoidHom /-
@[simp]
theorem coe_orderMonoidHom (f : α →*₀o β) : ⇑(f : α →*o β) = f :=
rfl
#align order_monoid_with_zero_hom.coe_order_monoid_hom OrderMonoidWithZeroHom.coe_orderMonoidHom
+-/
+#print OrderMonoidWithZeroHom.toOrderMonoidHom_injective /-
theorem toOrderMonoidHom_injective : Injective (toOrderMonoidHom : _ → α →*o β) := fun f g h =>
ext <| by convert FunLike.ext_iff.1 h
#align order_monoid_with_zero_hom.to_order_monoid_hom_injective OrderMonoidWithZeroHom.toOrderMonoidHom_injective
+-/
+#print OrderMonoidWithZeroHom.toMonoidWithZeroHom_injective /-
theorem toMonoidWithZeroHom_injective : Injective (toMonoidWithZeroHom : _ → α →*₀ β) :=
fun f g h => ext <| by convert FunLike.ext_iff.1 h
#align order_monoid_with_zero_hom.to_monoid_with_zero_hom_injective OrderMonoidWithZeroHom.toMonoidWithZeroHom_injective
+-/
+#print OrderMonoidWithZeroHom.copy /-
/-- Copy of an `order_monoid_with_zero_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.toOrderMonoidHom.copy f' h, f.toMonoidWithZeroHom.copy f' h with toFun := f' }
#align order_monoid_with_zero_hom.copy OrderMonoidWithZeroHom.copy
+-/
+#print OrderMonoidWithZeroHom.coe_copy /-
@[simp]
theorem coe_copy (f : α →*₀o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
rfl
#align order_monoid_with_zero_hom.coe_copy OrderMonoidWithZeroHom.coe_copy
+-/
+#print OrderMonoidWithZeroHom.copy_eq /-
theorem copy_eq (f : α →*₀o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
FunLike.ext' h
#align order_monoid_with_zero_hom.copy_eq OrderMonoidWithZeroHom.copy_eq
+-/
variable (α)
@@ -662,10 +759,12 @@ protected def id : α →*₀o α :=
#align order_monoid_with_zero_hom.id OrderMonoidWithZeroHom.id
-/
+#print OrderMonoidWithZeroHom.coe_id /-
@[simp]
theorem coe_id : ⇑(OrderMonoidWithZeroHom.id α) = id :=
rfl
#align order_monoid_with_zero_hom.coe_id OrderMonoidWithZeroHom.coe_id
+-/
instance : Inhabited (α →*₀o α) :=
⟨OrderMonoidWithZeroHom.id α⟩
@@ -679,53 +778,71 @@ def comp (f : β →*₀o γ) (g : α →*₀o β) : α →*₀o γ :=
#align order_monoid_with_zero_hom.comp OrderMonoidWithZeroHom.comp
-/
+#print OrderMonoidWithZeroHom.coe_comp /-
@[simp]
theorem coe_comp (f : β →*₀o γ) (g : α →*₀o β) : (f.comp g : α → γ) = f ∘ g :=
rfl
#align order_monoid_with_zero_hom.coe_comp OrderMonoidWithZeroHom.coe_comp
+-/
+#print OrderMonoidWithZeroHom.comp_apply /-
@[simp]
theorem comp_apply (f : β →*₀o γ) (g : α →*₀o β) (a : α) : (f.comp g) a = f (g a) :=
rfl
#align order_monoid_with_zero_hom.comp_apply OrderMonoidWithZeroHom.comp_apply
+-/
+#print OrderMonoidWithZeroHom.coe_comp_monoidWithZeroHom /-
@[simp]
theorem coe_comp_monoidWithZeroHom (f : β →*₀o γ) (g : α →*₀o β) :
(f.comp g : α →*₀ γ) = (f : β →*₀ γ).comp g :=
rfl
#align order_monoid_with_zero_hom.coe_comp_monoid_with_zero_hom OrderMonoidWithZeroHom.coe_comp_monoidWithZeroHom
+-/
+#print OrderMonoidWithZeroHom.coe_comp_orderMonoidHom /-
@[simp]
theorem coe_comp_orderMonoidHom (f : β →*₀o γ) (g : α →*₀o β) :
(f.comp g : α →*o γ) = (f : β →*o γ).comp g :=
rfl
#align order_monoid_with_zero_hom.coe_comp_order_monoid_hom OrderMonoidWithZeroHom.coe_comp_orderMonoidHom
+-/
+#print OrderMonoidWithZeroHom.comp_assoc /-
@[simp]
theorem comp_assoc (f : γ →*₀o δ) (g : β →*₀o γ) (h : α →*₀o β) :
(f.comp g).comp h = f.comp (g.comp h) :=
rfl
#align order_monoid_with_zero_hom.comp_assoc OrderMonoidWithZeroHom.comp_assoc
+-/
+#print OrderMonoidWithZeroHom.comp_id /-
@[simp]
theorem comp_id (f : α →*₀o β) : f.comp (OrderMonoidWithZeroHom.id α) = f :=
ext fun a => rfl
#align order_monoid_with_zero_hom.comp_id OrderMonoidWithZeroHom.comp_id
+-/
+#print OrderMonoidWithZeroHom.id_comp /-
@[simp]
theorem id_comp (f : α →*₀o β) : (OrderMonoidWithZeroHom.id β).comp f = f :=
ext fun a => rfl
#align order_monoid_with_zero_hom.id_comp OrderMonoidWithZeroHom.id_comp
+-/
+#print OrderMonoidWithZeroHom.cancel_right /-
theorem cancel_right {g₁ g₂ : β →*₀o γ} {f : α →*₀o β} (hf : Function.Surjective f) :
g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
#align order_monoid_with_zero_hom.cancel_right OrderMonoidWithZeroHom.cancel_right
+-/
+#print OrderMonoidWithZeroHom.cancel_left /-
theorem cancel_left {g : β →*₀o γ} {f₁ f₂ : α →*₀o β} (hg : Function.Injective g) :
g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
⟨fun h => ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
#align order_monoid_with_zero_hom.cancel_left OrderMonoidWithZeroHom.cancel_left
+-/
end Preorder
@@ -739,23 +856,31 @@ sending `a` to `f a * g a`. -/
instance : Mul (α →*₀o β) :=
⟨fun f g => { (f * g : α →*₀ β) with monotone' := f.monotone'.mul' g.monotone' }⟩
+#print OrderMonoidWithZeroHom.coe_mul /-
@[simp]
theorem coe_mul (f g : α →*₀o β) : ⇑(f * g) = f * g :=
rfl
#align order_monoid_with_zero_hom.coe_mul OrderMonoidWithZeroHom.coe_mul
+-/
+#print OrderMonoidWithZeroHom.mul_apply /-
@[simp]
theorem mul_apply (f g : α →*₀o β) (a : α) : (f * g) a = f a * g a :=
rfl
#align order_monoid_with_zero_hom.mul_apply OrderMonoidWithZeroHom.mul_apply
+-/
+#print OrderMonoidWithZeroHom.mul_comp /-
theorem mul_comp (g₁ g₂ : β →*₀o γ) (f : α →*₀o β) : (g₁ * g₂).comp f = g₁.comp f * g₂.comp f :=
rfl
#align order_monoid_with_zero_hom.mul_comp OrderMonoidWithZeroHom.mul_comp
+-/
+#print OrderMonoidWithZeroHom.comp_mul /-
theorem comp_mul (g : β →*₀o γ) (f₁ f₂ : α →*₀o β) : g.comp (f₁ * f₂) = g.comp f₁ * g.comp f₂ :=
ext fun _ => map_mul g _ _
#align order_monoid_with_zero_hom.comp_mul OrderMonoidWithZeroHom.comp_mul
+-/
end Mul
@@ -763,16 +888,18 @@ section LinearOrderedCommMonoidWithZero
variable {hα : Preorder α} {hα' : MulZeroOneClass α} {hβ : Preorder β} {hβ' : MulZeroOneClass β}
-include hα hα' hβ hβ'
-
+#print OrderMonoidWithZeroHom.toMonoidWithZeroHom_eq_coe /-
@[simp]
theorem toMonoidWithZeroHom_eq_coe (f : α →*₀o β) : f.toMonoidWithZeroHom = f := by ext; rfl
#align order_monoid_with_zero_hom.to_monoid_with_zero_hom_eq_coe OrderMonoidWithZeroHom.toMonoidWithZeroHom_eq_coe
+-/
+#print OrderMonoidWithZeroHom.toOrderMonoidHom_eq_coe /-
@[simp]
theorem toOrderMonoidHom_eq_coe (f : α →*₀o β) : f.toOrderMonoidHom = f :=
rfl
#align order_monoid_with_zero_hom.to_order_monoid_hom_eq_coe OrderMonoidWithZeroHom.toOrderMonoidHom_eq_coe
+-/
end LinearOrderedCommMonoidWithZero
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -77,7 +77,7 @@ you should parametrize over `(F : Type*) [order_add_monoid_hom_class F α β] (f
When you extend this structure, make sure to extend `order_add_monoid_hom_class`. -/
structure OrderAddMonoidHom (α β : Type _) [Preorder α] [Preorder β] [AddZeroClass α]
- [AddZeroClass β] extends α →+ β where
+ [AddZeroClass β] extends α →+ β where
monotone' : Monotone to_fun
#align order_add_monoid_hom OrderAddMonoidHom
-/
@@ -92,7 +92,7 @@ section
You should also extend this typeclass when you extend `order_add_monoid_hom`. -/
class OrderAddMonoidHomClass (F : Type _) (α β : outParam <| Type _) [Preorder α] [Preorder β]
- [AddZeroClass α] [AddZeroClass β] extends AddMonoidHomClass F α β where
+ [AddZeroClass α] [AddZeroClass β] extends AddMonoidHomClass F α β where
Monotone (f : F) : Monotone f
#align order_add_monoid_hom_class OrderAddMonoidHomClass
-/
@@ -117,7 +117,7 @@ you should parametrize over `(F : Type*) [order_monoid_hom_class F α β] (f : F
When you extend this structure, make sure to extend `order_monoid_hom_class`. -/
@[to_additive]
structure OrderMonoidHom (α β : Type _) [Preorder α] [Preorder β] [MulOneClass α]
- [MulOneClass β] extends α →* β where
+ [MulOneClass β] extends α →* β where
monotone' : Monotone to_fun
#align order_monoid_hom OrderMonoidHom
#align order_add_monoid_hom OrderAddMonoidHom
@@ -134,7 +134,7 @@ section
You should also extend this typeclass when you extend `order_monoid_hom`. -/
@[to_additive]
class OrderMonoidHomClass (F : Type _) (α β : outParam <| Type _) [Preorder α] [Preorder β]
- [MulOneClass α] [MulOneClass β] extends MonoidHomClass F α β where
+ [MulOneClass α] [MulOneClass β] extends MonoidHomClass F α β where
Monotone (f : F) : Monotone f
#align order_monoid_hom_class OrderMonoidHomClass
#align order_add_monoid_hom_class OrderAddMonoidHomClass
@@ -177,7 +177,7 @@ you should parametrize over `(F : Type*) [order_monoid_with_zero_hom_class F α
When you extend this structure, make sure to extend `order_monoid_with_zero_hom_class`. -/
structure OrderMonoidWithZeroHom (α β : Type _) [Preorder α] [Preorder β] [MulZeroOneClass α]
- [MulZeroOneClass β] extends α →*₀ β where
+ [MulZeroOneClass β] extends α →*₀ β where
monotone' : Monotone to_fun
#align order_monoid_with_zero_hom OrderMonoidWithZeroHom
-/
@@ -193,7 +193,7 @@ ordered monoid with zero homomorphisms.
You should also extend this typeclass when you extend `order_monoid_with_zero_hom`. -/
class OrderMonoidWithZeroHomClass (F : Type _) (α β : outParam <| Type _) [Preorder α] [Preorder β]
- [MulZeroOneClass α] [MulZeroOneClass β] extends MonoidWithZeroHomClass F α β where
+ [MulZeroOneClass α] [MulZeroOneClass β] extends MonoidWithZeroHomClass F α β where
Monotone (f : F) : Monotone f
#align order_monoid_with_zero_hom_class OrderMonoidWithZeroHomClass
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -142,6 +142,7 @@ class OrderMonoidHomClass (F : Type _) (α β : outParam <| Type _) [Preorder α
end
+#print OrderMonoidHomClass.toOrderHomClass /-
-- See note [lower instance priority]
@[to_additive]
instance (priority := 100) OrderMonoidHomClass.toOrderHomClass [OrderMonoidHomClass F α β] :
@@ -149,6 +150,7 @@ instance (priority := 100) OrderMonoidHomClass.toOrderHomClass [OrderMonoidHomCl
{ ‹OrderMonoidHomClass F α β› with map_rel := OrderMonoidHomClass.monotone }
#align order_monoid_hom_class.to_order_hom_class OrderMonoidHomClass.toOrderHomClass
#align order_add_monoid_hom_class.to_order_hom_class OrderAddMonoidHomClass.toOrderHomClass
+-/
@[to_additive]
instance [OrderMonoidHomClass F α β] : CoeTC F (α →*o β) :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -142,12 +142,6 @@ class OrderMonoidHomClass (F : Type _) (α β : outParam <| Type _) [Preorder α
end
-/- warning: order_monoid_hom_class.to_order_hom_class -> OrderMonoidHomClass.toOrderHomClass is a dubious translation:
-lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : MulOneClass.{u2} α] [_inst_4 : MulOneClass.{u3} β] [_inst_5 : OrderMonoidHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4], OrderHomClass.{u1, u2, u3} F α β (Preorder.toHasLe.{u2} α _inst_1) (Preorder.toHasLe.{u3} β _inst_2)
-but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} {_inst_1 : Preorder.{u2} α} {_inst_2 : Preorder.{u3} β} {_inst_3 : MulOneClass.{u2} α} {_inst_4 : MulOneClass.{u3} β} [_inst_5 : OrderMonoidHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4], OrderHomClass.{u1, u2, u3} F α β (Preorder.toLE.{u2} α _inst_1) (Preorder.toLE.{u3} β _inst_2)
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom_class.to_order_hom_class OrderMonoidHomClass.toOrderHomClassₓ'. -/
-- See note [lower instance priority]
@[to_additive]
instance (priority := 100) OrderMonoidHomClass.toOrderHomClass [OrderMonoidHomClass F α β] :
@@ -229,21 +223,9 @@ variable [OrderedAddCommMonoid α] [OrderedAddCommMonoid β] [OrderAddMonoidHomC
include β
-/- warning: map_nonneg -> map_nonneg is a dubious translation:
-lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) {a : α}, (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) a) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (RelHomClass.toFunLike.{u1, u2, u3} F α β (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)))) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a))
-but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) {a : α}, (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (AddMonoid.toZero.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{u1, u3, u2} F α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (_x : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) _x x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a))
-Case conversion may be inaccurate. Consider using '#align map_nonneg map_nonnegₓ'. -/
theorem map_nonneg (ha : 0 ≤ a) : 0 ≤ f a := by rw [← map_zero f]; exact OrderHomClass.mono _ ha
#align map_nonneg map_nonneg
-/- warning: map_nonpos -> map_nonpos is a dubious translation:
-lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) {a : α}, (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))))) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (RelHomClass.toFunLike.{u1, u2, u3} F α β (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)))) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))))
-but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) {a : α}, (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (AddMonoid.toZero.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1)))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{u1, u3, u2} F α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (_x : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) _x x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))))))
-Case conversion may be inaccurate. Consider using '#align map_nonpos map_nonposₓ'. -/
theorem map_nonpos (ha : a ≤ 0) : f a ≤ 0 := by rw [← map_zero f]; exact OrderHomClass.mono _ ha
#align map_nonpos map_nonpos
@@ -253,86 +235,38 @@ section OrderedAddCommGroup
variable [OrderedAddCommGroup α] [OrderedAddCommMonoid β] [AddMonoidHomClass F α β] (f : F)
-/- warning: monotone_iff_map_nonneg -> monotone_iff_map_nonneg is a dubious translation:
-lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Monotone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
-but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Monotone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
-Case conversion may be inaccurate. Consider using '#align monotone_iff_map_nonneg monotone_iff_map_nonnegₓ'. -/
theorem monotone_iff_map_nonneg : Monotone (f : α → β) ↔ ∀ a, 0 ≤ a → 0 ≤ f a :=
⟨fun h a => by rw [← map_zero f]; apply h, fun h a b hl => by
rw [← sub_add_cancel b a, map_add f]; exact le_add_of_nonneg_left (h _ <| sub_nonneg.2 hl)⟩
#align monotone_iff_map_nonneg monotone_iff_map_nonneg
-/- warning: antitone_iff_map_nonpos -> antitone_iff_map_nonpos is a dubious translation:
-lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Antitone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
-but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Antitone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
-Case conversion may be inaccurate. Consider using '#align antitone_iff_map_nonpos antitone_iff_map_nonposₓ'. -/
theorem antitone_iff_map_nonpos : Antitone (f : α → β) ↔ ∀ a, 0 ≤ a → f a ≤ 0 :=
monotone_toDual_comp_iff.symm.trans <| monotone_iff_map_nonneg _
#align antitone_iff_map_nonpos antitone_iff_map_nonpos
-/- warning: monotone_iff_map_nonpos -> monotone_iff_map_nonpos is a dubious translation:
-lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Monotone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
-but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Monotone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
-Case conversion may be inaccurate. Consider using '#align monotone_iff_map_nonpos monotone_iff_map_nonposₓ'. -/
theorem monotone_iff_map_nonpos : Monotone (f : α → β) ↔ ∀ a ≤ 0, f a ≤ 0 :=
antitone_comp_ofDual_iff.symm.trans <| antitone_iff_map_nonpos _
#align monotone_iff_map_nonpos monotone_iff_map_nonpos
-/- warning: antitone_iff_map_nonneg -> antitone_iff_map_nonneg is a dubious translation:
-lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Antitone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
-but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Antitone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
-Case conversion may be inaccurate. Consider using '#align antitone_iff_map_nonneg antitone_iff_map_nonnegₓ'. -/
theorem antitone_iff_map_nonneg : Antitone (f : α → β) ↔ ∀ a ≤ 0, 0 ≤ f a :=
monotone_comp_ofDual_iff.symm.trans <| monotone_iff_map_nonneg _
#align antitone_iff_map_nonneg antitone_iff_map_nonneg
variable [CovariantClass β β (· + ·) (· < ·)]
-/- warning: strict_mono_iff_map_pos -> strictMono_iff_map_pos is a dubious translation:
-lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictMono.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
-but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3046 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3048 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3046 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3048) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3061 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3063 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3061 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3063)], Iff (StrictMono.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
-Case conversion may be inaccurate. Consider using '#align strict_mono_iff_map_pos strictMono_iff_map_posₓ'. -/
theorem strictMono_iff_map_pos : StrictMono (f : α → β) ↔ ∀ a, 0 < a → 0 < f a :=
⟨fun h a => by rw [← map_zero f]; apply h, fun h a b hl => by
rw [← sub_add_cancel b a, map_add f]; exact lt_add_of_pos_left _ (h _ <| sub_pos.2 hl)⟩
#align strict_mono_iff_map_pos strictMono_iff_map_pos
-/- warning: strict_anti_iff_map_neg -> strictAnti_iff_map_neg is a dubious translation:
-lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictAnti.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
-but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3223 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3225 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3223 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3225) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3238 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3240 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3238 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3240)], Iff (StrictAnti.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
-Case conversion may be inaccurate. Consider using '#align strict_anti_iff_map_neg strictAnti_iff_map_negₓ'. -/
theorem strictAnti_iff_map_neg : StrictAnti (f : α → β) ↔ ∀ a, 0 < a → f a < 0 :=
strictMono_toDual_comp_iff.symm.trans <| strictMono_iff_map_pos _
#align strict_anti_iff_map_neg strictAnti_iff_map_neg
-/- warning: strict_mono_iff_map_neg -> strictMono_iff_map_neg is a dubious translation:
-lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictMono.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
-but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3308 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3310 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3308 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3310) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3323 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3325 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3323 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3325)], Iff (StrictMono.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
-Case conversion may be inaccurate. Consider using '#align strict_mono_iff_map_neg strictMono_iff_map_negₓ'. -/
theorem strictMono_iff_map_neg : StrictMono (f : α → β) ↔ ∀ a < 0, f a < 0 :=
strictAnti_comp_ofDual_iff.symm.trans <| strictAnti_iff_map_neg _
#align strict_mono_iff_map_neg strictMono_iff_map_neg
-/- warning: strict_anti_iff_map_pos -> strictAnti_iff_map_pos is a dubious translation:
-lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictAnti.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
-but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3399 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3401 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3399 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3401) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3414 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3416 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3414 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3416)], Iff (StrictAnti.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
-Case conversion may be inaccurate. Consider using '#align strict_anti_iff_map_pos strictAnti_iff_map_posₓ'. -/
theorem strictAnti_iff_map_pos : StrictAnti (f : α → β) ↔ ∀ a < 0, 0 < f a :=
strictMono_comp_ofDual_iff.symm.trans <| strictMono_iff_map_pos _
#align strict_anti_iff_map_pos strictAnti_iff_map_pos
@@ -362,12 +296,6 @@ directly. -/
instance : CoeFun (α →*o β) fun _ => α → β :=
FunLike.hasCoeToFun
-/- warning: order_monoid_hom.ext -> OrderMonoidHom.ext is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] {f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {g : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f g)
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] {f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {g : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (forall (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{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} (OrderMonoidHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) f a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{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} (OrderMonoidHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f g)
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.ext OrderMonoidHom.extₓ'. -/
-- Other lemmas should be accessed through the `fun_like` API
@[ext, to_additive]
theorem ext (h : ∀ a, f a = g a) : f = g :=
@@ -375,33 +303,18 @@ theorem ext (h : ∀ a, f a = g a) : f = g :=
#align order_monoid_hom.ext OrderMonoidHom.ext
#align order_add_monoid_hom.ext OrderAddMonoidHom.ext
-/- warning: order_monoid_hom.to_fun_eq_coe -> OrderMonoidHom.toFun_eq_coe is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (MonoidHom.toFun.{u1, u2} α β _inst_5 _inst_6 (OrderMonoidHom.toMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α _inst_5) (MulOneClass.toOne.{u1} β _inst_6) (MonoidHom.toOneHom.{u2, u1} α β _inst_5 _inst_6 (OrderMonoidHom.toMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.to_fun_eq_coe OrderMonoidHom.toFun_eq_coeₓ'. -/
@[to_additive]
theorem toFun_eq_coe (f : α →*o β) : f.toFun = (f : α → β) :=
rfl
#align order_monoid_hom.to_fun_eq_coe OrderMonoidHom.toFun_eq_coe
#align order_add_monoid_hom.to_fun_eq_coe OrderAddMonoidHom.toFun_eq_coe
-/- warning: order_monoid_hom.coe_mk -> OrderMonoidHom.coe_mk is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : MonoidHom.{u1, u2} α β _inst_5 _inst_6) (h : Monotone.{u1, u2} α β _inst_1 _inst_2 (MonoidHom.toFun.{u1, u2} α β _inst_5 _inst_6 f)), Eq.{max (succ u1) (succ u2)} ((fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) f)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : MonoidHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α _inst_5) (MulOneClass.toOne.{u1} β _inst_6) (MonoidHom.toOneHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OrderMonoidHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) f)
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_mk OrderMonoidHom.coe_mkₓ'. -/
@[simp, to_additive]
theorem coe_mk (f : α →* β) (h) : (OrderMonoidHom.mk f h : α → β) = f :=
rfl
#align order_monoid_hom.coe_mk OrderMonoidHom.coe_mk
#align order_add_monoid_hom.coe_mk OrderAddMonoidHom.coe_mk
-/- warning: order_monoid_hom.mk_coe -> OrderMonoidHom.mk_coe is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.mk_coe OrderMonoidHom.mk_coeₓ'. -/
@[simp, to_additive]
theorem mk_coe (f : α →*o β) (h) : OrderMonoidHom.mk (f : α →* β) h = f := by ext; rfl
#align order_monoid_hom.mk_coe OrderMonoidHom.mk_coe
@@ -416,60 +329,30 @@ def toOrderHom (f : α →*o β) : α →o β :=
#align order_add_monoid_hom.to_order_hom OrderAddMonoidHom.toOrderHom
-/
-/- warning: order_monoid_hom.coe_monoid_hom -> OrderMonoidHom.coe_monoidHom is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} ((fun (_x : MonoidHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (MonoidHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (MonoidHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) (MonoidHomClass.toMonoidHom.{u2, u1, max u2 u1} α β (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_monoid_hom OrderMonoidHom.coe_monoidHomₓ'. -/
@[simp, to_additive]
theorem coe_monoidHom (f : α →*o β) : ((f : α →* β) : α → β) = f :=
rfl
#align order_monoid_hom.coe_monoid_hom OrderMonoidHom.coe_monoidHom
#align order_add_monoid_hom.coe_add_monoid_hom OrderAddMonoidHom.coe_addMonoidHom
-/- warning: order_monoid_hom.coe_order_hom -> OrderMonoidHom.coe_orderHom is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} ((fun (_x : OrderHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) ((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) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (OrderHomClass.OrderHom.hasCoeT.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : OrderHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (OrderHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) ((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) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (OrderHomClass.OrderHom.hasCoeT.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (OrderHom.toFun.{u2, u1} α β _inst_1 _inst_2 (OrderHomClass.toOrderHom.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_order_hom OrderMonoidHom.coe_orderHomₓ'. -/
@[simp, to_additive]
theorem coe_orderHom (f : α →*o β) : ((f : α →o β) : α → β) = f :=
rfl
#align order_monoid_hom.coe_order_hom OrderMonoidHom.coe_orderHom
#align order_add_monoid_hom.coe_order_hom OrderAddMonoidHom.coe_orderHom
-/- warning: order_monoid_hom.to_monoid_hom_injective -> OrderMonoidHom.toMonoidHom_injective is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β], Function.Injective.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (OrderMonoidHom.toMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β], Function.Injective.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u2, u1} α β _inst_5 _inst_6) (OrderMonoidHom.toMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.to_monoid_hom_injective OrderMonoidHom.toMonoidHom_injectiveₓ'. -/
@[to_additive]
theorem toMonoidHom_injective : Injective (toMonoidHom : _ → α →* β) := fun f g h =>
ext <| by convert FunLike.ext_iff.1 h
#align order_monoid_hom.to_monoid_hom_injective OrderMonoidHom.toMonoidHom_injective
#align order_add_monoid_hom.to_add_monoid_hom_injective OrderAddMonoidHom.toAddMonoidHom_injective
-/- warning: order_monoid_hom.to_order_hom_injective -> OrderMonoidHom.toOrderHom_injective is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β], Function.Injective.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (OrderMonoidHom.toOrderHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β], Function.Injective.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u2, u1} α β _inst_1 _inst_2) (OrderMonoidHom.toOrderHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.to_order_hom_injective OrderMonoidHom.toOrderHom_injectiveₓ'. -/
@[to_additive]
theorem toOrderHom_injective : Injective (toOrderHom : _ → α →o β) := fun f g h =>
ext <| by convert FunLike.ext_iff.1 h
#align order_monoid_hom.to_order_hom_injective OrderMonoidHom.toOrderHom_injective
#align order_add_monoid_hom.to_order_hom_injective OrderAddMonoidHom.toOrderHom_injective
-/- warning: order_monoid_hom.copy -> OrderMonoidHom.copy is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)) -> (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{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} (OrderMonoidHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)) -> (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.copy OrderMonoidHom.copyₓ'. -/
/-- Copy of an `order_monoid_hom` with a new `to_fun` equal to the old one. Useful to fix
definitional equalities. -/
@[to_additive
@@ -481,24 +364,12 @@ protected def copy (f : α →*o β) (f' : α → β) (h : f' = f) : α →*o β
#align order_monoid_hom.copy OrderMonoidHom.copy
#align order_add_monoid_hom.copy OrderAddMonoidHom.copy
-/- warning: order_monoid_hom.coe_copy -> OrderMonoidHom.coe_copy is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h)) f'
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) 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} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OrderMonoidHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h)) f'
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_copy OrderMonoidHom.coe_copyₓ'. -/
@[simp, to_additive]
theorem coe_copy (f : α →*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
rfl
#align order_monoid_hom.coe_copy OrderMonoidHom.coe_copy
#align order_add_monoid_hom.coe_copy OrderAddMonoidHom.coe_copy
-/- warning: order_monoid_hom.copy_eq -> OrderMonoidHom.copy_eq is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)), Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h) f
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)), Eq.{max (succ u2) (succ u1)} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h) f
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.copy_eq OrderMonoidHom.copy_eqₓ'. -/
@[to_additive]
theorem copy_eq (f : α →*o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
FunLike.ext' h
@@ -516,12 +387,6 @@ protected def id : α →*o α :=
#align order_add_monoid_hom.id OrderAddMonoidHom.id
-/
-/- warning: order_monoid_hom.coe_id -> OrderMonoidHom.coe_id is a dubious translation:
-lean 3 declaration is
- forall (α : Type.{u1}) [_inst_1 : Preorder.{u1} α] [_inst_5 : MulOneClass.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (OrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) (fun (_x : OrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) => α -> α) (OrderMonoidHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) (OrderMonoidHom.id.{u1} α _inst_1 _inst_5)) (id.{succ u1} α)
-but is expected to have type
- forall (α : Type.{u1}) [_inst_1 : Preorder.{u1} α] [_inst_5 : MulOneClass.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_1) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α _inst_1 _inst_1 _inst_5 _inst_5 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5))) (OrderMonoidHom.id.{u1} α _inst_1 _inst_5)) (id.{succ u1} α)
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_id OrderMonoidHom.coe_idₓ'. -/
@[simp, to_additive]
theorem coe_id : ⇑(OrderMonoidHom.id α) = id :=
rfl
@@ -543,27 +408,18 @@ def comp (f : β →*o γ) (g : α →*o β) : α →*o γ :=
#align order_add_monoid_hom.comp OrderAddMonoidHom.comp
-/
-/- warning: order_monoid_hom.coe_comp -> OrderMonoidHom.coe_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_comp OrderMonoidHom.coe_compₓ'. -/
@[simp, to_additive]
theorem coe_comp (f : β →*o γ) (g : α →*o β) : (f.comp g : α → γ) = f ∘ g :=
rfl
#align order_monoid_hom.coe_comp OrderMonoidHom.coe_comp
#align order_add_monoid_hom.coe_comp OrderAddMonoidHom.coe_comp
-/- warning: order_monoid_hom.comp_apply -> OrderMonoidHom.comp_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.comp_apply OrderMonoidHom.comp_applyₓ'. -/
@[simp, to_additive]
theorem comp_apply (f : β →*o γ) (g : α →*o β) (a : α) : (f.comp g) a = f (g a) :=
rfl
#align order_monoid_hom.comp_apply OrderMonoidHom.comp_apply
#align order_add_monoid_hom.comp_apply OrderAddMonoidHom.comp_apply
-/- warning: order_monoid_hom.coe_comp_monoid_hom -> OrderMonoidHom.coe_comp_monoidHom is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_comp_monoid_hom OrderMonoidHom.coe_comp_monoidHomₓ'. -/
@[simp, to_additive]
theorem coe_comp_monoidHom (f : β →*o γ) (g : α →*o β) :
(f.comp g : α →* γ) = (f : β →* γ).comp g :=
@@ -571,21 +427,12 @@ theorem coe_comp_monoidHom (f : β →*o γ) (g : α →*o β) :
#align order_monoid_hom.coe_comp_monoid_hom OrderMonoidHom.coe_comp_monoidHom
#align order_add_monoid_hom.coe_comp_add_monoid_hom OrderAddMonoidHom.coe_comp_addMonoidHom
-/- warning: order_monoid_hom.coe_comp_order_hom -> OrderMonoidHom.coe_comp_orderHom is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_comp_order_hom OrderMonoidHom.coe_comp_orderHomₓ'. -/
@[simp, to_additive]
theorem coe_comp_orderHom (f : β →*o γ) (g : α →*o β) : (f.comp g : α →o γ) = (f : β →o γ).comp g :=
rfl
#align order_monoid_hom.coe_comp_order_hom OrderMonoidHom.coe_comp_orderHom
#align order_add_monoid_hom.coe_comp_order_hom OrderAddMonoidHom.coe_comp_orderHom
-/- warning: order_monoid_hom.comp_assoc -> OrderMonoidHom.comp_assoc is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} {δ : Type.{u4}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_4 : Preorder.{u4} δ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u3} γ] [_inst_8 : MulOneClass.{u4} δ] (f : OrderMonoidHom.{u3, u4} γ δ _inst_3 _inst_4 _inst_7 _inst_8) (g : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (h : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u4)} (OrderMonoidHom.{u1, u4} α δ _inst_1 _inst_4 _inst_5 _inst_8) (OrderMonoidHom.comp.{u1, u2, u4} α β δ _inst_1 _inst_2 _inst_4 _inst_5 _inst_6 _inst_8 (OrderMonoidHom.comp.{u2, u3, u4} β γ δ _inst_2 _inst_3 _inst_4 _inst_6 _inst_7 _inst_8 f g) h) (OrderMonoidHom.comp.{u1, u3, u4} α γ δ _inst_1 _inst_3 _inst_4 _inst_5 _inst_7 _inst_8 f (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g h))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u4}} {δ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u4} γ] [_inst_4 : Preorder.{u3} δ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u4} γ] [_inst_8 : MulOneClass.{u3} δ] (f : OrderMonoidHom.{u4, u3} γ δ _inst_3 _inst_4 _inst_7 _inst_8) (g : OrderMonoidHom.{u2, u4} β γ _inst_2 _inst_3 _inst_6 _inst_7) (h : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α δ _inst_1 _inst_4 _inst_5 _inst_8) (OrderMonoidHom.comp.{u1, u2, u3} α β δ _inst_1 _inst_2 _inst_4 _inst_5 _inst_6 _inst_8 (OrderMonoidHom.comp.{u2, u4, u3} β γ δ _inst_2 _inst_3 _inst_4 _inst_6 _inst_7 _inst_8 f g) h) (OrderMonoidHom.comp.{u1, u4, u3} α γ δ _inst_1 _inst_3 _inst_4 _inst_5 _inst_7 _inst_8 f (OrderMonoidHom.comp.{u1, u2, u4} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g h))
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.comp_assoc OrderMonoidHom.comp_assocₓ'. -/
@[simp, to_additive]
theorem comp_assoc (f : γ →*o δ) (g : β →*o γ) (h : α →*o β) :
(f.comp g).comp h = f.comp (g.comp h) :=
@@ -593,33 +440,18 @@ theorem comp_assoc (f : γ →*o δ) (g : β →*o γ) (h : α →*o β) :
#align order_monoid_hom.comp_assoc OrderMonoidHom.comp_assoc
#align order_add_monoid_hom.comp_assoc OrderAddMonoidHom.comp_assoc
-/- warning: order_monoid_hom.comp_id -> OrderMonoidHom.comp_id is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.comp.{u1, u1, u2} α α β _inst_1 _inst_1 _inst_2 _inst_5 _inst_5 _inst_6 f (OrderMonoidHom.id.{u1} α _inst_1 _inst_5)) f
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.comp.{u2, u2, u1} α α β _inst_1 _inst_1 _inst_2 _inst_5 _inst_5 _inst_6 f (OrderMonoidHom.id.{u2} α _inst_1 _inst_5)) f
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.comp_id OrderMonoidHom.comp_idₓ'. -/
@[simp, to_additive]
theorem comp_id (f : α →*o β) : f.comp (OrderMonoidHom.id α) = f :=
ext fun a => rfl
#align order_monoid_hom.comp_id OrderMonoidHom.comp_id
#align order_add_monoid_hom.comp_id OrderAddMonoidHom.comp_id
-/- warning: order_monoid_hom.id_comp -> OrderMonoidHom.id_comp is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.comp.{u1, u2, u2} α β β _inst_1 _inst_2 _inst_2 _inst_5 _inst_6 _inst_6 (OrderMonoidHom.id.{u2} β _inst_2 _inst_6) f) f
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.comp.{u2, u1, u1} α β β _inst_1 _inst_2 _inst_2 _inst_5 _inst_6 _inst_6 (OrderMonoidHom.id.{u1} β _inst_2 _inst_6) f) f
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.id_comp OrderMonoidHom.id_compₓ'. -/
@[simp, to_additive]
theorem id_comp (f : α →*o β) : (OrderMonoidHom.id β).comp f = f :=
ext fun a => rfl
#align order_monoid_hom.id_comp OrderMonoidHom.id_comp
#align order_add_monoid_hom.id_comp OrderAddMonoidHom.id_comp
-/- warning: order_monoid_hom.cancel_right -> OrderMonoidHom.cancel_right is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.cancel_right OrderMonoidHom.cancel_rightₓ'. -/
@[to_additive]
theorem cancel_right {g₁ g₂ : β →*o γ} {f : α →*o β} (hf : Function.Surjective f) :
g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
@@ -627,9 +459,6 @@ theorem cancel_right {g₁ g₂ : β →*o γ} {f : α →*o β} (hf : Function.
#align order_monoid_hom.cancel_right OrderMonoidHom.cancel_right
#align order_add_monoid_hom.cancel_right OrderAddMonoidHom.cancel_right
-/- warning: order_monoid_hom.cancel_left -> OrderMonoidHom.cancel_left is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.cancel_left OrderMonoidHom.cancel_leftₓ'. -/
@[to_additive]
theorem cancel_left {g : β →*o γ} {f₁ f₂ : α →*o β} (hg : Function.Injective g) :
g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
@@ -642,48 +471,24 @@ theorem cancel_left {g : β →*o γ} {f₁ f₂ : α →*o β} (hg : Function.I
instance : One (α →*o β) :=
⟨{ (1 : α →* β) with monotone' := monotone_const }⟩
-/- warning: order_monoid_hom.coe_one -> OrderMonoidHom.coe_one is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β], Eq.{succ (max u1 u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), succ (max u1 u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OfNat.ofNat.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (OfNat.mk.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (One.one.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.hasOne.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) (OfNat.ofNat.{max u1 u2} (α -> β) 1 (OfNat.mk.{max u1 u2} (α -> β) 1 (One.one.{max u1 u2} (α -> β) (Pi.instOne.{u1, u2} α (fun (ᾰ : α) => β) (fun (i : α) => MulOneClass.toHasOne.{u2} β _inst_6)))))
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β], 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} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OfNat.ofNat.{max u2 u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (One.toOfNat1.{max u2 u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.instOneOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) (OfNat.ofNat.{max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) 1 (One.toOfNat1.{max u2 u1} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (Pi.instOne.{u2, u1} α (fun (a : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (fun (i : α) => MulOneClass.toOne.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) _inst_6))))
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_one OrderMonoidHom.coe_oneₓ'. -/
@[simp, to_additive]
theorem coe_one : ⇑(1 : α →*o β) = 1 :=
rfl
#align order_monoid_hom.coe_one OrderMonoidHom.coe_one
#align order_add_monoid_hom.coe_zero OrderAddMonoidHom.coe_zero
-/- warning: order_monoid_hom.one_apply -> OrderMonoidHom.one_apply is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OfNat.ofNat.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (OfNat.mk.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (One.one.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.hasOne.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)))) a) (OfNat.ofNat.{u2} β 1 (OfNat.mk.{u2} β 1 (One.one.{u2} β (MulOneClass.toHasOne.{u2} β _inst_6))))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{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} (OrderMonoidHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OfNat.ofNat.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (One.toOfNat1.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.instOneOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (MulOneClass.toOne.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_6)))
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.one_apply OrderMonoidHom.one_applyₓ'. -/
@[simp, to_additive]
theorem one_apply (a : α) : (1 : α →*o β) a = 1 :=
rfl
#align order_monoid_hom.one_apply OrderMonoidHom.one_apply
#align order_add_monoid_hom.zero_apply OrderAddMonoidHom.zero_apply
-/- warning: order_monoid_hom.one_comp -> OrderMonoidHom.one_comp is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u3} γ] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 (OfNat.ofNat.{max u2 u3} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) 1 (OfNat.mk.{max u2 u3} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) 1 (One.one.{max u2 u3} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (OrderMonoidHom.hasOne.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7)))) f) (OfNat.ofNat.{max u1 u3} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) 1 (OfNat.mk.{max u1 u3} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) 1 (One.one.{max u1 u3} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.hasOne.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7))))
-but is expected to have type
- forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : Preorder.{u3} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u1} γ] [_inst_5 : MulOneClass.{u3} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u1} γ] (f : OrderMonoidHom.{u3, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u3) (succ u1)} (OrderMonoidHom.{u3, u1} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 (OfNat.ofNat.{max u2 u1} (OrderMonoidHom.{u2, u1} β γ _inst_2 _inst_3 _inst_6 _inst_7) 1 (One.toOfNat1.{max u2 u1} (OrderMonoidHom.{u2, u1} β γ _inst_2 _inst_3 _inst_6 _inst_7) (OrderMonoidHom.instOneOrderMonoidHom.{u2, u1} β γ _inst_2 _inst_3 _inst_6 _inst_7))) f) (OfNat.ofNat.{max u3 u1} (OrderMonoidHom.{u3, u1} α γ _inst_1 _inst_3 _inst_5 _inst_7) 1 (One.toOfNat1.{max u3 u1} (OrderMonoidHom.{u3, u1} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.instOneOrderMonoidHom.{u3, u1} α γ _inst_1 _inst_3 _inst_5 _inst_7)))
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.one_comp OrderMonoidHom.one_compₓ'. -/
@[simp, to_additive]
theorem one_comp (f : α →*o β) : (1 : β →*o γ).comp f = 1 :=
rfl
#align order_monoid_hom.one_comp OrderMonoidHom.one_comp
#align order_add_monoid_hom.zero_comp OrderAddMonoidHom.zero_comp
-/- warning: order_monoid_hom.comp_one -> OrderMonoidHom.comp_one is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u3} γ] (f : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7), Eq.{max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f (OfNat.ofNat.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (OfNat.mk.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (One.one.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.hasOne.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) (OfNat.ofNat.{max u1 u3} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) 1 (OfNat.mk.{max u1 u3} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) 1 (One.one.{max u1 u3} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.hasOne.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7))))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] (f : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7), Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f (OfNat.ofNat.{max u1 u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (One.toOfNat1.{max u1 u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.instOneOrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)))) (OfNat.ofNat.{max u1 u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) 1 (One.toOfNat1.{max u1 u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.instOneOrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7)))
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.comp_one OrderMonoidHom.comp_oneₓ'. -/
@[simp, to_additive]
theorem comp_one (f : β →*o γ) : f.comp (1 : α →*o β) = 1 := by ext; exact map_one f
#align order_monoid_hom.comp_one OrderMonoidHom.comp_one
@@ -702,36 +507,24 @@ sending `a` to `f a * g a`. -/
instance : Mul (α →*o β) :=
⟨fun f g => { (f * g : α →* β) with monotone' := f.monotone'.mul' g.monotone' }⟩
-/- warning: order_monoid_hom.coe_mul -> OrderMonoidHom.coe_mul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_mul OrderMonoidHom.coe_mulₓ'. -/
@[simp, to_additive]
theorem coe_mul (f g : α →*o β) : ⇑(f * g) = f * g :=
rfl
#align order_monoid_hom.coe_mul OrderMonoidHom.coe_mul
#align order_add_monoid_hom.coe_add OrderAddMonoidHom.coe_add
-/- warning: order_monoid_hom.mul_apply -> OrderMonoidHom.mul_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.mul_apply OrderMonoidHom.mul_applyₓ'. -/
@[simp, to_additive]
theorem mul_apply (f g : α →*o β) (a : α) : (f * g) a = f a * g a :=
rfl
#align order_monoid_hom.mul_apply OrderMonoidHom.mul_apply
#align order_add_monoid_hom.add_apply OrderAddMonoidHom.add_apply
-/- warning: order_monoid_hom.mul_comp -> OrderMonoidHom.mul_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.mul_comp OrderMonoidHom.mul_compₓ'. -/
@[to_additive]
theorem mul_comp (g₁ g₂ : β →*o γ) (f : α →*o β) : (g₁ * g₂).comp f = g₁.comp f * g₂.comp f :=
rfl
#align order_monoid_hom.mul_comp OrderMonoidHom.mul_comp
#align order_add_monoid_hom.add_comp OrderAddMonoidHom.add_comp
-/- warning: order_monoid_hom.comp_mul -> OrderMonoidHom.comp_mul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.comp_mul OrderMonoidHom.comp_mulₓ'. -/
@[to_additive]
theorem comp_mul (g : β →*o γ) (f₁ f₂ : α →*o β) : g.comp (f₁ * f₂) = g.comp f₁ * g.comp f₂ := by
ext; exact map_mul g _ _
@@ -746,23 +539,11 @@ variable {hα : OrderedCommMonoid α} {hβ : OrderedCommMonoid β}
include hα hβ
-/- warning: order_monoid_hom.to_monoid_hom_eq_coe -> OrderMonoidHom.toMonoidHom_eq_coe is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {hα : OrderedCommMonoid.{u1} α} {hβ : OrderedCommMonoid.{u2} β} (f : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))), Eq.{max (succ u2) (succ u1)} (MonoidHom.{u1, u2} α β (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) (OrderMonoidHom.toMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ))) f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) (MonoidHom.{u1, u2} α β (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) (MonoidHom.{u1, u2} α β (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) (MonoidHom.{u1, u2} α β (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) (MonoidHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ))) (OrderMonoidHomClass.toMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ))) (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))))))) f)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} {hα : OrderedCommMonoid.{u2} α} {hβ : OrderedCommMonoid.{u1} β} (f : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ)))), Eq.{max (succ u2) (succ u1)} (MonoidHom.{u2, u1} α β (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ)))) (OrderMonoidHom.toMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ))) f) (MonoidHomClass.toMonoidHom.{u2, u1, max u2 u1} α β (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ)))) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ))) (OrderMonoidHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ))))) f)
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.to_monoid_hom_eq_coe OrderMonoidHom.toMonoidHom_eq_coeₓ'. -/
@[simp, to_additive]
theorem toMonoidHom_eq_coe (f : α →*o β) : f.toMonoidHom = f := by ext; rfl
#align order_monoid_hom.to_monoid_hom_eq_coe OrderMonoidHom.toMonoidHom_eq_coe
#align order_add_monoid_hom.to_add_monoid_hom_eq_coe OrderAddMonoidHom.toAddMonoidHom_eq_coe
-/- warning: order_monoid_hom.to_order_hom_eq_coe -> OrderMonoidHom.toOrderHom_eq_coe is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {hα : OrderedCommMonoid.{u1} α} {hβ : OrderedCommMonoid.{u2} β} (f : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))), Eq.{max (succ u1) (succ u2)} (OrderHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ))) (OrderMonoidHom.toOrderHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ))) 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) (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) (OrderHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ))) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) (OrderHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ))) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) (OrderHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ))) (OrderHomClass.OrderHom.hasCoeT.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))) α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ))) (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α hα))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β hβ)))))))) f)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} {hα : OrderedCommMonoid.{u2} α} {hβ : OrderedCommMonoid.{u1} β} (f : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ)))), Eq.{max (succ u2) (succ u1)} (OrderHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ))) (OrderMonoidHom.toOrderHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ))) f) (OrderHomClass.toOrderHom.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ))))) f)
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.to_order_hom_eq_coe OrderMonoidHom.toOrderHom_eq_coeₓ'. -/
@[simp, to_additive]
theorem toOrderHom_eq_coe (f : α →*o β) : f.toOrderHom = f :=
rfl
@@ -777,12 +558,6 @@ variable {hα : OrderedCommGroup α} {hβ : OrderedCommGroup β}
include hα hβ
-/- warning: order_monoid_hom.mk' -> OrderMonoidHom.mk' is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {hα : OrderedCommGroup.{u1} α} {hβ : OrderedCommGroup.{u2} β} (f : α -> β), (Monotone.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommGroup.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommGroup.toPartialOrder.{u2} β hβ)) f) -> (forall (a : α) (b : α), Eq.{succ u2} β (f (HMul.hMul.{u1, u1, u1} α α α (instHMul.{u1} α (MulOneClass.toHasMul.{u1} α (Monoid.toMulOneClass.{u1} α (DivInvMonoid.toMonoid.{u1} α (Group.toDivInvMonoid.{u1} α (CommGroup.toGroup.{u1} α (OrderedCommGroup.toCommGroup.{u1} α hα))))))) a b)) (HMul.hMul.{u2, u2, u2} β β β (instHMul.{u2} β (MulOneClass.toHasMul.{u2} β (Monoid.toMulOneClass.{u2} β (DivInvMonoid.toMonoid.{u2} β (Group.toDivInvMonoid.{u2} β (CommGroup.toGroup.{u2} β (OrderedCommGroup.toCommGroup.{u2} β hβ))))))) (f a) (f b))) -> (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommGroup.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommGroup.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (DivInvMonoid.toMonoid.{u1} α (Group.toDivInvMonoid.{u1} α (CommGroup.toGroup.{u1} α (OrderedCommGroup.toCommGroup.{u1} α hα))))) (Monoid.toMulOneClass.{u2} β (DivInvMonoid.toMonoid.{u2} β (Group.toDivInvMonoid.{u2} β (CommGroup.toGroup.{u2} β (OrderedCommGroup.toCommGroup.{u2} β hβ))))))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} {hα : OrderedCommGroup.{u1} α} {hβ : OrderedCommGroup.{u2} β} (f : α -> β), (Monotone.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommGroup.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommGroup.toPartialOrder.{u2} β hβ)) f) -> (forall (a : α) (b : α), Eq.{succ u2} β (f (HMul.hMul.{u1, u1, u1} α α α (instHMul.{u1} α (MulOneClass.toMul.{u1} α (Monoid.toMulOneClass.{u1} α (DivInvMonoid.toMonoid.{u1} α (Group.toDivInvMonoid.{u1} α (CommGroup.toGroup.{u1} α (OrderedCommGroup.toCommGroup.{u1} α hα))))))) a b)) (HMul.hMul.{u2, u2, u2} β β β (instHMul.{u2} β (MulOneClass.toMul.{u2} β (Monoid.toMulOneClass.{u2} β (DivInvMonoid.toMonoid.{u2} β (Group.toDivInvMonoid.{u2} β (CommGroup.toGroup.{u2} β (OrderedCommGroup.toCommGroup.{u2} β hβ))))))) (f a) (f b))) -> (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommGroup.toPartialOrder.{u1} α hα)) (PartialOrder.toPreorder.{u2} β (OrderedCommGroup.toPartialOrder.{u2} β hβ)) (Monoid.toMulOneClass.{u1} α (DivInvMonoid.toMonoid.{u1} α (Group.toDivInvMonoid.{u1} α (CommGroup.toGroup.{u1} α (OrderedCommGroup.toCommGroup.{u1} α hα))))) (Monoid.toMulOneClass.{u2} β (DivInvMonoid.toMonoid.{u2} β (Group.toDivInvMonoid.{u2} β (CommGroup.toGroup.{u2} β (OrderedCommGroup.toCommGroup.{u2} β hβ))))))
-Case conversion may be inaccurate. Consider using '#align order_monoid_hom.mk' OrderMonoidHom.mk'ₓ'. -/
/-- Makes an ordered group homomorphism from a proof that the map preserves multiplication. -/
@[to_additive
"Makes an ordered additive group homomorphism from a proof that the map preserves\naddition.",
@@ -817,39 +592,21 @@ directly. -/
instance : CoeFun (α →*₀o β) fun _ => α → β :=
FunLike.hasCoeToFun
-/- warning: order_monoid_with_zero_hom.ext -> OrderMonoidWithZeroHom.ext is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.ext OrderMonoidWithZeroHom.extₓ'. -/
-- Other lemmas should be accessed through the `fun_like` API
@[ext]
theorem ext (h : ∀ a, f a = g a) : f = g :=
FunLike.ext f g h
#align order_monoid_with_zero_hom.ext OrderMonoidWithZeroHom.ext
-/- warning: order_monoid_with_zero_hom.to_fun_eq_coe -> OrderMonoidWithZeroHom.toFun_eq_coe is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (MonoidWithZeroHom.toFun.{u1, u2} α β _inst_5 _inst_6 (OrderMonoidWithZeroHom.toMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (ZeroHom.toFun.{u2, u1} α β (MulZeroOneClass.toZero.{u2} α _inst_5) (MulZeroOneClass.toZero.{u1} β _inst_6) (MonoidWithZeroHom.toZeroHom.{u2, u1} α β _inst_5 _inst_6 (OrderMonoidWithZeroHom.toMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.to_fun_eq_coe OrderMonoidWithZeroHom.toFun_eq_coeₓ'. -/
theorem toFun_eq_coe (f : α →*₀o β) : f.toFun = (f : α → β) :=
rfl
#align order_monoid_with_zero_hom.to_fun_eq_coe OrderMonoidWithZeroHom.toFun_eq_coe
-/- warning: order_monoid_with_zero_hom.coe_mk -> OrderMonoidWithZeroHom.coe_mk is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (h : Monotone.{u1, u2} α β _inst_1 _inst_2 (MonoidWithZeroHom.toFun.{u1, u2} α β _inst_5 _inst_6 f)), Eq.{max (succ u1) (succ u2)} ((fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidWithZeroHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) f)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (ZeroHom.toFun.{u2, u1} α β (MulZeroOneClass.toZero.{u2} α _inst_5) (MulZeroOneClass.toZero.{u1} β _inst_6) (MonoidWithZeroHom.toZeroHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderMonoidWithZeroHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) f)
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_mk OrderMonoidWithZeroHom.coe_mkₓ'. -/
@[simp]
theorem coe_mk (f : α →*₀ β) (h) : (OrderMonoidWithZeroHom.mk f h : α → β) = f :=
rfl
#align order_monoid_with_zero_hom.coe_mk OrderMonoidWithZeroHom.coe_mk
-/- warning: order_monoid_with_zero_hom.mk_coe -> OrderMonoidWithZeroHom.mk_coe is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.mk_coe OrderMonoidWithZeroHom.mk_coeₓ'. -/
@[simp]
theorem mk_coe (f : α →*₀o β) (h) : OrderMonoidWithZeroHom.mk (f : α →*₀ β) h = f := by ext; rfl
#align order_monoid_with_zero_hom.mk_coe OrderMonoidWithZeroHom.mk_coe
@@ -861,77 +618,35 @@ def toOrderMonoidHom (f : α →*₀o β) : α →*o β :=
#align order_monoid_with_zero_hom.to_order_monoid_hom OrderMonoidWithZeroHom.toOrderMonoidHom
-/
-/- warning: order_monoid_with_zero_hom.coe_monoid_with_zero_hom -> OrderMonoidWithZeroHom.coe_monoidWithZeroHom is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (MonoidWithZeroHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), 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} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u2, u1, max u2 u1} α β (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_monoid_with_zero_hom OrderMonoidWithZeroHom.coe_monoidWithZeroHomₓ'. -/
@[simp]
theorem coe_monoidWithZeroHom (f : α →*₀o β) : ⇑(f : α →*₀ β) = f :=
rfl
#align order_monoid_with_zero_hom.coe_monoid_with_zero_hom OrderMonoidWithZeroHom.coe_monoidWithZeroHom
-/- warning: order_monoid_with_zero_hom.coe_order_monoid_hom -> OrderMonoidWithZeroHom.coe_orderMonoidHom is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{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) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (OrderMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), 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} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)))) (OrderMonoidHomClass.toOrderMonoidHom.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_order_monoid_hom OrderMonoidWithZeroHom.coe_orderMonoidHomₓ'. -/
@[simp]
theorem coe_orderMonoidHom (f : α →*₀o β) : ⇑(f : α →*o β) = f :=
rfl
#align order_monoid_with_zero_hom.coe_order_monoid_hom OrderMonoidWithZeroHom.coe_orderMonoidHom
-/- warning: order_monoid_with_zero_hom.to_order_monoid_hom_injective -> OrderMonoidWithZeroHom.toOrderMonoidHom_injective is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β], Function.Injective.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (OrderMonoidWithZeroHom.toOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β], Function.Injective.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (OrderMonoidWithZeroHom.toOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.to_order_monoid_hom_injective OrderMonoidWithZeroHom.toOrderMonoidHom_injectiveₓ'. -/
theorem toOrderMonoidHom_injective : Injective (toOrderMonoidHom : _ → α →*o β) := fun f g h =>
ext <| by convert FunLike.ext_iff.1 h
#align order_monoid_with_zero_hom.to_order_monoid_hom_injective OrderMonoidWithZeroHom.toOrderMonoidHom_injective
-/- warning: order_monoid_with_zero_hom.to_monoid_with_zero_hom_injective -> OrderMonoidWithZeroHom.toMonoidWithZeroHom_injective is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β], Function.Injective.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (OrderMonoidWithZeroHom.toMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β], Function.Injective.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) (OrderMonoidWithZeroHom.toMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.to_monoid_with_zero_hom_injective OrderMonoidWithZeroHom.toMonoidWithZeroHom_injectiveₓ'. -/
theorem toMonoidWithZeroHom_injective : Injective (toMonoidWithZeroHom : _ → α →*₀ β) :=
fun f g h => ext <| by convert FunLike.ext_iff.1 h
#align order_monoid_with_zero_hom.to_monoid_with_zero_hom_injective OrderMonoidWithZeroHom.toMonoidWithZeroHom_injective
-/- warning: order_monoid_with_zero_hom.copy -> OrderMonoidWithZeroHom.copy is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)) -> (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{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} (OrderMonoidWithZeroHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)) -> (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6))
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.copy OrderMonoidWithZeroHom.copyₓ'. -/
/-- Copy of an `order_monoid_with_zero_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.toOrderMonoidHom.copy f' h, f.toMonoidWithZeroHom.copy f' h with toFun := f' }
#align order_monoid_with_zero_hom.copy OrderMonoidWithZeroHom.copy
-/- warning: order_monoid_with_zero_hom.coe_copy -> OrderMonoidWithZeroHom.coe_copy is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (OrderMonoidWithZeroHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h)) f'
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) 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} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)))) (OrderMonoidWithZeroHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h)) f'
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_copy OrderMonoidWithZeroHom.coe_copyₓ'. -/
@[simp]
theorem coe_copy (f : α →*₀o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
rfl
#align order_monoid_with_zero_hom.coe_copy OrderMonoidWithZeroHom.coe_copy
-/- warning: order_monoid_with_zero_hom.copy_eq -> OrderMonoidWithZeroHom.copy_eq is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)), Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (OrderMonoidWithZeroHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h) ((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) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (OrderMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)), Eq.{max (succ u2) (succ u1)} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (OrderMonoidWithZeroHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h) (OrderMonoidHomClass.toOrderMonoidHom.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.copy_eq OrderMonoidWithZeroHom.copy_eqₓ'. -/
theorem copy_eq (f : α →*₀o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
FunLike.ext' h
#align order_monoid_with_zero_hom.copy_eq OrderMonoidWithZeroHom.copy_eq
@@ -945,12 +660,6 @@ protected def id : α →*₀o α :=
#align order_monoid_with_zero_hom.id OrderMonoidWithZeroHom.id
-/
-/- warning: order_monoid_with_zero_hom.coe_id -> OrderMonoidWithZeroHom.coe_id is a dubious translation:
-lean 3 declaration is
- forall (α : Type.{u1}) [_inst_1 : Preorder.{u1} α] [_inst_5 : MulZeroOneClass.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) (fun (_x : OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) => α -> α) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) (OrderMonoidWithZeroHom.id.{u1} α _inst_1 _inst_5)) (id.{succ u1} α)
-but is expected to have type
- forall (α : Type.{u1}) [_inst_1 : Preorder.{u1} α] [_inst_5 : MulZeroOneClass.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_1) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α _inst_1 _inst_1 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{u1, u1, u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α _inst_1 _inst_1 _inst_5 _inst_5 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5)))) (OrderMonoidWithZeroHom.id.{u1} α _inst_1 _inst_5)) (id.{succ u1} α)
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_id OrderMonoidWithZeroHom.coe_idₓ'. -/
@[simp]
theorem coe_id : ⇑(OrderMonoidWithZeroHom.id α) = id :=
rfl
@@ -968,85 +677,49 @@ def comp (f : β →*₀o γ) (g : α →*₀o β) : α →*₀o γ :=
#align order_monoid_with_zero_hom.comp OrderMonoidWithZeroHom.comp
-/
-/- warning: order_monoid_with_zero_hom.coe_comp -> OrderMonoidWithZeroHom.coe_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_comp OrderMonoidWithZeroHom.coe_compₓ'. -/
@[simp]
theorem coe_comp (f : β →*₀o γ) (g : α →*₀o β) : (f.comp g : α → γ) = f ∘ g :=
rfl
#align order_monoid_with_zero_hom.coe_comp OrderMonoidWithZeroHom.coe_comp
-/- warning: order_monoid_with_zero_hom.comp_apply -> OrderMonoidWithZeroHom.comp_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.comp_apply OrderMonoidWithZeroHom.comp_applyₓ'. -/
@[simp]
theorem comp_apply (f : β →*₀o γ) (g : α →*₀o β) (a : α) : (f.comp g) a = f (g a) :=
rfl
#align order_monoid_with_zero_hom.comp_apply OrderMonoidWithZeroHom.comp_apply
-/- warning: order_monoid_with_zero_hom.coe_comp_monoid_with_zero_hom -> OrderMonoidWithZeroHom.coe_comp_monoidWithZeroHom is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_comp_monoid_with_zero_hom OrderMonoidWithZeroHom.coe_comp_monoidWithZeroHomₓ'. -/
@[simp]
theorem coe_comp_monoidWithZeroHom (f : β →*₀o γ) (g : α →*₀o β) :
(f.comp g : α →*₀ γ) = (f : β →*₀ γ).comp g :=
rfl
#align order_monoid_with_zero_hom.coe_comp_monoid_with_zero_hom OrderMonoidWithZeroHom.coe_comp_monoidWithZeroHom
-/- warning: order_monoid_with_zero_hom.coe_comp_order_monoid_hom -> OrderMonoidWithZeroHom.coe_comp_orderMonoidHom is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_comp_order_monoid_hom OrderMonoidWithZeroHom.coe_comp_orderMonoidHomₓ'. -/
@[simp]
theorem coe_comp_orderMonoidHom (f : β →*₀o γ) (g : α →*₀o β) :
(f.comp g : α →*o γ) = (f : β →*o γ).comp g :=
rfl
#align order_monoid_with_zero_hom.coe_comp_order_monoid_hom OrderMonoidWithZeroHom.coe_comp_orderMonoidHom
-/- warning: order_monoid_with_zero_hom.comp_assoc -> OrderMonoidWithZeroHom.comp_assoc is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} {δ : Type.{u4}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_4 : Preorder.{u4} δ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] [_inst_7 : MulZeroOneClass.{u3} γ] [_inst_8 : MulZeroOneClass.{u4} δ] (f : OrderMonoidWithZeroHom.{u3, u4} γ δ _inst_3 _inst_4 _inst_7 _inst_8) (g : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (h : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u4)} (OrderMonoidWithZeroHom.{u1, u4} α δ _inst_1 _inst_4 _inst_5 _inst_8) (OrderMonoidWithZeroHom.comp.{u1, u2, u4} α β δ _inst_1 _inst_2 _inst_4 _inst_5 _inst_6 _inst_8 (OrderMonoidWithZeroHom.comp.{u2, u3, u4} β γ δ _inst_2 _inst_3 _inst_4 _inst_6 _inst_7 _inst_8 f g) h) (OrderMonoidWithZeroHom.comp.{u1, u3, u4} α γ δ _inst_1 _inst_3 _inst_4 _inst_5 _inst_7 _inst_8 f (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g h))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u4}} {δ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u4} γ] [_inst_4 : Preorder.{u3} δ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] [_inst_7 : MulZeroOneClass.{u4} γ] [_inst_8 : MulZeroOneClass.{u3} δ] (f : OrderMonoidWithZeroHom.{u4, u3} γ δ _inst_3 _inst_4 _inst_7 _inst_8) (g : OrderMonoidWithZeroHom.{u2, u4} β γ _inst_2 _inst_3 _inst_6 _inst_7) (h : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α δ _inst_1 _inst_4 _inst_5 _inst_8) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β δ _inst_1 _inst_2 _inst_4 _inst_5 _inst_6 _inst_8 (OrderMonoidWithZeroHom.comp.{u2, u4, u3} β γ δ _inst_2 _inst_3 _inst_4 _inst_6 _inst_7 _inst_8 f g) h) (OrderMonoidWithZeroHom.comp.{u1, u4, u3} α γ δ _inst_1 _inst_3 _inst_4 _inst_5 _inst_7 _inst_8 f (OrderMonoidWithZeroHom.comp.{u1, u2, u4} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g h))
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.comp_assoc OrderMonoidWithZeroHom.comp_assocₓ'. -/
@[simp]
theorem comp_assoc (f : γ →*₀o δ) (g : β →*₀o γ) (h : α →*₀o β) :
(f.comp g).comp h = f.comp (g.comp h) :=
rfl
#align order_monoid_with_zero_hom.comp_assoc OrderMonoidWithZeroHom.comp_assoc
-/- warning: order_monoid_with_zero_hom.comp_id -> OrderMonoidWithZeroHom.comp_id is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidWithZeroHom.comp.{u1, u1, u2} α α β _inst_1 _inst_1 _inst_2 _inst_5 _inst_5 _inst_6 f (OrderMonoidWithZeroHom.id.{u1} α _inst_1 _inst_5)) f
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidWithZeroHom.comp.{u2, u2, u1} α α β _inst_1 _inst_1 _inst_2 _inst_5 _inst_5 _inst_6 f (OrderMonoidWithZeroHom.id.{u2} α _inst_1 _inst_5)) f
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.comp_id OrderMonoidWithZeroHom.comp_idₓ'. -/
@[simp]
theorem comp_id (f : α →*₀o β) : f.comp (OrderMonoidWithZeroHom.id α) = f :=
ext fun a => rfl
#align order_monoid_with_zero_hom.comp_id OrderMonoidWithZeroHom.comp_id
-/- warning: order_monoid_with_zero_hom.id_comp -> OrderMonoidWithZeroHom.id_comp is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidWithZeroHom.comp.{u1, u2, u2} α β β _inst_1 _inst_2 _inst_2 _inst_5 _inst_6 _inst_6 (OrderMonoidWithZeroHom.id.{u2} β _inst_2 _inst_6) f) f
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidWithZeroHom.comp.{u2, u1, u1} α β β _inst_1 _inst_2 _inst_2 _inst_5 _inst_6 _inst_6 (OrderMonoidWithZeroHom.id.{u1} β _inst_2 _inst_6) f) f
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.id_comp OrderMonoidWithZeroHom.id_compₓ'. -/
@[simp]
theorem id_comp (f : α →*₀o β) : (OrderMonoidWithZeroHom.id β).comp f = f :=
ext fun a => rfl
#align order_monoid_with_zero_hom.id_comp OrderMonoidWithZeroHom.id_comp
-/- warning: order_monoid_with_zero_hom.cancel_right -> OrderMonoidWithZeroHom.cancel_right is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.cancel_right OrderMonoidWithZeroHom.cancel_rightₓ'. -/
theorem cancel_right {g₁ g₂ : β →*₀o γ} {f : α →*₀o β} (hf : Function.Surjective f) :
g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
#align order_monoid_with_zero_hom.cancel_right OrderMonoidWithZeroHom.cancel_right
-/- warning: order_monoid_with_zero_hom.cancel_left -> OrderMonoidWithZeroHom.cancel_left is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.cancel_left OrderMonoidWithZeroHom.cancel_leftₓ'. -/
theorem cancel_left {g : β →*₀o γ} {f₁ f₂ : α →*₀o β} (hg : Function.Injective g) :
g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
⟨fun h => ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
@@ -1064,32 +737,20 @@ sending `a` to `f a * g a`. -/
instance : Mul (α →*₀o β) :=
⟨fun f g => { (f * g : α →*₀ β) with monotone' := f.monotone'.mul' g.monotone' }⟩
-/- warning: order_monoid_with_zero_hom.coe_mul -> OrderMonoidWithZeroHom.coe_mul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_mul OrderMonoidWithZeroHom.coe_mulₓ'. -/
@[simp]
theorem coe_mul (f g : α →*₀o β) : ⇑(f * g) = f * g :=
rfl
#align order_monoid_with_zero_hom.coe_mul OrderMonoidWithZeroHom.coe_mul
-/- warning: order_monoid_with_zero_hom.mul_apply -> OrderMonoidWithZeroHom.mul_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.mul_apply OrderMonoidWithZeroHom.mul_applyₓ'. -/
@[simp]
theorem mul_apply (f g : α →*₀o β) (a : α) : (f * g) a = f a * g a :=
rfl
#align order_monoid_with_zero_hom.mul_apply OrderMonoidWithZeroHom.mul_apply
-/- warning: order_monoid_with_zero_hom.mul_comp -> OrderMonoidWithZeroHom.mul_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.mul_comp OrderMonoidWithZeroHom.mul_compₓ'. -/
theorem mul_comp (g₁ g₂ : β →*₀o γ) (f : α →*₀o β) : (g₁ * g₂).comp f = g₁.comp f * g₂.comp f :=
rfl
#align order_monoid_with_zero_hom.mul_comp OrderMonoidWithZeroHom.mul_comp
-/- warning: order_monoid_with_zero_hom.comp_mul -> OrderMonoidWithZeroHom.comp_mul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.comp_mul OrderMonoidWithZeroHom.comp_mulₓ'. -/
theorem comp_mul (g : β →*₀o γ) (f₁ f₂ : α →*₀o β) : g.comp (f₁ * f₂) = g.comp f₁ * g.comp f₂ :=
ext fun _ => map_mul g _ _
#align order_monoid_with_zero_hom.comp_mul OrderMonoidWithZeroHom.comp_mul
@@ -1102,22 +763,10 @@ variable {hα : Preorder α} {hα' : MulZeroOneClass α} {hβ : Preorder β} {h
include hα hα' hβ hβ'
-/- warning: order_monoid_with_zero_hom.to_monoid_with_zero_hom_eq_coe -> OrderMonoidWithZeroHom.toMonoidWithZeroHom_eq_coe is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {hα : Preorder.{u1} α} {hα' : MulZeroOneClass.{u1} α} {hβ : Preorder.{u2} β} {hβ' : MulZeroOneClass.{u2} β} (f : OrderMonoidWithZeroHom.{u1, u2} α β hα hβ hα' hβ'), Eq.{max (succ u2) (succ u1)} (MonoidWithZeroHom.{u1, u2} α β hα' hβ') (OrderMonoidWithZeroHom.toMonoidWithZeroHom.{u1, u2} α β hα hβ hα' hβ' f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidWithZeroHom.{u1, u2} α β hα hβ hα' hβ') (MonoidWithZeroHom.{u1, u2} α β hα' hβ') (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β hα hβ hα' hβ') (MonoidWithZeroHom.{u1, u2} α β hα' hβ') (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β hα hβ hα' hβ') (MonoidWithZeroHom.{u1, u2} α β hα' hβ') (MonoidWithZeroHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidWithZeroHom.{u1, u2} α β hα hβ hα' hβ') hα' hβ' (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β hα hβ hα' hβ') α β hα hβ hα' hβ' (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β hα hβ hα' hβ'))))) f)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} {hα : Preorder.{u2} α} {hα' : MulZeroOneClass.{u2} α} {hβ : Preorder.{u1} β} {hβ' : MulZeroOneClass.{u1} β} (f : OrderMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ'), Eq.{max (succ u2) (succ u1)} (MonoidWithZeroHom.{u2, u1} α β hα' hβ') (OrderMonoidWithZeroHom.toMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ' f) (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u2, u1, max u2 u1} α β (OrderMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ') hα' hβ' (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ') α β hα hβ hα' hβ' (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ')) f)
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.to_monoid_with_zero_hom_eq_coe OrderMonoidWithZeroHom.toMonoidWithZeroHom_eq_coeₓ'. -/
@[simp]
theorem toMonoidWithZeroHom_eq_coe (f : α →*₀o β) : f.toMonoidWithZeroHom = f := by ext; rfl
#align order_monoid_with_zero_hom.to_monoid_with_zero_hom_eq_coe OrderMonoidWithZeroHom.toMonoidWithZeroHom_eq_coe
-/- warning: order_monoid_with_zero_hom.to_order_monoid_hom_eq_coe -> OrderMonoidWithZeroHom.toOrderMonoidHom_eq_coe is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {hα : Preorder.{u1} α} {hα' : MulZeroOneClass.{u1} α} {hβ : Preorder.{u2} β} {hβ' : MulZeroOneClass.{u2} β} (f : OrderMonoidWithZeroHom.{u1, u2} α β hα hβ hα' hβ'), Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β hα hβ (MulZeroOneClass.toMulOneClass.{u1} α hα') (MulZeroOneClass.toMulOneClass.{u2} β hβ')) (OrderMonoidWithZeroHom.toOrderMonoidHom.{u1, u2} α β hα hβ hα' hβ' 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) (OrderMonoidWithZeroHom.{u1, u2} α β hα hβ hα' hβ') (OrderMonoidHom.{u1, u2} α β hα hβ (MulZeroOneClass.toMulOneClass.{u1} α hα') (MulZeroOneClass.toMulOneClass.{u2} β hβ')) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β hα hβ hα' hβ') (OrderMonoidHom.{u1, u2} α β hα hβ (MulZeroOneClass.toMulOneClass.{u1} α hα') (MulZeroOneClass.toMulOneClass.{u2} β hβ')) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β hα hβ hα' hβ') (OrderMonoidHom.{u1, u2} α β hα hβ (MulZeroOneClass.toMulOneClass.{u1} α hα') (MulZeroOneClass.toMulOneClass.{u2} β hβ')) (OrderMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β hα hβ hα' hβ') α β hα hβ (MulZeroOneClass.toMulOneClass.{u1} α hα') (MulZeroOneClass.toMulOneClass.{u2} β hβ') (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β hα hβ hα' hβ') α β hα hβ hα' hβ' (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β hα hβ hα' hβ'))))) f)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} {hα : Preorder.{u2} α} {hα' : MulZeroOneClass.{u2} α} {hβ : Preorder.{u1} β} {hβ' : MulZeroOneClass.{u1} β} (f : OrderMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ'), Eq.{max (succ u2) (succ u1)} (OrderMonoidHom.{u2, u1} α β hα hβ (MulZeroOneClass.toMulOneClass.{u2} α hα') (MulZeroOneClass.toMulOneClass.{u1} β hβ')) (OrderMonoidWithZeroHom.toOrderMonoidHom.{u2, u1} α β hα hβ hα' hβ' f) (OrderMonoidHomClass.toOrderMonoidHom.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ') α β hα hβ (MulZeroOneClass.toMulOneClass.{u2} α hα') (MulZeroOneClass.toMulOneClass.{u1} β hβ') (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ') α β hα hβ hα' hβ' (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ')) f)
-Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.to_order_monoid_hom_eq_coe OrderMonoidWithZeroHom.toOrderMonoidHom_eq_coeₓ'. -/
@[simp]
theorem toOrderMonoidHom_eq_coe (f : α →*₀o β) : f.toOrderMonoidHom = f :=
rfl
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -235,10 +235,7 @@ lean 3 declaration is
but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) {a : α}, (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (AddMonoid.toZero.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{u1, u3, u2} F α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (_x : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) _x x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a))
Case conversion may be inaccurate. Consider using '#align map_nonneg map_nonnegₓ'. -/
-theorem map_nonneg (ha : 0 ≤ a) : 0 ≤ f a :=
- by
- rw [← map_zero f]
- exact OrderHomClass.mono _ ha
+theorem map_nonneg (ha : 0 ≤ a) : 0 ≤ f a := by rw [← map_zero f]; exact OrderHomClass.mono _ ha
#align map_nonneg map_nonneg
/- warning: map_nonpos -> map_nonpos is a dubious translation:
@@ -247,10 +244,7 @@ lean 3 declaration is
but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) {a : α}, (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (AddMonoid.toZero.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1)))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{u1, u3, u2} F α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (_x : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) _x x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))))))
Case conversion may be inaccurate. Consider using '#align map_nonpos map_nonposₓ'. -/
-theorem map_nonpos (ha : a ≤ 0) : f a ≤ 0 :=
- by
- rw [← map_zero f]
- exact OrderHomClass.mono _ ha
+theorem map_nonpos (ha : a ≤ 0) : f a ≤ 0 := by rw [← map_zero f]; exact OrderHomClass.mono _ ha
#align map_nonpos map_nonpos
end OrderedAddCommMonoid
@@ -266,11 +260,8 @@ but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Monotone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
Case conversion may be inaccurate. Consider using '#align monotone_iff_map_nonneg monotone_iff_map_nonnegₓ'. -/
theorem monotone_iff_map_nonneg : Monotone (f : α → β) ↔ ∀ a, 0 ≤ a → 0 ≤ f a :=
- ⟨fun h a => by
- rw [← map_zero f]
- apply h, fun h a b hl => by
- rw [← sub_add_cancel b a, map_add f]
- exact le_add_of_nonneg_left (h _ <| sub_nonneg.2 hl)⟩
+ ⟨fun h a => by rw [← map_zero f]; apply h, fun h a b hl => by
+ rw [← sub_add_cancel b a, map_add f]; exact le_add_of_nonneg_left (h _ <| sub_nonneg.2 hl)⟩
#align monotone_iff_map_nonneg monotone_iff_map_nonneg
/- warning: antitone_iff_map_nonpos -> antitone_iff_map_nonpos is a dubious translation:
@@ -312,11 +303,8 @@ but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3046 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3048 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3046 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3048) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3061 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3063 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3061 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3063)], Iff (StrictMono.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
Case conversion may be inaccurate. Consider using '#align strict_mono_iff_map_pos strictMono_iff_map_posₓ'. -/
theorem strictMono_iff_map_pos : StrictMono (f : α → β) ↔ ∀ a, 0 < a → 0 < f a :=
- ⟨fun h a => by
- rw [← map_zero f]
- apply h, fun h a b hl => by
- rw [← sub_add_cancel b a, map_add f]
- exact lt_add_of_pos_left _ (h _ <| sub_pos.2 hl)⟩
+ ⟨fun h a => by rw [← map_zero f]; apply h, fun h a b hl => by
+ rw [← sub_add_cancel b a, map_add f]; exact lt_add_of_pos_left _ (h _ <| sub_pos.2 hl)⟩
#align strict_mono_iff_map_pos strictMono_iff_map_pos
/- warning: strict_anti_iff_map_neg -> strictAnti_iff_map_neg is a dubious translation:
@@ -362,10 +350,7 @@ variable [Preorder α] [Preorder β] [Preorder γ] [Preorder δ] [MulOneClass α
instance : OrderMonoidHomClass (α →*o β) α β
where
coe f := f.toFun
- coe_injective' f g h := by
- obtain ⟨⟨_, _⟩, _⟩ := f
- obtain ⟨⟨_, _⟩, _⟩ := g
- congr
+ coe_injective' f g h := by obtain ⟨⟨_, _⟩, _⟩ := f; obtain ⟨⟨_, _⟩, _⟩ := g; congr
map_mul f := f.map_mul'
map_one f := f.map_one'
Monotone f := f.monotone'
@@ -418,10 +403,7 @@ theorem coe_mk (f : α →* β) (h) : (OrderMonoidHom.mk f h : α → β) = f :=
<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.mk_coe OrderMonoidHom.mk_coeₓ'. -/
@[simp, to_additive]
-theorem mk_coe (f : α →*o β) (h) : OrderMonoidHom.mk (f : α →* β) h = f :=
- by
- ext
- rfl
+theorem mk_coe (f : α →*o β) (h) : OrderMonoidHom.mk (f : α →* β) h = f := by ext; rfl
#align order_monoid_hom.mk_coe OrderMonoidHom.mk_coe
#align order_add_monoid_hom.mk_coe OrderAddMonoidHom.mk_coe
@@ -703,10 +685,7 @@ but is expected to have type
forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] (f : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7), Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f (OfNat.ofNat.{max u1 u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (One.toOfNat1.{max u1 u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.instOneOrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)))) (OfNat.ofNat.{max u1 u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) 1 (One.toOfNat1.{max u1 u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.instOneOrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7)))
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.comp_one OrderMonoidHom.comp_oneₓ'. -/
@[simp, to_additive]
-theorem comp_one (f : β →*o γ) : f.comp (1 : α →*o β) = 1 :=
- by
- ext
- exact map_one f
+theorem comp_one (f : β →*o γ) : f.comp (1 : α →*o β) = 1 := by ext; exact map_one f
#align order_monoid_hom.comp_one OrderMonoidHom.comp_one
#align order_add_monoid_hom.comp_zero OrderAddMonoidHom.comp_zero
@@ -754,10 +733,8 @@ theorem mul_comp (g₁ g₂ : β →*o γ) (f : α →*o β) : (g₁ * g₂).com
<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.comp_mul OrderMonoidHom.comp_mulₓ'. -/
@[to_additive]
-theorem comp_mul (g : β →*o γ) (f₁ f₂ : α →*o β) : g.comp (f₁ * f₂) = g.comp f₁ * g.comp f₂ :=
- by
- ext
- exact map_mul g _ _
+theorem comp_mul (g : β →*o γ) (f₁ f₂ : α →*o β) : g.comp (f₁ * f₂) = g.comp f₁ * g.comp f₂ := by
+ ext; exact map_mul g _ _
#align order_monoid_hom.comp_mul OrderMonoidHom.comp_mul
#align order_add_monoid_hom.comp_add OrderAddMonoidHom.comp_add
@@ -776,10 +753,7 @@ but is expected to have type
forall {α : Type.{u2}} {β : Type.{u1}} {hα : OrderedCommMonoid.{u2} α} {hβ : OrderedCommMonoid.{u1} β} (f : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ)))), Eq.{max (succ u2) (succ u1)} (MonoidHom.{u2, u1} α β (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ)))) (OrderMonoidHom.toMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ))) f) (MonoidHomClass.toMonoidHom.{u2, u1, max u2 u1} α β (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ)))) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ))) (OrderMonoidHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α hα)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β hβ)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α hα))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β hβ))))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.to_monoid_hom_eq_coe OrderMonoidHom.toMonoidHom_eq_coeₓ'. -/
@[simp, to_additive]
-theorem toMonoidHom_eq_coe (f : α →*o β) : f.toMonoidHom = f :=
- by
- ext
- rfl
+theorem toMonoidHom_eq_coe (f : α →*o β) : f.toMonoidHom = f := by ext; rfl
#align order_monoid_hom.to_monoid_hom_eq_coe OrderMonoidHom.toMonoidHom_eq_coe
#align order_add_monoid_hom.to_add_monoid_hom_eq_coe OrderAddMonoidHom.toAddMonoidHom_eq_coe
@@ -832,10 +806,7 @@ variable [Preorder α] [Preorder β] [Preorder γ] [Preorder δ] [MulZeroOneClas
instance : OrderMonoidWithZeroHomClass (α →*₀o β) α β
where
coe f := f.toFun
- coe_injective' f g h := by
- obtain ⟨⟨_, _⟩, _⟩ := f
- obtain ⟨⟨_, _⟩, _⟩ := g
- congr
+ coe_injective' f g h := by obtain ⟨⟨_, _⟩, _⟩ := f; obtain ⟨⟨_, _⟩, _⟩ := g; congr
map_mul f := f.map_mul'
map_one f := f.map_one'
map_zero f := f.map_zero'
@@ -880,10 +851,7 @@ theorem coe_mk (f : α →*₀ β) (h) : (OrderMonoidWithZeroHom.mk f h : α →
<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.mk_coe OrderMonoidWithZeroHom.mk_coeₓ'. -/
@[simp]
-theorem mk_coe (f : α →*₀o β) (h) : OrderMonoidWithZeroHom.mk (f : α →*₀ β) h = f :=
- by
- ext
- rfl
+theorem mk_coe (f : α →*₀o β) (h) : OrderMonoidWithZeroHom.mk (f : α →*₀ β) h = f := by ext; rfl
#align order_monoid_with_zero_hom.mk_coe OrderMonoidWithZeroHom.mk_coe
#print OrderMonoidWithZeroHom.toOrderMonoidHom /-
@@ -1141,10 +1109,7 @@ but is expected to have type
forall {α : Type.{u2}} {β : Type.{u1}} {hα : Preorder.{u2} α} {hα' : MulZeroOneClass.{u2} α} {hβ : Preorder.{u1} β} {hβ' : MulZeroOneClass.{u1} β} (f : OrderMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ'), Eq.{max (succ u2) (succ u1)} (MonoidWithZeroHom.{u2, u1} α β hα' hβ') (OrderMonoidWithZeroHom.toMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ' f) (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u2, u1, max u2 u1} α β (OrderMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ') hα' hβ' (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ') α β hα hβ hα' hβ' (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β hα hβ hα' hβ')) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.to_monoid_with_zero_hom_eq_coe OrderMonoidWithZeroHom.toMonoidWithZeroHom_eq_coeₓ'. -/
@[simp]
-theorem toMonoidWithZeroHom_eq_coe (f : α →*₀o β) : f.toMonoidWithZeroHom = f :=
- by
- ext
- rfl
+theorem toMonoidWithZeroHom_eq_coe (f : α →*₀o β) : f.toMonoidWithZeroHom = f := by ext; rfl
#align order_monoid_with_zero_hom.to_monoid_with_zero_hom_eq_coe OrderMonoidWithZeroHom.toMonoidWithZeroHom_eq_coe
/- warning: order_monoid_with_zero_hom.to_order_monoid_hom_eq_coe -> OrderMonoidWithZeroHom.toOrderMonoidHom_eq_coe is a dubious translation:
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -415,10 +415,7 @@ theorem coe_mk (f : α →* β) (h) : (OrderMonoidHom.mk f h : α → β) = f :=
#align order_add_monoid_hom.coe_mk OrderAddMonoidHom.coe_mk
/- warning: order_monoid_hom.mk_coe -> OrderMonoidHom.mk_coe is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (h : Monotone.{u1, u2} α β _inst_1 _inst_2 (MonoidHom.toFun.{u1, u2} α β _inst_5 _inst_6 ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (MonoidHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f))), Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (MonoidHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f) h) f
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α _inst_5) (MulOneClass.toOne.{u1} β _inst_6) (MonoidHom.toOneHom.{u2, u1} α β _inst_5 _inst_6 (MonoidHomClass.toMonoidHom.{u2, u1, max u2 u1} α β (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)))), Eq.{max (succ u2) (succ u1)} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 (MonoidHomClass.toMonoidHom.{u2, u1, max u2 u1} α β (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f) h) f
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.mk_coe OrderMonoidHom.mk_coeₓ'. -/
@[simp, to_additive]
theorem mk_coe (f : α →*o β) (h) : OrderMonoidHom.mk (f : α →* β) h = f :=
@@ -565,10 +562,7 @@ def comp (f : β →*o γ) (g : α →*o β) : α →*o γ :=
-/
/- warning: order_monoid_hom.coe_comp -> OrderMonoidHom.coe_comp is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u3} γ] (f : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u3)} ((fun (_x : OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) => α -> γ) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (fun (_x : OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) => α -> γ) (OrderMonoidHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (fun (_x : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) => β -> γ) (OrderMonoidHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) g))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] (f : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7))) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6))) g))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_comp OrderMonoidHom.coe_compₓ'. -/
@[simp, to_additive]
theorem coe_comp (f : β →*o γ) (g : α →*o β) : (f.comp g : α → γ) = f ∘ g :=
@@ -577,10 +571,7 @@ theorem coe_comp (f : β →*o γ) (g : α →*o β) : (f.comp g : α → γ) =
#align order_add_monoid_hom.coe_comp OrderAddMonoidHom.coe_comp
/- warning: order_monoid_hom.comp_apply -> OrderMonoidHom.comp_apply is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u3} γ] (f : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (fun (_x : OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) => α -> γ) (OrderMonoidHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (fun (_x : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) => β -> γ) (OrderMonoidHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) g a))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] (f : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7))) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6))) g a))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.comp_apply OrderMonoidHom.comp_applyₓ'. -/
@[simp, to_additive]
theorem comp_apply (f : β →*o γ) (g : α →*o β) (a : α) : (f.comp g) a = f (g a) :=
@@ -589,10 +580,7 @@ theorem comp_apply (f : β →*o γ) (g : α →*o β) (a : α) : (f.comp g) a =
#align order_add_monoid_hom.comp_apply OrderAddMonoidHom.comp_apply
/- warning: order_monoid_hom.coe_comp_monoid_hom -> OrderMonoidHom.coe_comp_monoidHom is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u3} γ] (f : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u3) (succ u1)} (MonoidHom.{u1, u3} α γ _inst_5 _inst_7) ((fun (a : Sort.{max (succ u1) (succ u3)}) (b : Sort.{max (succ u3) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u3), max (succ u3) (succ u1)} a b] => self.0) (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (MonoidHom.{u1, u3} α γ _inst_5 _inst_7) (HasLiftT.mk.{max (succ u1) (succ u3), max (succ u3) (succ u1)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (MonoidHom.{u1, u3} α γ _inst_5 _inst_7) (CoeTCₓ.coe.{max (succ u1) (succ u3), max (succ u3) (succ u1)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (MonoidHom.{u1, u3} α γ _inst_5 _inst_7) (MonoidHom.hasCoeT.{u1, u3, max u1 u3} α γ (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) _inst_5 _inst_7 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidHom.orderMonoidHomClass.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7))))) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (MonoidHom.comp.{u1, u2, u3} α β γ _inst_5 _inst_6 _inst_7 ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u3) (succ u2)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u3) (succ u2)} a b] => self.0) (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (MonoidHom.{u2, u3} β γ _inst_6 _inst_7) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u3) (succ u2)} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (MonoidHom.{u2, u3} β γ _inst_6 _inst_7) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u3) (succ u2)} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (MonoidHom.{u2, u3} β γ _inst_6 _inst_7) (MonoidHom.hasCoeT.{u2, u3, max u2 u3} β γ (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) _inst_6 _inst_7 (OrderMonoidHomClass.toMonoidHomClass.{max u2 u3, u2, u3} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidHom.orderMonoidHomClass.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7))))) f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (MonoidHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) g))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] (f : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (MonoidHom.{u1, u2} α γ _inst_5 _inst_7) (MonoidHomClass.toMonoidHom.{u1, u2, max u1 u2} α γ (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) _inst_5 _inst_7 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7)) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (MonoidHom.comp.{u1, u3, u2} α β γ _inst_5 _inst_6 _inst_7 (MonoidHomClass.toMonoidHom.{u3, u2, max u3 u2} β γ (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) _inst_6 _inst_7 (OrderMonoidHomClass.toMonoidHomClass.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7)) f) (MonoidHomClass.toMonoidHom.{u1, u3, max u1 u3} α β (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)) g))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_comp_monoid_hom OrderMonoidHom.coe_comp_monoidHomₓ'. -/
@[simp, to_additive]
theorem coe_comp_monoidHom (f : β →*o γ) (g : α →*o β) :
@@ -602,10 +590,7 @@ theorem coe_comp_monoidHom (f : β →*o γ) (g : α →*o β) :
#align order_add_monoid_hom.coe_comp_add_monoid_hom OrderAddMonoidHom.coe_comp_addMonoidHom
/- warning: order_monoid_hom.coe_comp_order_hom -> OrderMonoidHom.coe_comp_orderHom is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u3} γ] (f : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u3)} (OrderHom.{u1, u3} α γ _inst_1 _inst_3) ((fun (a : Sort.{max (succ u1) (succ u3)}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{max (succ u1) (succ u3), max (succ u1) (succ u3)} a b] => self.0) (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderHom.{u1, u3} α γ _inst_1 _inst_3) (HasLiftT.mk.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderHom.{u1, u3} α γ _inst_1 _inst_3) (CoeTCₓ.coe.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderHom.{u1, u3} α γ _inst_1 _inst_3) (OrderHomClass.OrderHom.hasCoeT.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidHom.orderMonoidHomClass.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7))))) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (OrderHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (OrderHom.{u2, u3} β γ _inst_2 _inst_3) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (OrderHom.{u2, u3} β γ _inst_2 _inst_3) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (OrderHom.{u2, u3} β γ _inst_2 _inst_3) (OrderHomClass.OrderHom.hasCoeT.{max u2 u3, u2, u3} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 (OrderMonoidHomClass.toOrderHomClass.{max u2 u3, u2, u3} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidHom.orderMonoidHomClass.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7))))) 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) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (OrderHomClass.OrderHom.hasCoeT.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) g))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] (f : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (OrderHom.{u1, u2} α γ _inst_1 _inst_3) (OrderHomClass.toOrderHom.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7)) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (OrderHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 (OrderHomClass.toOrderHom.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7)) f) (OrderHomClass.toOrderHom.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)) g))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_comp_order_hom OrderMonoidHom.coe_comp_orderHomₓ'. -/
@[simp, to_additive]
theorem coe_comp_orderHom (f : β →*o γ) (g : α →*o β) : (f.comp g : α →o γ) = (f : β →o γ).comp g :=
@@ -651,10 +636,7 @@ theorem id_comp (f : α →*o β) : (OrderMonoidHom.id β).comp f = f :=
#align order_add_monoid_hom.id_comp OrderAddMonoidHom.id_comp
/- warning: order_monoid_hom.cancel_right -> OrderMonoidHom.cancel_right is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u3} γ] {g₁ : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7} {g₂ : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₁ f) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₂ f)) (Eq.{max (succ u2) (succ u3)} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) g₁ g₂))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] {g₁ : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {g₂ : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Surjective.{succ u1, succ u3} α β (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₁ f) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₂ f)) (Eq.{max (succ u3) (succ u2)} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) g₁ g₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.cancel_right OrderMonoidHom.cancel_rightₓ'. -/
@[to_additive]
theorem cancel_right {g₁ g₂ : β →*o γ} {f : α →*o β} (hf : Function.Surjective f) :
@@ -664,10 +646,7 @@ theorem cancel_right {g₁ g₂ : β →*o γ} {f : α →*o β} (hf : Function.
#align order_add_monoid_hom.cancel_right OrderAddMonoidHom.cancel_right
/- warning: order_monoid_hom.cancel_left -> OrderMonoidHom.cancel_left is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u3} γ] {g : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f₁ : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {f₂ : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (fun (_x : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) => β -> γ) (OrderMonoidHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₁) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₂)) (Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f₁ f₂))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] {g : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f₁ : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6} {f₂ : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₁) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₂)) (Eq.{max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) f₁ f₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.cancel_left OrderMonoidHom.cancel_leftₓ'. -/
@[to_additive]
theorem cancel_left {g : β →*o γ} {f₁ f₂ : α →*o β} (hg : Function.Injective g) :
@@ -745,10 +724,7 @@ instance : Mul (α →*o β) :=
⟨fun f g => { (f * g : α →* β) with monotone' := f.monotone'.mul' g.monotone' }⟩
/- warning: order_monoid_hom.coe_mul -> OrderMonoidHom.coe_mul is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : OrderedCommMonoid.{u1} α] [_inst_2 : OrderedCommMonoid.{u2} β] (f : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (g : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))), Eq.{succ (max u1 u2)} (α -> β) (coeFn.{succ (max u1 u2), succ (max u1 u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (fun (_x : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (instHMul.{max u1 u2} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.hasMul.{u1, u2} α β _inst_1 _inst_2)) f g)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (α -> β) (α -> β) (α -> β) (instHMul.{max u1 u2} (α -> β) (Pi.instMul.{u1, u2} α (fun (ᾰ : α) => β) (fun (i : α) => MulOneClass.toHasMul.{u2} β (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (fun (_x : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (fun (_x : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) g))
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : OrderedCommMonoid.{u2} α] [_inst_2 : OrderedCommMonoid.{u1} β] (f : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (g : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))), 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} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (instHMul.{max u2 u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.instMulOrderMonoidHomToPreorderToPartialOrderToPreorderToPartialOrderToMulOneClassToMonoidToCommMonoidToMulOneClassToMonoidToCommMonoid.{u2, u1} α β _inst_1 _inst_2)) f g)) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (instHMul.{max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (Pi.instMul.{u2, u1} α (fun (ᾰ : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (fun (i : α) => MulOneClass.toMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (Monoid.toMulOneClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (CommMonoid.toMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (OrderedCommMonoid.toCommMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) _inst_2)))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) f) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) g))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_mul OrderMonoidHom.coe_mulₓ'. -/
@[simp, to_additive]
theorem coe_mul (f g : α →*o β) : ⇑(f * g) = f * g :=
@@ -757,10 +733,7 @@ theorem coe_mul (f g : α →*o β) : ⇑(f * g) = f * g :=
#align order_add_monoid_hom.coe_add OrderAddMonoidHom.coe_add
/- warning: order_monoid_hom.mul_apply -> OrderMonoidHom.mul_apply is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : OrderedCommMonoid.{u1} α] [_inst_2 : OrderedCommMonoid.{u2} β] (f : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (g : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (fun (_x : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (instHMul.{max u1 u2} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.hasMul.{u1, u2} α β _inst_1 _inst_2)) f g) a) (HMul.hMul.{u2, u2, u2} β β β (instHMul.{u2} β (MulOneClass.toHasMul.{u2} β (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (fun (_x : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (fun (_x : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) g a))
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : OrderedCommMonoid.{u2} α] [_inst_2 : OrderedCommMonoid.{u1} β] (f : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (g : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (instHMul.{max u2 u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.instMulOrderMonoidHomToPreorderToPartialOrderToPreorderToPartialOrderToMulOneClassToMonoidToCommMonoidToMulOneClassToMonoidToCommMonoid.{u2, u1} α β _inst_1 _inst_2)) f g) a) (HMul.hMul.{u1, u1, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (instHMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (MulOneClass.toMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (Monoid.toMulOneClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (CommMonoid.toMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedCommMonoid.toCommMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) g a))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.mul_apply OrderMonoidHom.mul_applyₓ'. -/
@[simp, to_additive]
theorem mul_apply (f g : α →*o β) (a : α) : (f * g) a = f a * g a :=
@@ -769,10 +742,7 @@ theorem mul_apply (f g : α →*o β) (a : α) : (f * g) a = f a * g a :=
#align order_add_monoid_hom.add_apply OrderAddMonoidHom.add_apply
/- warning: order_monoid_hom.mul_comp -> OrderMonoidHom.mul_comp is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : OrderedCommMonoid.{u1} α] [_inst_2 : OrderedCommMonoid.{u2} β] [_inst_3 : OrderedCommMonoid.{u3} γ] (g₁ : OrderMonoidHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (g₂ : OrderMonoidHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (f : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))), Eq.{max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (OrderMonoidHom.comp.{u1, u2, u3} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3))) (HMul.hMul.{max u2 u3, max u2 u3, max u2 u3} (OrderMonoidHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (OrderMonoidHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (OrderMonoidHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (instHMul.{max u2 u3} (OrderMonoidHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (OrderMonoidHom.hasMul.{u2, u3} β γ _inst_2 _inst_3)) g₁ g₂) f) (HMul.hMul.{max u1 u3, max u1 u3, max u1 u3} (OrderMonoidHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (OrderMonoidHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (OrderMonoidHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (instHMul.{max u1 u3} (OrderMonoidHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (OrderMonoidHom.hasMul.{u1, u3} α γ _inst_1 _inst_3)) (OrderMonoidHom.comp.{u1, u2, u3} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3))) g₁ f) (OrderMonoidHom.comp.{u1, u2, u3} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3))) g₂ f))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : OrderedCommMonoid.{u1} α] [_inst_2 : OrderedCommMonoid.{u3} β] [_inst_3 : OrderedCommMonoid.{u2} γ] (g₁ : OrderMonoidHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (g₂ : OrderMonoidHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (f : OrderMonoidHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2)))), Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (OrderMonoidHom.comp.{u1, u3, u2} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3))) (HMul.hMul.{max u3 u2, max u3 u2, max u3 u2} (OrderMonoidHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (OrderMonoidHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (OrderMonoidHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (instHMul.{max u3 u2} (OrderMonoidHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (OrderMonoidHom.instMulOrderMonoidHomToPreorderToPartialOrderToPreorderToPartialOrderToMulOneClassToMonoidToCommMonoidToMulOneClassToMonoidToCommMonoid.{u3, u2} β γ _inst_2 _inst_3)) g₁ g₂) f) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (OrderMonoidHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (OrderMonoidHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (instHMul.{max u1 u2} (OrderMonoidHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (OrderMonoidHom.instMulOrderMonoidHomToPreorderToPartialOrderToPreorderToPartialOrderToMulOneClassToMonoidToCommMonoidToMulOneClassToMonoidToCommMonoid.{u1, u2} α γ _inst_1 _inst_3)) (OrderMonoidHom.comp.{u1, u3, u2} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3))) g₁ f) (OrderMonoidHom.comp.{u1, u3, u2} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3))) g₂ f))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.mul_comp OrderMonoidHom.mul_compₓ'. -/
@[to_additive]
theorem mul_comp (g₁ g₂ : β →*o γ) (f : α →*o β) : (g₁ * g₂).comp f = g₁.comp f * g₂.comp f :=
@@ -781,10 +751,7 @@ theorem mul_comp (g₁ g₂ : β →*o γ) (f : α →*o β) : (g₁ * g₂).com
#align order_add_monoid_hom.add_comp OrderAddMonoidHom.add_comp
/- warning: order_monoid_hom.comp_mul -> OrderMonoidHom.comp_mul is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : OrderedCommMonoid.{u1} α] [_inst_2 : OrderedCommMonoid.{u2} β] [_inst_3 : OrderedCommMonoid.{u3} γ] (g : OrderMonoidHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (f₁ : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (f₂ : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))), Eq.{max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (OrderMonoidHom.comp.{u1, u2, u3} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3))) g (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (instHMul.{max u1 u2} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.hasMul.{u1, u2} α β _inst_1 _inst_2)) f₁ f₂)) (HMul.hMul.{max u1 u3, max u1 u3, max u1 u3} (OrderMonoidHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (OrderMonoidHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (OrderMonoidHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (instHMul.{max u1 u3} (OrderMonoidHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3)))) (OrderMonoidHom.hasMul.{u1, u3} α γ _inst_1 _inst_3)) (OrderMonoidHom.comp.{u1, u2, u3} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3))) g f₁) (OrderMonoidHom.comp.{u1, u2, u3} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))) (Monoid.toMulOneClass.{u3} γ (CommMonoid.toMonoid.{u3} γ (OrderedCommMonoid.toCommMonoid.{u3} γ _inst_3))) g f₂))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : OrderedCommMonoid.{u1} α] [_inst_2 : OrderedCommMonoid.{u3} β] [_inst_3 : OrderedCommMonoid.{u2} γ] (g : OrderMonoidHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (f₁ : OrderMonoidHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2)))) (f₂ : OrderMonoidHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2)))), Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (OrderMonoidHom.comp.{u1, u3, u2} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3))) g (HMul.hMul.{max u1 u3, max u1 u3, max u1 u3} (OrderMonoidHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2)))) (OrderMonoidHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2)))) (OrderMonoidHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2)))) (instHMul.{max u1 u3} (OrderMonoidHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2)))) (OrderMonoidHom.instMulOrderMonoidHomToPreorderToPartialOrderToPreorderToPartialOrderToMulOneClassToMonoidToCommMonoidToMulOneClassToMonoidToCommMonoid.{u1, u3} α β _inst_1 _inst_2)) f₁ f₂)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (OrderMonoidHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (OrderMonoidHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (instHMul.{max u1 u2} (OrderMonoidHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3)))) (OrderMonoidHom.instMulOrderMonoidHomToPreorderToPartialOrderToPreorderToPartialOrderToMulOneClassToMonoidToCommMonoidToMulOneClassToMonoidToCommMonoid.{u1, u2} α γ _inst_1 _inst_3)) (OrderMonoidHom.comp.{u1, u3, u2} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3))) g f₁) (OrderMonoidHom.comp.{u1, u3, u2} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β _inst_2)) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ _inst_3)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u3} β (CommMonoid.toMonoid.{u3} β (OrderedCommMonoid.toCommMonoid.{u3} β _inst_2))) (Monoid.toMulOneClass.{u2} γ (CommMonoid.toMonoid.{u2} γ (OrderedCommMonoid.toCommMonoid.{u2} γ _inst_3))) g f₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.comp_mul OrderMonoidHom.comp_mulₓ'. -/
@[to_additive]
theorem comp_mul (g : β →*o γ) (f₁ f₂ : α →*o β) : g.comp (f₁ * f₂) = g.comp f₁ * g.comp f₂ :=
@@ -880,10 +847,7 @@ instance : CoeFun (α →*₀o β) fun _ => α → β :=
FunLike.hasCoeToFun
/- warning: order_monoid_with_zero_hom.ext -> OrderMonoidWithZeroHom.ext is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] {f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {g : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f g)
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] {f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {g : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (forall (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{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} (OrderMonoidWithZeroHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{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} (OrderMonoidWithZeroHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)))) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f g)
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.ext OrderMonoidWithZeroHom.extₓ'. -/
-- Other lemmas should be accessed through the `fun_like` API
@[ext]
@@ -913,10 +877,7 @@ theorem coe_mk (f : α →*₀ β) (h) : (OrderMonoidWithZeroHom.mk f h : α →
#align order_monoid_with_zero_hom.coe_mk OrderMonoidWithZeroHom.coe_mk
/- warning: order_monoid_with_zero_hom.mk_coe -> OrderMonoidWithZeroHom.mk_coe is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (h : Monotone.{u1, u2} α β _inst_1 _inst_2 (MonoidWithZeroHom.toFun.{u1, u2} α β _inst_5 _inst_6 ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (MonoidWithZeroHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f))), Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidWithZeroHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (MonoidWithZeroHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f) h) f
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (ZeroHom.toFun.{u2, u1} α β (MulZeroOneClass.toZero.{u2} α _inst_5) (MulZeroOneClass.toZero.{u1} β _inst_6) (MonoidWithZeroHom.toZeroHom.{u2, u1} α β _inst_5 _inst_6 (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u2, u1, max u2 u1} α β (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)))), Eq.{max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidWithZeroHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u2, u1, max u2 u1} α β (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f) h) f
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.mk_coe OrderMonoidWithZeroHom.mk_coeₓ'. -/
@[simp]
theorem mk_coe (f : α →*₀o β) (h) : OrderMonoidWithZeroHom.mk (f : α →*₀ β) h = f :=
@@ -1040,10 +1001,7 @@ def comp (f : β →*₀o γ) (g : α →*₀o β) : α →*₀o γ :=
-/
/- warning: order_monoid_with_zero_hom.coe_comp -> OrderMonoidWithZeroHom.coe_comp is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] [_inst_7 : MulZeroOneClass.{u3} γ] (f : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u3)} ((fun (_x : OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) => α -> γ) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (fun (_x : OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) => α -> γ) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (fun (_x : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) => β -> γ) (OrderMonoidWithZeroHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) g))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] (f : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7)))) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7)))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)))) g))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_comp OrderMonoidWithZeroHom.coe_compₓ'. -/
@[simp]
theorem coe_comp (f : β →*₀o γ) (g : α →*₀o β) : (f.comp g : α → γ) = f ∘ g :=
@@ -1051,10 +1009,7 @@ theorem coe_comp (f : β →*₀o γ) (g : α →*₀o β) : (f.comp g : α →
#align order_monoid_with_zero_hom.coe_comp OrderMonoidWithZeroHom.coe_comp
/- warning: order_monoid_with_zero_hom.comp_apply -> OrderMonoidWithZeroHom.comp_apply is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] [_inst_7 : MulZeroOneClass.{u3} γ] (f : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (fun (_x : OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) => α -> γ) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (fun (_x : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) => β -> γ) (OrderMonoidWithZeroHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) g a))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] (f : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7)))) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7)))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)))) g a))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.comp_apply OrderMonoidWithZeroHom.comp_applyₓ'. -/
@[simp]
theorem comp_apply (f : β →*₀o γ) (g : α →*₀o β) (a : α) : (f.comp g) a = f (g a) :=
@@ -1062,10 +1017,7 @@ theorem comp_apply (f : β →*₀o γ) (g : α →*₀o β) (a : α) : (f.comp
#align order_monoid_with_zero_hom.comp_apply OrderMonoidWithZeroHom.comp_apply
/- warning: order_monoid_with_zero_hom.coe_comp_monoid_with_zero_hom -> OrderMonoidWithZeroHom.coe_comp_monoidWithZeroHom is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] [_inst_7 : MulZeroOneClass.{u3} γ] (f : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u3) (succ u1)} (MonoidWithZeroHom.{u1, u3} α γ _inst_5 _inst_7) ((fun (a : Sort.{max (succ u1) (succ u3)}) (b : Sort.{max (succ u3) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u3), max (succ u3) (succ u1)} a b] => self.0) (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (MonoidWithZeroHom.{u1, u3} α γ _inst_5 _inst_7) (HasLiftT.mk.{max (succ u1) (succ u3), max (succ u3) (succ u1)} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (MonoidWithZeroHom.{u1, u3} α γ _inst_5 _inst_7) (CoeTCₓ.coe.{max (succ u1) (succ u3), max (succ u3) (succ u1)} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (MonoidWithZeroHom.{u1, u3} α γ _inst_5 _inst_7) (MonoidWithZeroHom.hasCoeT.{u1, u3, max u1 u3} α γ (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) _inst_5 _inst_7 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7))))) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (MonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_5 _inst_6 _inst_7 ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u3) (succ u2)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u3) (succ u2)} a b] => self.0) (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (MonoidWithZeroHom.{u2, u3} β γ _inst_6 _inst_7) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u3) (succ u2)} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (MonoidWithZeroHom.{u2, u3} β γ _inst_6 _inst_7) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u3) (succ u2)} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (MonoidWithZeroHom.{u2, u3} β γ _inst_6 _inst_7) (MonoidWithZeroHom.hasCoeT.{u2, u3, max u2 u3} β γ (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) _inst_6 _inst_7 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u2 u3, u2, u3} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7))))) f) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (MonoidWithZeroHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) g))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] (f : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (MonoidWithZeroHom.{u1, u2} α γ _inst_5 _inst_7) (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u1, u2, max u1 u2} α γ (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) _inst_5 _inst_7 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7)) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (MonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_5 _inst_6 _inst_7 (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u3, u2, max u3 u2} β γ (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) _inst_6 _inst_7 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7)) f) (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u1, u3, max u1 u3} α β (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)) g))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_comp_monoid_with_zero_hom OrderMonoidWithZeroHom.coe_comp_monoidWithZeroHomₓ'. -/
@[simp]
theorem coe_comp_monoidWithZeroHom (f : β →*₀o γ) (g : α →*₀o β) :
@@ -1074,10 +1026,7 @@ theorem coe_comp_monoidWithZeroHom (f : β →*₀o γ) (g : α →*₀o β) :
#align order_monoid_with_zero_hom.coe_comp_monoid_with_zero_hom OrderMonoidWithZeroHom.coe_comp_monoidWithZeroHom
/- warning: order_monoid_with_zero_hom.coe_comp_order_monoid_hom -> OrderMonoidWithZeroHom.coe_comp_orderMonoidHom is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] [_inst_7 : MulZeroOneClass.{u3} γ] (f : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} γ _inst_7)) ((fun (a : Sort.{max (succ u1) (succ u3)}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{max (succ u1) (succ u3), max (succ u1) (succ u3)} a b] => self.0) (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} γ _inst_7)) (HasLiftT.mk.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} γ _inst_7)) (CoeTCₓ.coe.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} γ _inst_7)) (OrderMonoidHom.hasCoeT.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7))))) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (MulZeroOneClass.toMulOneClass.{u3} γ _inst_7) ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (MulZeroOneClass.toMulOneClass.{u3} γ _inst_7)) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (MulZeroOneClass.toMulOneClass.{u3} γ _inst_7)) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (MulZeroOneClass.toMulOneClass.{u3} γ _inst_7)) (OrderMonoidHom.hasCoeT.{max u2 u3, u2, u3} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (MulZeroOneClass.toMulOneClass.{u3} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u3, u2, u3} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7))))) 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) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (OrderMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) g))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] (f : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7)) (OrderMonoidHomClass.toOrderMonoidHom.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7)) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidHomClass.toOrderMonoidHom.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7)) f) (OrderMonoidHomClass.toOrderMonoidHom.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)) g))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_comp_order_monoid_hom OrderMonoidWithZeroHom.coe_comp_orderMonoidHomₓ'. -/
@[simp]
theorem coe_comp_orderMonoidHom (f : β →*₀o γ) (g : α →*₀o β) :
@@ -1120,10 +1069,7 @@ theorem id_comp (f : α →*₀o β) : (OrderMonoidWithZeroHom.id β).comp f = f
#align order_monoid_with_zero_hom.id_comp OrderMonoidWithZeroHom.id_comp
/- warning: order_monoid_with_zero_hom.cancel_right -> OrderMonoidWithZeroHom.cancel_right is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] [_inst_7 : MulZeroOneClass.{u3} γ] {g₁ : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7} {g₂ : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₁ f) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₂ f)) (Eq.{max (succ u2) (succ u3)} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) g₁ g₂))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] {g₁ : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {g₂ : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Surjective.{succ u1, succ u3} α β (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₁ f) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₂ f)) (Eq.{max (succ u3) (succ u2)} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) g₁ g₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.cancel_right OrderMonoidWithZeroHom.cancel_rightₓ'. -/
theorem cancel_right {g₁ g₂ : β →*₀o γ} {f : α →*₀o β} (hf : Function.Surjective f) :
g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
@@ -1131,10 +1077,7 @@ theorem cancel_right {g₁ g₂ : β →*₀o γ} {f : α →*₀o β} (hf : Fun
#align order_monoid_with_zero_hom.cancel_right OrderMonoidWithZeroHom.cancel_right
/- warning: order_monoid_with_zero_hom.cancel_left -> OrderMonoidWithZeroHom.cancel_left is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] [_inst_7 : MulZeroOneClass.{u3} γ] {g : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f₁ : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {f₂ : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (fun (_x : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) => β -> γ) (OrderMonoidWithZeroHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₁) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₂)) (Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f₁ f₂))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] {g : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f₁ : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6} {f₂ : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7)))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₁) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₂)) (Eq.{max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) f₁ f₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.cancel_left OrderMonoidWithZeroHom.cancel_leftₓ'. -/
theorem cancel_left {g : β →*₀o γ} {f₁ f₂ : α →*₀o β} (hg : Function.Injective g) :
g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
@@ -1154,10 +1097,7 @@ instance : Mul (α →*₀o β) :=
⟨fun f g => { (f * g : α →*₀ β) with monotone' := f.monotone'.mul' g.monotone' }⟩
/- warning: order_monoid_with_zero_hom.coe_mul -> OrderMonoidWithZeroHom.coe_mul is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u1} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (g : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))), Eq.{succ (max u1 u2)} (α -> β) (coeFn.{succ (max u1 u2), succ (max u1 u2)} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (instHMul.{max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.hasMul.{u1, u2} α β _inst_1 _inst_2)) f g)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (α -> β) (α -> β) (α -> β) (instHMul.{max u1 u2} (α -> β) (Pi.instMul.{u1, u2} α (fun (ᾰ : α) => β) (fun (i : α) => MulZeroClass.toHasMul.{u2} β (MulZeroOneClass.toMulZeroClass.{u2} β (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) g))
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u2} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (g : OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))), 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} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (instHMul.{max u2 u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.instMulOrderMonoidWithZeroHomToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZeroToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZero.{u2, u1} α β _inst_1 _inst_2)) f g)) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (instHMul.{max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (Pi.instMul.{u2, u1} α (fun (ᾰ : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (fun (i : α) => MulZeroClass.toMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (MulZeroOneClass.toMulZeroClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (MonoidWithZero.toMulZeroOneClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (CommMonoidWithZero.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) _inst_2))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) f) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) g))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_mul OrderMonoidWithZeroHom.coe_mulₓ'. -/
@[simp]
theorem coe_mul (f g : α →*₀o β) : ⇑(f * g) = f * g :=
@@ -1165,10 +1105,7 @@ theorem coe_mul (f g : α →*₀o β) : ⇑(f * g) = f * g :=
#align order_monoid_with_zero_hom.coe_mul OrderMonoidWithZeroHom.coe_mul
/- warning: order_monoid_with_zero_hom.mul_apply -> OrderMonoidWithZeroHom.mul_apply is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u1} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (g : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (instHMul.{max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.hasMul.{u1, u2} α β _inst_1 _inst_2)) f g) a) (HMul.hMul.{u2, u2, u2} β β β (instHMul.{u2} β (MulZeroClass.toHasMul.{u2} β (MulZeroOneClass.toMulZeroClass.{u2} β (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) g a))
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u2} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (g : OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (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} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (instHMul.{max u2 u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.instMulOrderMonoidWithZeroHomToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZeroToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZero.{u2, u1} α β _inst_1 _inst_2)) f g) a) (HMul.hMul.{u1, u1, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (instHMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (MulZeroClass.toMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (MulZeroOneClass.toMulZeroClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (MonoidWithZero.toMulZeroOneClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (CommMonoidWithZero.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2)))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) g a))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.mul_apply OrderMonoidWithZeroHom.mul_applyₓ'. -/
@[simp]
theorem mul_apply (f g : α →*₀o β) (a : α) : (f * g) a = f a * g a :=
@@ -1176,20 +1113,14 @@ theorem mul_apply (f g : α →*₀o β) (a : α) : (f * g) a = f a * g a :=
#align order_monoid_with_zero_hom.mul_apply OrderMonoidWithZeroHom.mul_apply
/- warning: order_monoid_with_zero_hom.mul_comp -> OrderMonoidWithZeroHom.mul_comp is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u1} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u2} β] [_inst_3 : LinearOrderedCommMonoidWithZero.{u3} γ] (g₁ : OrderMonoidWithZeroHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (g₂ : OrderMonoidWithZeroHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (f : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))), Eq.{max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3))) (HMul.hMul.{max u2 u3, max u2 u3, max u2 u3} (OrderMonoidWithZeroHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (OrderMonoidWithZeroHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (OrderMonoidWithZeroHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (instHMul.{max u2 u3} (OrderMonoidWithZeroHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (OrderMonoidWithZeroHom.hasMul.{u2, u3} β γ _inst_2 _inst_3)) g₁ g₂) f) (HMul.hMul.{max u1 u3, max u1 u3, max u1 u3} (OrderMonoidWithZeroHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (OrderMonoidWithZeroHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (OrderMonoidWithZeroHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (instHMul.{max u1 u3} (OrderMonoidWithZeroHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (OrderMonoidWithZeroHom.hasMul.{u1, u3} α γ _inst_1 _inst_3)) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3))) g₁ f) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3))) g₂ f))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u1} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u3} β] [_inst_3 : LinearOrderedCommMonoidWithZero.{u2} γ] (g₁ : OrderMonoidWithZeroHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (g₂ : OrderMonoidWithZeroHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (f : OrderMonoidWithZeroHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2)))), Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3))) (HMul.hMul.{max u3 u2, max u3 u2, max u3 u2} (OrderMonoidWithZeroHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (OrderMonoidWithZeroHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (OrderMonoidWithZeroHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (instHMul.{max u3 u2} (OrderMonoidWithZeroHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (OrderMonoidWithZeroHom.instMulOrderMonoidWithZeroHomToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZeroToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZero.{u3, u2} β γ _inst_2 _inst_3)) g₁ g₂) f) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (OrderMonoidWithZeroHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (OrderMonoidWithZeroHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (instHMul.{max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (OrderMonoidWithZeroHom.instMulOrderMonoidWithZeroHomToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZeroToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZero.{u1, u2} α γ _inst_1 _inst_3)) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3))) g₁ f) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3))) g₂ f))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.mul_comp OrderMonoidWithZeroHom.mul_compₓ'. -/
theorem mul_comp (g₁ g₂ : β →*₀o γ) (f : α →*₀o β) : (g₁ * g₂).comp f = g₁.comp f * g₂.comp f :=
rfl
#align order_monoid_with_zero_hom.mul_comp OrderMonoidWithZeroHom.mul_comp
/- warning: order_monoid_with_zero_hom.comp_mul -> OrderMonoidWithZeroHom.comp_mul is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u1} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u2} β] [_inst_3 : LinearOrderedCommMonoidWithZero.{u3} γ] (g : OrderMonoidWithZeroHom.{u2, u3} β γ (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (f₁ : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (f₂ : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))), Eq.{max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3))) g (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (instHMul.{max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.hasMul.{u1, u2} α β _inst_1 _inst_2)) f₁ f₂)) (HMul.hMul.{max u1 u3, max u1 u3, max u1 u3} (OrderMonoidWithZeroHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (OrderMonoidWithZeroHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (OrderMonoidWithZeroHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (instHMul.{max u1 u3} (OrderMonoidWithZeroHom.{u1, u3} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3)))) (OrderMonoidWithZeroHom.hasMul.{u1, u3} α γ _inst_1 _inst_3)) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3))) g f₁) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (PartialOrder.toPreorder.{u3} γ (OrderedCommMonoid.toPartialOrder.{u3} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u3} γ (CommMonoidWithZero.toMonoidWithZero.{u3} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} γ _inst_3))) g f₂))
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u1} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u3} β] [_inst_3 : LinearOrderedCommMonoidWithZero.{u2} γ] (g : OrderMonoidWithZeroHom.{u3, u2} β γ (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (f₁ : OrderMonoidWithZeroHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2)))) (f₂ : OrderMonoidWithZeroHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2)))), Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3))) g (HMul.hMul.{max u1 u3, max u1 u3, max u1 u3} (OrderMonoidWithZeroHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2)))) (OrderMonoidWithZeroHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2)))) (OrderMonoidWithZeroHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2)))) (instHMul.{max u1 u3} (OrderMonoidWithZeroHom.{u1, u3} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2)))) (OrderMonoidWithZeroHom.instMulOrderMonoidWithZeroHomToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZeroToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZero.{u1, u3} α β _inst_1 _inst_2)) f₁ f₂)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (OrderMonoidWithZeroHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (OrderMonoidWithZeroHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (instHMul.{max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3)))) (OrderMonoidWithZeroHom.instMulOrderMonoidWithZeroHomToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZeroToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZero.{u1, u2} α γ _inst_1 _inst_3)) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3))) g f₁) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u3} β (OrderedCommMonoid.toPartialOrder.{u3} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u3} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u3} β _inst_2)))) (PartialOrder.toPreorder.{u2} γ (OrderedCommMonoid.toPartialOrder.{u2} γ (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} γ (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} γ _inst_3)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u3} β (CommMonoidWithZero.toMonoidWithZero.{u3} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u3} β _inst_2))) (MonoidWithZero.toMulZeroOneClass.{u2} γ (CommMonoidWithZero.toMonoidWithZero.{u2} γ (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} γ _inst_3))) g f₂))
+<too large>
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.comp_mul OrderMonoidWithZeroHom.comp_mulₓ'. -/
theorem comp_mul (g : β →*₀o γ) (f₁ f₂ : α →*₀o β) : g.comp (f₁ * f₂) = g.comp f₁ * g.comp f₂ :=
ext fun _ => map_mul g _ _
mathlib commit https://github.com/leanprover-community/mathlib/commit/95a87616d63b3cb49d3fe678d416fbe9c4217bf4
@@ -233,7 +233,7 @@ include β
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) {a : α}, (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) a) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (RelHomClass.toFunLike.{u1, u2, u3} F α β (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)))) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) {a : α}, (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (AddMonoid.toZero.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{u1, u3, u2} F α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (_x : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) _x x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) {a : α}, (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (AddMonoid.toZero.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{u1, u3, u2} F α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (_x : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) _x x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a))
Case conversion may be inaccurate. Consider using '#align map_nonneg map_nonnegₓ'. -/
theorem map_nonneg (ha : 0 ≤ a) : 0 ≤ f a :=
by
@@ -245,7 +245,7 @@ theorem map_nonneg (ha : 0 ≤ a) : 0 ≤ f a :=
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) {a : α}, (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))))) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (RelHomClass.toFunLike.{u1, u2, u3} F α β (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)))) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) {a : α}, (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (AddMonoid.toZero.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1)))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{u1, u3, u2} F α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (_x : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) _x x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) _inst_2))))))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) {a : α}, (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (AddMonoid.toZero.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1)))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{u1, u3, u2} F α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.1902 x._@.Mathlib.Order.Hom.Basic._hyg.1904) (fun (_x : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1926 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) _x x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))))))
Case conversion may be inaccurate. Consider using '#align map_nonpos map_nonposₓ'. -/
theorem map_nonpos (ha : a ≤ 0) : f a ≤ 0 :=
by
@@ -309,7 +309,7 @@ variable [CovariantClass β β (· + ·) (· < ·)]
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictMono.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3040 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3042 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3040 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3042) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3055 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3057 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3055 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3057)], Iff (StrictMono.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3046 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3048 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3046 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3048) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3061 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3063 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3061 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3063)], Iff (StrictMono.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
Case conversion may be inaccurate. Consider using '#align strict_mono_iff_map_pos strictMono_iff_map_posₓ'. -/
theorem strictMono_iff_map_pos : StrictMono (f : α → β) ↔ ∀ a, 0 < a → 0 < f a :=
⟨fun h a => by
@@ -323,7 +323,7 @@ theorem strictMono_iff_map_pos : StrictMono (f : α → β) ↔ ∀ a, 0 < a →
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictAnti.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3217 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3219 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3217 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3219) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3232 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3234 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3232 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3234)], Iff (StrictAnti.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3223 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3225 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3223 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3225) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3238 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3240 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3238 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3240)], Iff (StrictAnti.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
Case conversion may be inaccurate. Consider using '#align strict_anti_iff_map_neg strictAnti_iff_map_negₓ'. -/
theorem strictAnti_iff_map_neg : StrictAnti (f : α → β) ↔ ∀ a, 0 < a → f a < 0 :=
strictMono_toDual_comp_iff.symm.trans <| strictMono_iff_map_pos _
@@ -333,7 +333,7 @@ theorem strictAnti_iff_map_neg : StrictAnti (f : α → β) ↔ ∀ a, 0 < a →
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictMono.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3302 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3304 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3302 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3304) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3317 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3319 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3317 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3319)], Iff (StrictMono.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3308 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3310 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3308 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3310) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3323 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3325 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3323 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3325)], Iff (StrictMono.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
Case conversion may be inaccurate. Consider using '#align strict_mono_iff_map_neg strictMono_iff_map_negₓ'. -/
theorem strictMono_iff_map_neg : StrictMono (f : α → β) ↔ ∀ a < 0, f a < 0 :=
strictAnti_comp_ofDual_iff.symm.trans <| strictAnti_iff_map_neg _
@@ -343,7 +343,7 @@ theorem strictMono_iff_map_neg : StrictMono (f : α → β) ↔ ∀ a < 0, f a <
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictAnti.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3393 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3395 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3393 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3395) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3408 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3410 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3408 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3410)], Iff (StrictAnti.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3399 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3401 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3399 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3401) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3414 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3416 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3414 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3416)], Iff (StrictAnti.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
Case conversion may be inaccurate. Consider using '#align strict_anti_iff_map_pos strictAnti_iff_map_posₓ'. -/
theorem strictAnti_iff_map_pos : StrictAnti (f : α → β) ↔ ∀ a < 0, 0 < f a :=
strictMono_comp_ofDual_iff.symm.trans <| strictMono_iff_map_pos _
@@ -381,7 +381,7 @@ instance : CoeFun (α →*o β) fun _ => α → β :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] {f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {g : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f g)
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] {f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {g : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (forall (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{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} (OrderMonoidHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) f a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{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} (OrderMonoidHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f g)
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] {f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {g : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (forall (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{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} (OrderMonoidHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) f a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{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} (OrderMonoidHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f g)
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.ext OrderMonoidHom.extₓ'. -/
-- Other lemmas should be accessed through the `fun_like` API
@[ext, to_additive]
@@ -394,7 +394,7 @@ theorem ext (h : ∀ a, f a = g a) : f = g :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (MonoidHom.toFun.{u1, u2} α β _inst_5 _inst_6 (OrderMonoidHom.toMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α _inst_5) (MulOneClass.toOne.{u1} β _inst_6) (MonoidHom.toOneHom.{u2, u1} α β _inst_5 _inst_6 (OrderMonoidHom.toMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α _inst_5) (MulOneClass.toOne.{u1} β _inst_6) (MonoidHom.toOneHom.{u2, u1} α β _inst_5 _inst_6 (OrderMonoidHom.toMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.to_fun_eq_coe OrderMonoidHom.toFun_eq_coeₓ'. -/
@[to_additive]
theorem toFun_eq_coe (f : α →*o β) : f.toFun = (f : α → β) :=
@@ -406,7 +406,7 @@ theorem toFun_eq_coe (f : α →*o β) : f.toFun = (f : α → β) :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : MonoidHom.{u1, u2} α β _inst_5 _inst_6) (h : Monotone.{u1, u2} α β _inst_1 _inst_2 (MonoidHom.toFun.{u1, u2} α β _inst_5 _inst_6 f)), Eq.{max (succ u1) (succ u2)} ((fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : MonoidHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α _inst_5) (MulOneClass.toOne.{u1} β _inst_6) (MonoidHom.toOneHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OrderMonoidHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : MonoidHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α _inst_5) (MulOneClass.toOne.{u1} β _inst_6) (MonoidHom.toOneHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OrderMonoidHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_mk OrderMonoidHom.coe_mkₓ'. -/
@[simp, to_additive]
theorem coe_mk (f : α →* β) (h) : (OrderMonoidHom.mk f h : α → β) = f :=
@@ -441,7 +441,7 @@ def toOrderHom (f : α →*o β) : α →o β :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} ((fun (_x : MonoidHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (MonoidHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (MonoidHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) (MonoidHomClass.toMonoidHom.{u2, u1, max u2 u1} α β (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) (MonoidHomClass.toMonoidHom.{u2, u1, max u2 u1} α β (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_monoid_hom OrderMonoidHom.coe_monoidHomₓ'. -/
@[simp, to_additive]
theorem coe_monoidHom (f : α →*o β) : ((f : α →* β) : α → β) = f :=
@@ -453,7 +453,7 @@ theorem coe_monoidHom (f : α →*o β) : ((f : α →* β) : α → β) = f :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} ((fun (_x : OrderHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) ((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) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (OrderHomClass.OrderHom.hasCoeT.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : OrderHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (OrderHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) ((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) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderHom.{u1, u2} α β _inst_1 _inst_2) (OrderHomClass.OrderHom.hasCoeT.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (OrderHom.toFun.{u2, u1} α β _inst_1 _inst_2 (OrderHomClass.toOrderHom.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (OrderHom.toFun.{u2, u1} α β _inst_1 _inst_2 (OrderHomClass.toOrderHom.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_order_hom OrderMonoidHom.coe_orderHomₓ'. -/
@[simp, to_additive]
theorem coe_orderHom (f : α →*o β) : ((f : α →o β) : α → β) = f :=
@@ -489,7 +489,7 @@ theorem toOrderHom_injective : Injective (toOrderHom : _ → α →o β) := fun
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)) -> (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{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} (OrderMonoidHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)) -> (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{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} (OrderMonoidHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)) -> (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.copy OrderMonoidHom.copyₓ'. -/
/-- Copy of an `order_monoid_hom` with a new `to_fun` equal to the old one. Useful to fix
definitional equalities. -/
@@ -506,7 +506,7 @@ protected def copy (f : α →*o β) (f' : α → β) (h : f' = f) : α →*o β
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h)) f'
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) 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} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OrderMonoidHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h)) f'
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) 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} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OrderMonoidHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h)) f'
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_copy OrderMonoidHom.coe_copyₓ'. -/
@[simp, to_additive]
theorem coe_copy (f : α →*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
@@ -518,7 +518,7 @@ theorem coe_copy (f : α →*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f'
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)), Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h) f
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)), Eq.{max (succ u2) (succ u1)} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h) f
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)), Eq.{max (succ u2) (succ u1)} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h) f
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.copy_eq OrderMonoidHom.copy_eqₓ'. -/
@[to_additive]
theorem copy_eq (f : α →*o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
@@ -541,7 +541,7 @@ protected def id : α →*o α :=
lean 3 declaration is
forall (α : Type.{u1}) [_inst_1 : Preorder.{u1} α] [_inst_5 : MulOneClass.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (OrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) (fun (_x : OrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) => α -> α) (OrderMonoidHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) (OrderMonoidHom.id.{u1} α _inst_1 _inst_5)) (id.{succ u1} α)
but is expected to have type
- forall (α : Type.{u1}) [_inst_1 : Preorder.{u1} α] [_inst_5 : MulOneClass.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_1) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α _inst_1 _inst_1 _inst_5 _inst_5 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5))) (OrderMonoidHom.id.{u1} α _inst_1 _inst_5)) (id.{succ u1} α)
+ forall (α : Type.{u1}) [_inst_1 : Preorder.{u1} α] [_inst_5 : MulOneClass.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_1) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α _inst_1 _inst_1 _inst_5 _inst_5 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5))) (OrderMonoidHom.id.{u1} α _inst_1 _inst_5)) (id.{succ u1} α)
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_id OrderMonoidHom.coe_idₓ'. -/
@[simp, to_additive]
theorem coe_id : ⇑(OrderMonoidHom.id α) = id :=
@@ -568,7 +568,7 @@ def comp (f : β →*o γ) (g : α →*o β) : α →*o γ :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u3} γ] (f : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u3)} ((fun (_x : OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) => α -> γ) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (fun (_x : OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) => α -> γ) (OrderMonoidHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (fun (_x : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) => β -> γ) (OrderMonoidHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) g))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] (f : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7))) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6))) g))
+ forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] (f : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7))) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6))) g))
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_comp OrderMonoidHom.coe_compₓ'. -/
@[simp, to_additive]
theorem coe_comp (f : β →*o γ) (g : α →*o β) : (f.comp g : α → γ) = f ∘ g :=
@@ -580,7 +580,7 @@ theorem coe_comp (f : β →*o γ) (g : α →*o β) : (f.comp g : α → γ) =
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u3} γ] (f : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (fun (_x : OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) => α -> γ) (OrderMonoidHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (fun (_x : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) => β -> γ) (OrderMonoidHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) g a))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] (f : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7))) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6))) g a))
+ forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] (f : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7))) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6))) g a))
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.comp_apply OrderMonoidHom.comp_applyₓ'. -/
@[simp, to_additive]
theorem comp_apply (f : β →*o γ) (g : α →*o β) (a : α) : (f.comp g) a = f (g a) :=
@@ -654,7 +654,7 @@ theorem id_comp (f : α →*o β) : (OrderMonoidHom.id β).comp f = f :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u3} γ] {g₁ : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7} {g₂ : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₁ f) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₂ f)) (Eq.{max (succ u2) (succ u3)} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) g₁ g₂))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] {g₁ : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {g₂ : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Surjective.{succ u1, succ u3} α β (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₁ f) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₂ f)) (Eq.{max (succ u3) (succ u2)} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) g₁ g₂))
+ forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] {g₁ : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {g₂ : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Surjective.{succ u1, succ u3} α β (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₁ f) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₂ f)) (Eq.{max (succ u3) (succ u2)} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) g₁ g₂))
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.cancel_right OrderMonoidHom.cancel_rightₓ'. -/
@[to_additive]
theorem cancel_right {g₁ g₂ : β →*o γ} {f : α →*o β} (hf : Function.Surjective f) :
@@ -667,7 +667,7 @@ theorem cancel_right {g₁ g₂ : β →*o γ} {f : α →*o β} (hf : Function.
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] [_inst_7 : MulOneClass.{u3} γ] {g : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f₁ : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {f₂ : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (fun (_x : OrderMonoidHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) => β -> γ) (OrderMonoidHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₁) (OrderMonoidHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₂)) (Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f₁ f₂))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] {g : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f₁ : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6} {f₂ : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₁) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₂)) (Eq.{max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) f₁ f₂))
+ forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u3} β] [_inst_7 : MulOneClass.{u2} γ] {g : OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f₁ : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6} {f₂ : OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₁) (OrderMonoidHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₂)) (Eq.{max (succ u1) (succ u3)} (OrderMonoidHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) f₁ f₂))
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.cancel_left OrderMonoidHom.cancel_leftₓ'. -/
@[to_additive]
theorem cancel_left {g : β →*o γ} {f₁ f₂ : α →*o β} (hg : Function.Injective g) :
@@ -685,7 +685,7 @@ instance : One (α →*o β) :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β], Eq.{succ (max u1 u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), succ (max u1 u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OfNat.ofNat.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (OfNat.mk.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (One.one.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.hasOne.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) (OfNat.ofNat.{max u1 u2} (α -> β) 1 (OfNat.mk.{max u1 u2} (α -> β) 1 (One.one.{max u1 u2} (α -> β) (Pi.instOne.{u1, u2} α (fun (ᾰ : α) => β) (fun (i : α) => MulOneClass.toHasOne.{u2} β _inst_6)))))
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β], 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} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OfNat.ofNat.{max u2 u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (One.toOfNat1.{max u2 u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.instOneOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) (OfNat.ofNat.{max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) 1 (One.toOfNat1.{max u2 u1} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (Pi.instOne.{u2, u1} α (fun (a : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (fun (i : α) => MulOneClass.toOne.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) i) _inst_6))))
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β], 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} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OfNat.ofNat.{max u2 u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (One.toOfNat1.{max u2 u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.instOneOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) (OfNat.ofNat.{max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) 1 (One.toOfNat1.{max u2 u1} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (Pi.instOne.{u2, u1} α (fun (a : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (fun (i : α) => MulOneClass.toOne.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) _inst_6))))
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_one OrderMonoidHom.coe_oneₓ'. -/
@[simp, to_additive]
theorem coe_one : ⇑(1 : α →*o β) = 1 :=
@@ -697,7 +697,7 @@ theorem coe_one : ⇑(1 : α →*o β) = 1 :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OfNat.ofNat.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (OfNat.mk.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (One.one.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.hasOne.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)))) a) (OfNat.ofNat.{u2} β 1 (OfNat.mk.{u2} β 1 (One.one.{u2} β (MulOneClass.toHasOne.{u2} β _inst_6))))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{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} (OrderMonoidHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OfNat.ofNat.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (One.toOfNat1.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.instOneOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (MulOneClass.toOne.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) _inst_6)))
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidHom.{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} (OrderMonoidHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OfNat.ofNat.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) 1 (One.toOfNat1.{max u1 u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.instOneOrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))) a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (MulOneClass.toOne.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_6)))
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.one_apply OrderMonoidHom.one_applyₓ'. -/
@[simp, to_additive]
theorem one_apply (a : α) : (1 : α →*o β) a = 1 :=
@@ -748,7 +748,7 @@ instance : Mul (α →*o β) :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : OrderedCommMonoid.{u1} α] [_inst_2 : OrderedCommMonoid.{u2} β] (f : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (g : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))), Eq.{succ (max u1 u2)} (α -> β) (coeFn.{succ (max u1 u2), succ (max u1 u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (fun (_x : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (instHMul.{max u1 u2} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.hasMul.{u1, u2} α β _inst_1 _inst_2)) f g)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (α -> β) (α -> β) (α -> β) (instHMul.{max u1 u2} (α -> β) (Pi.instMul.{u1, u2} α (fun (ᾰ : α) => β) (fun (i : α) => MulOneClass.toHasMul.{u2} β (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (fun (_x : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (fun (_x : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) g))
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : OrderedCommMonoid.{u2} α] [_inst_2 : OrderedCommMonoid.{u1} β] (f : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (g : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))), 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} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (instHMul.{max u2 u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.instMulOrderMonoidHomToPreorderToPartialOrderToPreorderToPartialOrderToMulOneClassToMonoidToCommMonoidToMulOneClassToMonoidToCommMonoid.{u2, u1} α β _inst_1 _inst_2)) f g)) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (instHMul.{max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (Pi.instMul.{u2, u1} α (fun (ᾰ : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (fun (i : α) => MulOneClass.toMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) i) (Monoid.toMulOneClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) i) (CommMonoid.toMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) i) (OrderedCommMonoid.toCommMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) i) _inst_2)))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) f) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) g))
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : OrderedCommMonoid.{u2} α] [_inst_2 : OrderedCommMonoid.{u1} β] (f : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (g : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))), 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} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (instHMul.{max u2 u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.instMulOrderMonoidHomToPreorderToPartialOrderToPreorderToPartialOrderToMulOneClassToMonoidToCommMonoidToMulOneClassToMonoidToCommMonoid.{u2, u1} α β _inst_1 _inst_2)) f g)) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (instHMul.{max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (Pi.instMul.{u2, u1} α (fun (ᾰ : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (fun (i : α) => MulOneClass.toMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (Monoid.toMulOneClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (CommMonoid.toMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (OrderedCommMonoid.toCommMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) _inst_2)))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) f) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) g))
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_mul OrderMonoidHom.coe_mulₓ'. -/
@[simp, to_additive]
theorem coe_mul (f g : α →*o β) : ⇑(f * g) = f * g :=
@@ -760,7 +760,7 @@ theorem coe_mul (f g : α →*o β) : ⇑(f * g) = f * g :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : OrderedCommMonoid.{u1} α] [_inst_2 : OrderedCommMonoid.{u2} β] (f : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (g : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (fun (_x : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (instHMul.{max u1 u2} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (OrderMonoidHom.hasMul.{u1, u2} α β _inst_1 _inst_2)) f g) a) (HMul.hMul.{u2, u2, u2} β β β (instHMul.{u2} β (MulOneClass.toHasMul.{u2} β (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (fun (_x : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) (fun (_x : OrderMonoidHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β _inst_2)) (Monoid.toMulOneClass.{u1} α (CommMonoid.toMonoid.{u1} α (OrderedCommMonoid.toCommMonoid.{u1} α _inst_1))) (Monoid.toMulOneClass.{u2} β (CommMonoid.toMonoid.{u2} β (OrderedCommMonoid.toCommMonoid.{u2} β _inst_2)))) g a))
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : OrderedCommMonoid.{u2} α] [_inst_2 : OrderedCommMonoid.{u1} β] (f : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (g : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (instHMul.{max u2 u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.instMulOrderMonoidHomToPreorderToPartialOrderToPreorderToPartialOrderToMulOneClassToMonoidToCommMonoidToMulOneClassToMonoidToCommMonoid.{u2, u1} α β _inst_1 _inst_2)) f g) a) (HMul.hMul.{u1, u1, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (instHMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (MulOneClass.toMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (Monoid.toMulOneClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (CommMonoid.toMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (OrderedCommMonoid.toCommMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) _inst_2))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) g a))
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : OrderedCommMonoid.{u2} α] [_inst_2 : OrderedCommMonoid.{u1} β] (f : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (g : OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (instHMul.{max u2 u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) (OrderMonoidHom.instMulOrderMonoidHomToPreorderToPartialOrderToPreorderToPartialOrderToMulOneClassToMonoidToCommMonoidToMulOneClassToMonoidToCommMonoid.{u2, u1} α β _inst_1 _inst_2)) f g) a) (HMul.hMul.{u1, u1, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (instHMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (MulOneClass.toMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (Monoid.toMulOneClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (CommMonoid.toMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (OrderedCommMonoid.toCommMonoid.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2))) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β _inst_2)) (Monoid.toMulOneClass.{u2} α (CommMonoid.toMonoid.{u2} α (OrderedCommMonoid.toCommMonoid.{u2} α _inst_1))) (Monoid.toMulOneClass.{u1} β (CommMonoid.toMonoid.{u1} β (OrderedCommMonoid.toCommMonoid.{u1} β _inst_2)))))) g a))
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.mul_apply OrderMonoidHom.mul_applyₓ'. -/
@[simp, to_additive]
theorem mul_apply (f g : α →*o β) (a : α) : (f * g) a = f a * g a :=
@@ -883,7 +883,7 @@ instance : CoeFun (α →*₀o β) fun _ => α → β :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] {f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {g : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f g)
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] {f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {g : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (forall (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{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} (OrderMonoidWithZeroHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{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} (OrderMonoidWithZeroHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)))) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f g)
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] {f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {g : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (forall (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{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} (OrderMonoidWithZeroHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{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} (OrderMonoidWithZeroHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)))) g a)) -> (Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f g)
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.ext OrderMonoidWithZeroHom.extₓ'. -/
-- Other lemmas should be accessed through the `fun_like` API
@[ext]
@@ -895,7 +895,7 @@ theorem ext (h : ∀ a, f a = g a) : f = g :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (MonoidWithZeroHom.toFun.{u1, u2} α β _inst_5 _inst_6 (OrderMonoidWithZeroHom.toMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (ZeroHom.toFun.{u2, u1} α β (MulZeroOneClass.toZero.{u2} α _inst_5) (MulZeroOneClass.toZero.{u1} β _inst_6) (MonoidWithZeroHom.toZeroHom.{u2, u1} α β _inst_5 _inst_6 (OrderMonoidWithZeroHom.toMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (α -> β) (ZeroHom.toFun.{u2, u1} α β (MulZeroOneClass.toZero.{u2} α _inst_5) (MulZeroOneClass.toZero.{u1} β _inst_6) (MonoidWithZeroHom.toZeroHom.{u2, u1} α β _inst_5 _inst_6 (OrderMonoidWithZeroHom.toMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.to_fun_eq_coe OrderMonoidWithZeroHom.toFun_eq_coeₓ'. -/
theorem toFun_eq_coe (f : α →*₀o β) : f.toFun = (f : α → β) :=
rfl
@@ -905,7 +905,7 @@ theorem toFun_eq_coe (f : α →*₀o β) : f.toFun = (f : α → β) :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (h : Monotone.{u1, u2} α β _inst_1 _inst_2 (MonoidWithZeroHom.toFun.{u1, u2} α β _inst_5 _inst_6 f)), Eq.{max (succ u1) (succ u2)} ((fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidWithZeroHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (ZeroHom.toFun.{u2, u1} α β (MulZeroOneClass.toZero.{u2} α _inst_5) (MulZeroOneClass.toZero.{u1} β _inst_6) (MonoidWithZeroHom.toZeroHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderMonoidWithZeroHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (ZeroHom.toFun.{u2, u1} α β (MulZeroOneClass.toZero.{u2} α _inst_5) (MulZeroOneClass.toZero.{u1} β _inst_6) (MonoidWithZeroHom.toZeroHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderMonoidWithZeroHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_mk OrderMonoidWithZeroHom.coe_mkₓ'. -/
@[simp]
theorem coe_mk (f : α →*₀ β) (h) : (OrderMonoidWithZeroHom.mk f h : α → β) = f :=
@@ -936,7 +936,7 @@ def toOrderMonoidHom (f : α →*₀o β) : α →*o β :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (MonoidWithZeroHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), 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} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u2, u1, max u2 u1} α β (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), 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} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u2, u1, max u2 u1} α β (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_monoid_with_zero_hom OrderMonoidWithZeroHom.coe_monoidWithZeroHomₓ'. -/
@[simp]
theorem coe_monoidWithZeroHom (f : α →*₀o β) : ⇑(f : α →*₀ β) = f :=
@@ -947,7 +947,7 @@ theorem coe_monoidWithZeroHom (f : α →*₀o β) : ⇑(f : α →*₀ β) = f
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{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) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (OrderMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), 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} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)))) (OrderMonoidHomClass.toOrderMonoidHom.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), 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} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)))) (OrderMonoidHomClass.toOrderMonoidHom.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_order_monoid_hom OrderMonoidWithZeroHom.coe_orderMonoidHomₓ'. -/
@[simp]
theorem coe_orderMonoidHom (f : α →*₀o β) : ⇑(f : α →*o β) = f :=
@@ -978,7 +978,7 @@ theorem toMonoidWithZeroHom_injective : Injective (toMonoidWithZeroHom : _ →
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)) -> (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{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} (OrderMonoidWithZeroHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)) -> (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6))
+ forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{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} (OrderMonoidWithZeroHom.{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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)) -> (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6))
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.copy OrderMonoidWithZeroHom.copyₓ'. -/
/-- Copy of an `order_monoid_with_zero_hom` with a new `to_fun` equal to the old one. Useful to fix
definitional equalities. -/
@@ -990,7 +990,7 @@ protected def copy (f : α →*₀o β) (f' : α → β) (h : f' = f) : α →*o
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (OrderMonoidWithZeroHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h)) f'
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) 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} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)))) (OrderMonoidWithZeroHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h)) f'
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) 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} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)))) (OrderMonoidWithZeroHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h)) f'
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_copy OrderMonoidWithZeroHom.coe_copyₓ'. -/
@[simp]
theorem coe_copy (f : α →*₀o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
@@ -1001,7 +1001,7 @@ theorem coe_copy (f : α →*₀o β) (f' : α → β) (h : f' = f) : ⇑(f.copy
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)), Eq.{max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (OrderMonoidWithZeroHom.copy.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h) ((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) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6)) (OrderMonoidHom.hasCoeT.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)), Eq.{max (succ u2) (succ u1)} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (OrderMonoidWithZeroHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h) (OrderMonoidHomClass.toOrderMonoidHom.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)), Eq.{max (succ u2) (succ u1)} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (OrderMonoidWithZeroHom.copy.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f f' h) (OrderMonoidHomClass.toOrderMonoidHom.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.copy_eq OrderMonoidWithZeroHom.copy_eqₓ'. -/
theorem copy_eq (f : α →*₀o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
FunLike.ext' h
@@ -1020,7 +1020,7 @@ protected def id : α →*₀o α :=
lean 3 declaration is
forall (α : Type.{u1}) [_inst_1 : Preorder.{u1} α] [_inst_5 : MulZeroOneClass.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) (fun (_x : OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) => α -> α) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) (OrderMonoidWithZeroHom.id.{u1} α _inst_1 _inst_5)) (id.{succ u1} α)
but is expected to have type
- forall (α : Type.{u1}) [_inst_1 : Preorder.{u1} α] [_inst_5 : MulZeroOneClass.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_1) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α _inst_1 _inst_1 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{u1, u1, u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α _inst_1 _inst_1 _inst_5 _inst_5 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5)))) (OrderMonoidWithZeroHom.id.{u1} α _inst_1 _inst_5)) (id.{succ u1} α)
+ forall (α : Type.{u1}) [_inst_1 : Preorder.{u1} α] [_inst_5 : MulZeroOneClass.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => α) _x) (RelHomClass.toFunLike.{u1, u1, u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_1) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{u1, u1, u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α _inst_1 _inst_1 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{u1, u1, u1} (OrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5) α α _inst_1 _inst_1 _inst_5 _inst_5 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u1} α α _inst_1 _inst_1 _inst_5 _inst_5)))) (OrderMonoidWithZeroHom.id.{u1} α _inst_1 _inst_5)) (id.{succ u1} α)
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_id OrderMonoidWithZeroHom.coe_idₓ'. -/
@[simp]
theorem coe_id : ⇑(OrderMonoidWithZeroHom.id α) = id :=
@@ -1043,7 +1043,7 @@ def comp (f : β →*₀o γ) (g : α →*₀o β) : α →*₀o γ :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] [_inst_7 : MulZeroOneClass.{u3} γ] (f : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u3)} ((fun (_x : OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) => α -> γ) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (fun (_x : OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) => α -> γ) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (fun (_x : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) => β -> γ) (OrderMonoidWithZeroHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) g))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] (f : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7)))) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7)))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)))) g))
+ forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] (f : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7)))) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7)))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)))) g))
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_comp OrderMonoidWithZeroHom.coe_compₓ'. -/
@[simp]
theorem coe_comp (f : β →*₀o γ) (g : α →*₀o β) : (f.comp g : α → γ) = f ∘ g :=
@@ -1054,7 +1054,7 @@ theorem coe_comp (f : β →*₀o γ) (g : α →*₀o β) : (f.comp g : α →
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] [_inst_7 : MulZeroOneClass.{u3} γ] (f : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (fun (_x : OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) => α -> γ) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (fun (_x : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) => β -> γ) (OrderMonoidWithZeroHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) g a))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] (f : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7)))) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7)))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)))) g a))
+ forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] (f : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) (g : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => γ) _x) (RelHomClass.toFunLike.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u1} α (Preorder.toLE.{u1} α _inst_1) 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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) α γ _inst_1 _inst_3 _inst_5 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7)))) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7)))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)))) g a))
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.comp_apply OrderMonoidWithZeroHom.comp_applyₓ'. -/
@[simp]
theorem comp_apply (f : β →*₀o γ) (g : α →*₀o β) (a : α) : (f.comp g) a = f (g a) :=
@@ -1123,7 +1123,7 @@ theorem id_comp (f : α →*₀o β) : (OrderMonoidWithZeroHom.id β).comp f = f
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] [_inst_7 : MulZeroOneClass.{u3} γ] {g₁ : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7} {g₂ : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₁ f) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₂ f)) (Eq.{max (succ u2) (succ u3)} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) g₁ g₂))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] {g₁ : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {g₂ : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Surjective.{succ u1, succ u3} α β (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₁ f) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₂ f)) (Eq.{max (succ u3) (succ u2)} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) g₁ g₂))
+ forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] {g₁ : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {g₂ : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Surjective.{succ u1, succ u3} α β (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _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_1) 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_2) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u1} α _inst_5) (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u1 u3, u1, u3} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₁ f) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g₂ f)) (Eq.{max (succ u3) (succ u2)} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) g₁ g₂))
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.cancel_right OrderMonoidWithZeroHom.cancel_rightₓ'. -/
theorem cancel_right {g₁ g₂ : β →*₀o γ} {f : α →*₀o β} (hf : Function.Surjective f) :
g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
@@ -1134,7 +1134,7 @@ theorem cancel_right {g₁ g₂ : β →*₀o γ} {f : α →*₀o β} (hf : Fun
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_3 : Preorder.{u3} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] [_inst_7 : MulZeroOneClass.{u3} γ] {g : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f₁ : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6} {f₂ : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) (fun (_x : OrderMonoidWithZeroHom.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) => β -> γ) (OrderMonoidWithZeroHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3 _inst_6 _inst_7) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₁) (OrderMonoidWithZeroHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₂)) (Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f₁ f₂))
but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] {g : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f₁ : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6} {f₂ : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7)))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₁) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₂)) (Eq.{max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) f₁ f₂))
+ forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : Preorder.{u2} γ] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u3} β] [_inst_7 : MulZeroOneClass.{u2} γ] {g : OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7} {f₁ : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6} {f₂ : OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β (fun (_x : β) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : β) => γ) _x) (RelHomClass.toFunLike.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : β) => LE.le.{u3} β (Preorder.toLE.{u3} β _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_3) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 (MulZeroOneClass.toMulOneClass.{u3} β _inst_6) (MulZeroOneClass.toMulOneClass.{u2} γ _inst_7) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u3 u2, u3, u2} (OrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7) β γ _inst_2 _inst_3 _inst_6 _inst_7 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u3, u2} β γ _inst_2 _inst_3 _inst_6 _inst_7)))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α γ _inst_1 _inst_3 _inst_5 _inst_7) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₁) (OrderMonoidWithZeroHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 _inst_5 _inst_6 _inst_7 g f₂)) (Eq.{max (succ u1) (succ u3)} (OrderMonoidWithZeroHom.{u1, u3} α β _inst_1 _inst_2 _inst_5 _inst_6) f₁ f₂))
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.cancel_left OrderMonoidWithZeroHom.cancel_leftₓ'. -/
theorem cancel_left {g : β →*₀o γ} {f₁ f₂ : α →*₀o β} (hg : Function.Injective g) :
g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
@@ -1157,7 +1157,7 @@ instance : Mul (α →*₀o β) :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u1} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (g : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))), Eq.{succ (max u1 u2)} (α -> β) (coeFn.{succ (max u1 u2), succ (max u1 u2)} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (instHMul.{max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.hasMul.{u1, u2} α β _inst_1 _inst_2)) f g)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (α -> β) (α -> β) (α -> β) (instHMul.{max u1 u2} (α -> β) (Pi.instMul.{u1, u2} α (fun (ᾰ : α) => β) (fun (i : α) => MulZeroClass.toHasMul.{u2} β (MulZeroOneClass.toMulZeroClass.{u2} β (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2))))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) g))
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u2} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (g : OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))), 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} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (instHMul.{max u2 u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.instMulOrderMonoidWithZeroHomToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZeroToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZero.{u2, u1} α β _inst_1 _inst_2)) f g)) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (instHMul.{max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (Pi.instMul.{u2, u1} α (fun (ᾰ : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) ᾰ) (fun (i : α) => MulZeroClass.toMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) i) (MulZeroOneClass.toMulZeroClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) i) (MonoidWithZero.toMulZeroOneClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) i) (CommMonoidWithZero.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) i) (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) i) _inst_2))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) f) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) g))
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u2} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (g : OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))), 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} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (instHMul.{max u2 u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.instMulOrderMonoidWithZeroHomToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZeroToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZero.{u2, u1} α β _inst_1 _inst_2)) f g)) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (instHMul.{max u2 u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (Pi.instMul.{u2, u1} α (fun (ᾰ : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) ᾰ) (fun (i : α) => MulZeroClass.toMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (MulZeroOneClass.toMulZeroClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (MonoidWithZero.toMulZeroOneClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (CommMonoidWithZero.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) i) _inst_2))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) f) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) g))
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_mul OrderMonoidWithZeroHom.coe_mulₓ'. -/
@[simp]
theorem coe_mul (f g : α →*₀o β) : ⇑(f * g) = f * g :=
@@ -1168,7 +1168,7 @@ theorem coe_mul (f g : α →*₀o β) : ⇑(f * g) = f * g :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u1} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (g : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (instHMul.{max u1 u2} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (OrderMonoidWithZeroHom.hasMul.{u1, u2} α β _inst_1 _inst_2)) f g) a) (HMul.hMul.{u2, u2, u2} β β β (instHMul.{u2} β (MulZeroClass.toHasMul.{u2} β (MulZeroOneClass.toMulZeroClass.{u2} β (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β (PartialOrder.toPreorder.{u1} α (OrderedCommMonoid.toPartialOrder.{u1} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} α _inst_1)))) (PartialOrder.toPreorder.{u2} β (OrderedCommMonoid.toPartialOrder.{u2} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u1} α (CommMonoidWithZero.toMonoidWithZero.{u1} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u2} β (CommMonoidWithZero.toMonoidWithZero.{u2} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} β _inst_2)))) g a))
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u2} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (g : OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (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} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (instHMul.{max u2 u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.instMulOrderMonoidWithZeroHomToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZeroToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZero.{u2, u1} α β _inst_1 _inst_2)) f g) a) (HMul.hMul.{u1, u1, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (instHMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (MulZeroClass.toMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (MulZeroOneClass.toMulZeroClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (MonoidWithZero.toMulZeroOneClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (CommMonoidWithZero.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) _inst_2)))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1918 x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) g a))
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : LinearOrderedCommMonoidWithZero.{u2} α] [_inst_2 : LinearOrderedCommMonoidWithZero.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (g : OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (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} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (instHMul.{max u2 u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHom.instMulOrderMonoidWithZeroHomToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToPreorderToPartialOrderToOrderedCommMonoidToLinearOrderedCommMonoidToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZeroToMulZeroOneClassToMonoidWithZeroToCommMonoidWithZero.{u2, u1} α β _inst_1 _inst_2)) f g) a) (HMul.hMul.{u1, u1, u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (instHMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (MulZeroClass.toMul.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (MulZeroOneClass.toMulZeroClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (MonoidWithZero.toMulZeroOneClass.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (CommMonoidWithZero.toMonoidWithZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) a) _inst_2)))))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.869 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1902 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1904 : α) => LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1))))) 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} β (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2))))) x._@.Mathlib.Order.Hom.Basic._hyg.1924 x._@.Mathlib.Order.Hom.Basic._hyg.1926) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MulZeroOneClass.toMulOneClass.{u2} α (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1)))) (MulZeroOneClass.toMulOneClass.{u1} β (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2)))) α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))) (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β (PartialOrder.toPreorder.{u2} α (OrderedCommMonoid.toPartialOrder.{u2} α (LinearOrderedCommMonoid.toOrderedCommMonoid.{u2} α (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u2} α _inst_1)))) (PartialOrder.toPreorder.{u1} β (OrderedCommMonoid.toPartialOrder.{u1} β (LinearOrderedCommMonoid.toOrderedCommMonoid.{u1} β (LinearOrderedCommMonoidWithZero.toLinearOrderedCommMonoid.{u1} β _inst_2)))) (MonoidWithZero.toMulZeroOneClass.{u2} α (CommMonoidWithZero.toMonoidWithZero.{u2} α (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u2} α _inst_1))) (MonoidWithZero.toMulZeroOneClass.{u1} β (CommMonoidWithZero.toMonoidWithZero.{u1} β (LinearOrderedCommMonoidWithZero.toCommMonoidWithZero.{u1} β _inst_2))))))) g a))
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.mul_apply OrderMonoidWithZeroHom.mul_applyₓ'. -/
@[simp]
theorem mul_apply (f g : α →*₀o β) (a : α) : (f * g) a = f a * g a :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/0b9eaaa7686280fad8cce467f5c3c57ee6ce77f8
@@ -142,7 +142,12 @@ class OrderMonoidHomClass (F : Type _) (α β : outParam <| Type _) [Preorder α
end
-#print OrderMonoidHomClass.toOrderHomClass /-
+/- warning: order_monoid_hom_class.to_order_hom_class -> OrderMonoidHomClass.toOrderHomClass is a dubious translation:
+lean 3 declaration is
+ forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u3} β] [_inst_3 : MulOneClass.{u2} α] [_inst_4 : MulOneClass.{u3} β] [_inst_5 : OrderMonoidHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4], OrderHomClass.{u1, u2, u3} F α β (Preorder.toHasLe.{u2} α _inst_1) (Preorder.toHasLe.{u3} β _inst_2)
+but is expected to have type
+ forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} {_inst_1 : Preorder.{u2} α} {_inst_2 : Preorder.{u3} β} {_inst_3 : MulOneClass.{u2} α} {_inst_4 : MulOneClass.{u3} β} [_inst_5 : OrderMonoidHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3 _inst_4], OrderHomClass.{u1, u2, u3} F α β (Preorder.toLE.{u2} α _inst_1) (Preorder.toLE.{u3} β _inst_2)
+Case conversion may be inaccurate. Consider using '#align order_monoid_hom_class.to_order_hom_class OrderMonoidHomClass.toOrderHomClassₓ'. -/
-- See note [lower instance priority]
@[to_additive]
instance (priority := 100) OrderMonoidHomClass.toOrderHomClass [OrderMonoidHomClass F α β] :
@@ -150,7 +155,6 @@ instance (priority := 100) OrderMonoidHomClass.toOrderHomClass [OrderMonoidHomCl
{ ‹OrderMonoidHomClass F α β› with map_rel := OrderMonoidHomClass.monotone }
#align order_monoid_hom_class.to_order_hom_class OrderMonoidHomClass.toOrderHomClass
#align order_add_monoid_hom_class.to_order_hom_class OrderAddMonoidHomClass.toOrderHomClass
--/
@[to_additive]
instance [OrderMonoidHomClass F α β] : CoeTC F (α →*o β) :=
@@ -227,7 +231,7 @@ include β
/- warning: map_nonneg -> map_nonneg is a dubious translation:
lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) {a : α}, (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) a) -> (LE.le.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (RelHomClass.toFunLike.{u1, u2, u3} F α β (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) (LE.le.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)))) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a))
+ forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) {a : α}, (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))))))) a) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (RelHomClass.toFunLike.{u1, u2, u3} F α β (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)))) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a))
but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) {a : α}, (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (AddMonoid.toZero.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{u1, u3, u2} F α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (_x : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) _x x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a))
Case conversion may be inaccurate. Consider using '#align map_nonneg map_nonnegₓ'. -/
@@ -239,7 +243,7 @@ theorem map_nonneg (ha : 0 ≤ a) : 0 ≤ f a :=
/- warning: map_nonpos -> map_nonpos is a dubious translation:
lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) {a : α}, (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))))) -> (LE.le.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (RelHomClass.toFunLike.{u1, u2, u3} F α β (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) (LE.le.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)))) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))))
+ forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommMonoid.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) {a : α}, (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1)))))))) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (RelHomClass.toFunLike.{u1, u2, u3} F α β (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)))) (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)))) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u2, u3} F α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommMonoid.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (AddMonoid.toAddZeroClass.{u2} α (AddCommMonoid.toAddMonoid.{u2} α (OrderedAddCommMonoid.toAddCommMonoid.{u2} α _inst_1))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))))
but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommMonoid.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : OrderAddMonoidHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) {a : α}, (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (AddMonoid.toZero.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1)))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{u1, u3, u2} F α β (fun (x._@.Mathlib.Order.Hom.Basic._hyg.1896 : α) (x._@.Mathlib.Order.Hom.Basic._hyg.1898 : α) => LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1))) x._@.Mathlib.Order.Hom.Basic._hyg.1896 x._@.Mathlib.Order.Hom.Basic._hyg.1898) (fun (_x : β) (x._@.Mathlib.Order.Hom.Basic._hyg.1920 : β) => LE.le.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) _x x._@.Mathlib.Order.Hom.Basic._hyg.1920) (OrderAddMonoidHomClass.toOrderHomClass.{u1, u3, u2} F α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommMonoid.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (AddMonoid.toAddZeroClass.{u3} α (AddCommMonoid.toAddMonoid.{u3} α (OrderedAddCommMonoid.toAddCommMonoid.{u3} α _inst_1))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) _inst_2))))))
Case conversion may be inaccurate. Consider using '#align map_nonpos map_nonposₓ'. -/
@@ -257,7 +261,7 @@ variable [OrderedAddCommGroup α] [OrderedAddCommMonoid β] [AddMonoidHomClass F
/- warning: monotone_iff_map_nonneg -> monotone_iff_map_nonneg is a dubious translation:
lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Monotone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LE.le.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
+ forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Monotone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Monotone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
Case conversion may be inaccurate. Consider using '#align monotone_iff_map_nonneg monotone_iff_map_nonnegₓ'. -/
@@ -271,7 +275,7 @@ theorem monotone_iff_map_nonneg : Monotone (f : α → β) ↔ ∀ a, 0 ≤ a
/- warning: antitone_iff_map_nonpos -> antitone_iff_map_nonpos is a dubious translation:
lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Antitone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LE.le.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
+ forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Antitone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Antitone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
Case conversion may be inaccurate. Consider using '#align antitone_iff_map_nonpos antitone_iff_map_nonposₓ'. -/
@@ -281,7 +285,7 @@ theorem antitone_iff_map_nonpos : Antitone (f : α → β) ↔ ∀ a, 0 ≤ a
/- warning: monotone_iff_map_nonpos -> monotone_iff_map_nonpos is a dubious translation:
lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Monotone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LE.le.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
+ forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Monotone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Monotone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
Case conversion may be inaccurate. Consider using '#align monotone_iff_map_nonpos monotone_iff_map_nonposₓ'. -/
@@ -291,7 +295,7 @@ theorem monotone_iff_map_nonpos : Monotone (f : α → β) ↔ ∀ a ≤ 0, f a
/- warning: antitone_iff_map_nonneg -> antitone_iff_map_nonneg is a dubious translation:
lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Antitone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LE.le.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
+ forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Antitone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LE.le.{u3} β (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Antitone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
Case conversion may be inaccurate. Consider using '#align antitone_iff_map_nonneg antitone_iff_map_nonnegₓ'. -/
@@ -303,7 +307,7 @@ variable [CovariantClass β β (· + ·) (· < ·)]
/- warning: strict_mono_iff_map_pos -> strictMono_iff_map_pos is a dubious translation:
lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictMono.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
+ forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictMono.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3040 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3042 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3040 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3042) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3055 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3057 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3055 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3057)], Iff (StrictMono.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
Case conversion may be inaccurate. Consider using '#align strict_mono_iff_map_pos strictMono_iff_map_posₓ'. -/
@@ -317,7 +321,7 @@ theorem strictMono_iff_map_pos : StrictMono (f : α → β) ↔ ∀ a, 0 < a →
/- warning: strict_anti_iff_map_neg -> strictAnti_iff_map_neg is a dubious translation:
lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictAnti.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
+ forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictAnti.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3217 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3219 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3217 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3219) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3232 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3234 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3232 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3234)], Iff (StrictAnti.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
Case conversion may be inaccurate. Consider using '#align strict_anti_iff_map_neg strictAnti_iff_map_negₓ'. -/
@@ -327,7 +331,7 @@ theorem strictAnti_iff_map_neg : StrictAnti (f : α → β) ↔ ∀ a, 0 < a →
/- warning: strict_mono_iff_map_neg -> strictMono_iff_map_neg is a dubious translation:
lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictMono.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
+ forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictMono.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3302 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3304 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3302 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3304) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3317 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3319 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3317 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3319)], Iff (StrictMono.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
Case conversion may be inaccurate. Consider using '#align strict_mono_iff_map_neg strictMono_iff_map_negₓ'. -/
@@ -337,7 +341,7 @@ theorem strictMono_iff_map_neg : StrictMono (f : α → β) ↔ ∀ a < 0, f a <
/- warning: strict_anti_iff_map_pos -> strictAnti_iff_map_pos is a dubious translation:
lean 3 declaration is
- forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictAnti.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
+ forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictAnti.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toHasLt.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LT.lt.{u3} β (Preorder.toHasLt.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
but is expected to have type
forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3393 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3395 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3393 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3395) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3408 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3410 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3408 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3410)], Iff (StrictAnti.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
Case conversion may be inaccurate. Consider using '#align strict_anti_iff_map_pos strictAnti_iff_map_posₓ'. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/3180fab693e2cee3bff62675571264cb8778b212
@@ -259,7 +259,7 @@ variable [OrderedAddCommGroup α] [OrderedAddCommMonoid β] [AddMonoidHomClass F
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Monotone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LE.le.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Monotone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Monotone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
Case conversion may be inaccurate. Consider using '#align monotone_iff_map_nonneg monotone_iff_map_nonnegₓ'. -/
theorem monotone_iff_map_nonneg : Monotone (f : α → β) ↔ ∀ a, 0 ≤ a → 0 ≤ f a :=
⟨fun h a => by
@@ -273,7 +273,7 @@ theorem monotone_iff_map_nonneg : Monotone (f : α → β) ↔ ∀ a, 0 ≤ a
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Antitone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LE.le.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Antitone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2)))))))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Antitone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
Case conversion may be inaccurate. Consider using '#align antitone_iff_map_nonpos antitone_iff_map_nonposₓ'. -/
theorem antitone_iff_map_nonpos : Antitone (f : α → β) ↔ ∀ a, 0 ≤ a → f a ≤ 0 :=
monotone_toDual_comp_iff.symm.trans <| monotone_iff_map_nonneg _
@@ -283,7 +283,7 @@ theorem antitone_iff_map_nonpos : Antitone (f : α → β) ↔ ∀ a, 0 ≤ a
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Monotone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LE.le.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Monotone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2)))))))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Monotone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
Case conversion may be inaccurate. Consider using '#align monotone_iff_map_nonpos monotone_iff_map_nonposₓ'. -/
theorem monotone_iff_map_nonpos : Monotone (f : α → β) ↔ ∀ a ≤ 0, f a ≤ 0 :=
antitone_comp_ofDual_iff.symm.trans <| antitone_iff_map_nonpos _
@@ -293,7 +293,7 @@ theorem monotone_iff_map_nonpos : Monotone (f : α → β) ↔ ∀ a ≤ 0, f a
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F), Iff (Antitone.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LE.le.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LE.le.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Antitone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F), Iff (Antitone.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LE.le.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LE.le.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLE.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
Case conversion may be inaccurate. Consider using '#align antitone_iff_map_nonneg antitone_iff_map_nonnegₓ'. -/
theorem antitone_iff_map_nonneg : Antitone (f : α → β) ↔ ∀ a ≤ 0, 0 ≤ f a :=
monotone_comp_ofDual_iff.symm.trans <| monotone_iff_map_nonneg _
@@ -305,7 +305,7 @@ variable [CovariantClass β β (· + ·) (· < ·)]
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictMono.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3027 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3029 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3027 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3029) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3042 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3044 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3042 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3044)], Iff (StrictMono.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3040 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3042 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3040 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3042) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3055 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3057 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3055 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3057)], Iff (StrictMono.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
Case conversion may be inaccurate. Consider using '#align strict_mono_iff_map_pos strictMono_iff_map_posₓ'. -/
theorem strictMono_iff_map_pos : StrictMono (f : α → β) ↔ ∀ a, 0 < a → 0 < f a :=
⟨fun h a => by
@@ -319,7 +319,7 @@ theorem strictMono_iff_map_pos : StrictMono (f : α → β) ↔ ∀ a, 0 < a →
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictAnti.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))))))) a) -> (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3202 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3204 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3202 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3204) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3217 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3219 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3217 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3219)], Iff (StrictAnti.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2)))))))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3217 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3219 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3217 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3219) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3232 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3234 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3232 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3234)], Iff (StrictAnti.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))))) a) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
Case conversion may be inaccurate. Consider using '#align strict_anti_iff_map_neg strictAnti_iff_map_negₓ'. -/
theorem strictAnti_iff_map_neg : StrictAnti (f : α → β) ↔ ∀ a, 0 < a → f a < 0 :=
strictMono_toDual_comp_iff.symm.trans <| strictMono_iff_map_pos _
@@ -329,7 +329,7 @@ theorem strictAnti_iff_map_neg : StrictAnti (f : α → β) ↔ ∀ a, 0 < a →
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictMono.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))))))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3285 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3287 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3285 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3287) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3300 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3302 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3300 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3302)], Iff (StrictMono.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2)))))))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3302 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3304 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3302 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3304) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3317 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3319 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3317 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3319)], Iff (StrictMono.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2)))))))
Case conversion may be inaccurate. Consider using '#align strict_mono_iff_map_neg strictMono_iff_map_negₓ'. -/
theorem strictMono_iff_map_neg : StrictMono (f : α → β) ↔ ∀ a < 0, f a < 0 :=
strictAnti_comp_ofDual_iff.symm.trans <| strictAnti_iff_map_neg _
@@ -339,7 +339,7 @@ theorem strictMono_iff_map_neg : StrictMono (f : α → β) ↔ ∀ a < 0, f a <
lean 3 declaration is
forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : OrderedAddCommGroup.{u2} α] [_inst_2 : OrderedAddCommMonoid.{u3} β] [_inst_3 : AddMonoidHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u3, u3} β β (HAdd.hAdd.{u3, u3, u3} β β β (instHAdd.{u3} β (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))))) (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))))], Iff (StrictAnti.{u2, u3} α β (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1)) (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2)) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f)) (forall (a : α), (LT.lt.{u2} α (Preorder.toLT.{u2} α (PartialOrder.toPreorder.{u2} α (OrderedAddCommGroup.toPartialOrder.{u2} α _inst_1))) a (OfNat.ofNat.{u2} α 0 (OfNat.mk.{u2} α 0 (Zero.zero.{u2} α (AddZeroClass.toHasZero.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))))))) -> (LT.lt.{u3} β (Preorder.toLT.{u3} β (PartialOrder.toPreorder.{u3} β (OrderedAddCommMonoid.toPartialOrder.{u3} β _inst_2))) (OfNat.ofNat.{u3} β 0 (OfNat.mk.{u3} β 0 (Zero.zero.{u3} β (AddZeroClass.toHasZero.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))))))) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (AddHomClass.toFunLike.{u1, u2, u3} F α β (AddZeroClass.toHasAdd.{u2} α (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1)))))) (AddZeroClass.toHasAdd.{u3} β (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u2, u3} F α β (AddMonoid.toAddZeroClass.{u2} α (SubNegMonoid.toAddMonoid.{u2} α (AddGroup.toSubNegMonoid.{u2} α (AddCommGroup.toAddGroup.{u2} α (OrderedAddCommGroup.toAddCommGroup.{u2} α _inst_1))))) (AddMonoid.toAddZeroClass.{u3} β (AddCommMonoid.toAddMonoid.{u3} β (OrderedAddCommMonoid.toAddCommMonoid.{u3} β _inst_2))) _inst_3))) f a)))
but is expected to have type
- forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3374 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3376 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3374 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3376) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3389 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3391 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3389 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3391)], Iff (StrictAnti.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.398 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
+ forall {F : Type.{u1}} {α : Type.{u3}} {β : Type.{u2}} [_inst_1 : OrderedAddCommGroup.{u3} α] [_inst_2 : OrderedAddCommMonoid.{u2} β] [_inst_3 : AddMonoidHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))] (f : F) [_inst_4 : CovariantClass.{u2, u2} β β (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3393 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3395 : β) => HAdd.hAdd.{u2, u2, u2} β β β (instHAdd.{u2} β (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3393 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3395) (fun (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3408 : β) (x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3410 : β) => LT.lt.{u2} β (Preorder.toLT.{u2} β (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2))) x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3408 x._@.Mathlib.Algebra.Order.Hom.Monoid._hyg.3410)], Iff (StrictAnti.{u3, u2} α β (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1)) (PartialOrder.toPreorder.{u2} β (OrderedAddCommMonoid.toPartialOrder.{u2} β _inst_2)) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f)) (forall (a : α), (LT.lt.{u3} α (Preorder.toLT.{u3} α (PartialOrder.toPreorder.{u3} α (OrderedAddCommGroup.toPartialOrder.{u3} α _inst_1))) a (OfNat.ofNat.{u3} α 0 (Zero.toOfNat0.{u3} α (NegZeroClass.toZero.{u3} α (SubNegZeroMonoid.toNegZeroClass.{u3} α (SubtractionMonoid.toSubNegZeroMonoid.{u3} α (SubtractionCommMonoid.toSubtractionMonoid.{u3} α (AddCommGroup.toDivisionAddCommMonoid.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))))))) -> (LT.lt.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (Preorder.toLT.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (PartialOrder.toPreorder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toPartialOrder.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddMonoid.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (AddCommMonoid.toAddMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) (OrderedAddCommMonoid.toAddCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) a) _inst_2))))) (FunLike.coe.{succ u1, succ u3, succ u2} F α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.403 : α) => β) _x) (AddHomClass.toFunLike.{u1, u3, u2} F α β (AddZeroClass.toAdd.{u3} α (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1)))))) (AddZeroClass.toAdd.{u2} β (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2)))) (AddMonoidHomClass.toAddHomClass.{u1, u3, u2} F α β (AddMonoid.toAddZeroClass.{u3} α (SubNegMonoid.toAddMonoid.{u3} α (AddGroup.toSubNegMonoid.{u3} α (AddCommGroup.toAddGroup.{u3} α (OrderedAddCommGroup.toAddCommGroup.{u3} α _inst_1))))) (AddMonoid.toAddZeroClass.{u2} β (AddCommMonoid.toAddMonoid.{u2} β (OrderedAddCommMonoid.toAddCommMonoid.{u2} β _inst_2))) _inst_3)) f a)))
Case conversion may be inaccurate. Consider using '#align strict_anti_iff_map_pos strictAnti_iff_map_posₓ'. -/
theorem strictAnti_iff_map_pos : StrictAnti (f : α → β) ↔ ∀ a < 0, 0 < f a :=
strictMono_comp_ofDual_iff.symm.trans <| strictMono_iff_map_pos _
@@ -402,7 +402,7 @@ theorem toFun_eq_coe (f : α →*o β) : f.toFun = (f : α → β) :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : MonoidHom.{u1, u2} α β _inst_5 _inst_6) (h : Monotone.{u1, u2} α β _inst_1 _inst_2 (MonoidHom.toFun.{u1, u2} α β _inst_5 _inst_6 f)), Eq.{max (succ u1) (succ u2)} ((fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : MonoidHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α _inst_5) (MulOneClass.toOne.{u1} β _inst_6) (MonoidHom.toOneHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OrderMonoidHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : MonoidHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α _inst_5) (MulOneClass.toOne.{u1} β _inst_6) (MonoidHom.toOneHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OrderMonoidHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_mk OrderMonoidHom.coe_mkₓ'. -/
@[simp, to_additive]
theorem coe_mk (f : α →* β) (h) : (OrderMonoidHom.mk f h : α → β) = f :=
@@ -437,7 +437,7 @@ def toOrderHom (f : α →*o β) : α →o β :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} ((fun (_x : MonoidHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (MonoidHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (MonoidHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) (MonoidHomClass.toMonoidHom.{u2, u1, max u2 u1} α β (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) (MonoidHomClass.toMonoidHom.{u2, u1, max u2 u1} α β (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_monoid_hom OrderMonoidHom.coe_monoidHomₓ'. -/
@[simp, to_additive]
theorem coe_monoidHom (f : α →*o β) : ((f : α →* β) : α → β) = f :=
@@ -901,7 +901,7 @@ theorem toFun_eq_coe (f : α →*₀o β) : f.toFun = (f : α → β) :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (h : Monotone.{u1, u2} α β _inst_1 _inst_2 (MonoidWithZeroHom.toFun.{u1, u2} α β _inst_5 _inst_6 f)), Eq.{max (succ u1) (succ u2)} ((fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidWithZeroHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (ZeroHom.toFun.{u2, u1} α β (MulZeroOneClass.toZero.{u2} α _inst_5) (MulZeroOneClass.toZero.{u1} β _inst_6) (MonoidWithZeroHom.toZeroHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderMonoidWithZeroHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (ZeroHom.toFun.{u2, u1} α β (MulZeroOneClass.toZero.{u2} α _inst_5) (MulZeroOneClass.toZero.{u1} β _inst_6) (MonoidWithZeroHom.toZeroHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderMonoidWithZeroHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_mk OrderMonoidWithZeroHom.coe_mkₓ'. -/
@[simp]
theorem coe_mk (f : α →*₀ β) (h) : (OrderMonoidWithZeroHom.mk f h : α → β) = f :=
@@ -932,7 +932,7 @@ def toOrderMonoidHom (f : α →*₀o β) : α →*o β :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (MonoidWithZeroHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), 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} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u2, u1, max u2 u1} α β (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), 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} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u2, u1, max u2 u1} α β (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_monoid_with_zero_hom OrderMonoidWithZeroHom.coe_monoidWithZeroHomₓ'. -/
@[simp]
theorem coe_monoidWithZeroHom (f : α →*₀o β) : ⇑(f : α →*₀ β) = f :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/38f16f960f5006c6c0c2bac7b0aba5273188f4e5
@@ -402,7 +402,7 @@ theorem toFun_eq_coe (f : α →*o β) : f.toFun = (f : α → β) :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : MonoidHom.{u1, u2} α β _inst_5 _inst_6) (h : Monotone.{u1, u2} α β _inst_1 _inst_2 (MonoidHom.toFun.{u1, u2} α β _inst_5 _inst_6 f)), Eq.{max (succ u1) (succ u2)} ((fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : MonoidHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α _inst_5) (MulOneClass.toOne.{u1} β _inst_6) (MonoidHom.toOneHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OrderMonoidHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : MonoidHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (OneHom.toFun.{u2, u1} α β (MulOneClass.toOne.{u2} α _inst_5) (MulOneClass.toOne.{u1} β _inst_6) (MonoidHom.toOneHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) (OrderMonoidHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_mk OrderMonoidHom.coe_mkₓ'. -/
@[simp, to_additive]
theorem coe_mk (f : α →* β) (h) : (OrderMonoidHom.mk f h : α → β) = f :=
@@ -437,7 +437,7 @@ def toOrderHom (f : α →*o β) : α →o β :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulOneClass.{u1} α] [_inst_6 : MulOneClass.{u2} β] (f : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} ((fun (_x : MonoidHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (MonoidHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidHom.{u1, u2} α β _inst_5 _inst_6) (MonoidHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u1 u2, u1, u2} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.orderMonoidHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) (MonoidHomClass.toMonoidHom.{u2, u1, max u2 u1} α β (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulOneClass.{u2} α] [_inst_6 : MulOneClass.{u1} β] (f : OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α _inst_5) (MulOneClass.toMul.{u1} β _inst_6) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidHom.monoidHomClass.{u2, u1} α β _inst_5 _inst_6))) (MonoidHomClass.toMonoidHom.{u2, u1, max u2 u1} α β (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidHom.instOrderMonoidHomClassOrderMonoidHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_hom.coe_monoid_hom OrderMonoidHom.coe_monoidHomₓ'. -/
@[simp, to_additive]
theorem coe_monoidHom (f : α →*o β) : ((f : α →* β) : α → β) = f :=
@@ -901,7 +901,7 @@ theorem toFun_eq_coe (f : α →*₀o β) : f.toFun = (f : α → β) :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (h : Monotone.{u1, u2} α β _inst_1 _inst_2 (MonoidWithZeroHom.toFun.{u1, u2} α β _inst_5 _inst_6 f)), Eq.{max (succ u1) (succ u2)} ((fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (OrderMonoidWithZeroHom.mk.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (ZeroHom.toFun.{u2, u1} α β (MulZeroOneClass.toZero.{u2} α _inst_5) (MulZeroOneClass.toZero.{u1} β _inst_6) (MonoidWithZeroHom.toZeroHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderMonoidWithZeroHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) (h : Monotone.{u2, u1} α β _inst_1 _inst_2 (ZeroHom.toFun.{u2, u1} α β (MulZeroOneClass.toZero.{u2} α _inst_5) (MulZeroOneClass.toZero.{u1} β _inst_6) (MonoidWithZeroHom.toZeroHom.{u2, u1} α β _inst_5 _inst_6 f))), Eq.{max (succ u2) (succ u1)} (forall (a : α), (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) (OrderMonoidWithZeroHom.mk.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6 f h)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_mk OrderMonoidWithZeroHom.coe_mkₓ'. -/
@[simp]
theorem coe_mk (f : α →*₀ β) (h) : (OrderMonoidWithZeroHom.mk f h : α → β) = f :=
@@ -932,7 +932,7 @@ def toOrderMonoidHom (f : α →*₀o β) : α →*o β :=
lean 3 declaration is
forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Preorder.{u2} β] [_inst_5 : MulZeroOneClass.{u1} α] [_inst_6 : MulZeroOneClass.{u2} β] (f : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (fun (_x : MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) => α -> β) (MonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_5 _inst_6) ((fun (a : Sort.{max (succ u1) (succ u2)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u1) (succ u2), max (succ u2) (succ u1)} a b] => self.0) (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (HasLiftT.mk.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (CoeTCₓ.coe.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (MonoidWithZeroHom.{u1, u2} α β _inst_5 _inst_6) (MonoidWithZeroHom.hasCoeT.{u1, u2, max u1 u2} α β (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u1 u2, u1, u2} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.orderMonoidWithZeroHomClass.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6))))) f)) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) (fun (_x : OrderMonoidWithZeroHom.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) => α -> β) (OrderMonoidWithZeroHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2 _inst_5 _inst_6) f)
but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), 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} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2398 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u2, u1, max u2 u1} α β (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)
+ forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : Preorder.{u2} α] [_inst_2 : Preorder.{u1} β] [_inst_5 : MulZeroOneClass.{u2} α] [_inst_6 : MulZeroOneClass.{u1} β] (f : OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6), 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} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2372 : α) => β) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulOneClass.toMul.{u2} α (MulZeroOneClass.toMulOneClass.{u2} α _inst_5)) (MulOneClass.toMul.{u1} β (MulZeroOneClass.toMulOneClass.{u1} β _inst_6)) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (MonoidWithZeroHomClass.toMonoidHomClass.{max u2 u1, u2, u1} (MonoidWithZeroHom.{u2, u1} α β _inst_5 _inst_6) α β _inst_5 _inst_6 (MonoidWithZeroHom.monoidWithZeroHomClass.{u2, u1} α β _inst_5 _inst_6)))) (MonoidWithZeroHomClass.toMonoidWithZeroHom.{u2, u1, max u2 u1} α β (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) _inst_5 _inst_6 (OrderMonoidWithZeroHomClass.toMonoidWithZeroHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α (fun (_x : α) => (fun (x._@.Mathlib.Order.RelIso.Basic._hyg.867 : α) => β) _x) (RelHomClass.toFunLike.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _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.{u2} α (Preorder.toLE.{u2} α _inst_1) 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) (OrderMonoidHomClass.toOrderHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 (MulZeroOneClass.toMulOneClass.{u2} α _inst_5) (MulZeroOneClass.toMulOneClass.{u1} β _inst_6) (OrderMonoidWithZeroHomClass.toOrderMonoidHomClass.{max u2 u1, u2, u1} (OrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6) α β _inst_1 _inst_2 _inst_5 _inst_6 (OrderMonoidWithZeroHom.instOrderMonoidWithZeroHomClassOrderMonoidWithZeroHom.{u2, u1} α β _inst_1 _inst_2 _inst_5 _inst_6)))) f)
Case conversion may be inaccurate. Consider using '#align order_monoid_with_zero_hom.coe_monoid_with_zero_hom OrderMonoidWithZeroHom.coe_monoidWithZeroHomₓ'. -/
@[simp]
theorem coe_monoidWithZeroHom (f : α →*₀o β) : ⇑(f : α →*₀ β) = f :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
WithZero
material depending on GroupWithZero
(#12351)
Everything under Algebra.Group
should be additivisable. Therefore I move the GroupWithZero
instances for WithZero
from Algebra.Group.WithOne.Defs
and the whole of Algebra.Group.WithOne.Units
to a new file Algebra.GroupWithZero.WithZero
. I credit Mario for https://github.com/leanprover-community/mathlib/commit/ad92a9ba47f417916aab365d13db653fa8991a84 and Johan for https://github.com/leanprover-community/mathlib/pull/762.
Use the opportunity to slightly clean up the code:
:=
by where
in instance declarationscoe
lemmassection ... end
@@ -5,7 +5,7 @@ Authors: Yaël Dillies
-/
import Mathlib.Algebra.GroupWithZero.Hom
import Mathlib.Algebra.Order.Group.Instances
-import Mathlib.Algebra.Order.Monoid.WithZero
+import Mathlib.Algebra.Order.GroupWithZero.Canonical
import Mathlib.Order.Hom.Basic
#align_import algebra.order.hom.monoid from "leanprover-community/mathlib"@"3342d1b2178381196f818146ff79bc0e7ccd9e2d"
LinearOrderedCommGroupWithZero
(#11716)
Reconstitute the file Algebra.Order.Monoid.WithZero
from three files:
Algebra.Order.Monoid.WithZero.Defs
Algebra.Order.Monoid.WithZero.Basic
Algebra.Order.WithZero
Avoid importing it in many files. Most uses were just to get le_zero_iff
to work on Nat
.
Before
After
@@ -5,7 +5,7 @@ Authors: Yaël Dillies
-/
import Mathlib.Algebra.GroupWithZero.Hom
import Mathlib.Algebra.Order.Group.Instances
-import Mathlib.Algebra.Order.Monoid.WithZero.Defs
+import Mathlib.Algebra.Order.Monoid.WithZero
import Mathlib.Order.Hom.Basic
#align_import algebra.order.hom.monoid from "leanprover-community/mathlib"@"3342d1b2178381196f818146ff79bc0e7ccd9e2d"
GroupWithZero
(#11202)
I am claiming that anything within the Algebra.Group
folder should be additivisable, to the exception of MonoidHom.End
maybe. This is not the case of NeZero
, MonoidWithZero
and MonoidWithZeroHom
which were all imported to prove a few lemmas. Those lemmas are easily moved to another file.
@@ -3,7 +3,7 @@ Copyright (c) 2022 Yaël Dillies. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Yaël Dillies
-/
-import Mathlib.Algebra.Group.Hom.Basic
+import Mathlib.Algebra.GroupWithZero.Hom
import Mathlib.Algebra.Order.Group.Instances
import Mathlib.Algebra.Order.Monoid.WithZero.Defs
import Mathlib.Order.Hom.Basic
Rename
Data.Pi.Algebra
to Algebra.Group.Pi.Basic
Algebra.Group.Pi
to Algebra.Group.Pi.Lemmas
Move a few instances from the latter to the former, the goal being that Algebra.Group.Pi.Basic
is about all the pi instances of the classes defined in Algebra.Group.Defs
. Algebra.Group.Pi.Lemmas
will need further rearranging.
@@ -6,7 +6,6 @@ Authors: Yaël Dillies
import Mathlib.Algebra.Group.Hom.Basic
import Mathlib.Algebra.Order.Group.Instances
import Mathlib.Algebra.Order.Monoid.WithZero.Defs
-import Mathlib.Data.Pi.Algebra
import Mathlib.Order.Hom.Basic
#align_import algebra.order.hom.monoid from "leanprover-community/mathlib"@"3342d1b2178381196f818146ff79bc0e7ccd9e2d"
*HomClass
es (#10544)
Drop classes that mix OrderHomClass
with algebraic hom classes.
@@ -22,12 +22,6 @@ This file defines morphisms between (additive) ordered monoids.
* `OrderMonoidHom`: Ordered monoid homomorphisms.
* `OrderMonoidWithZeroHom`: Ordered monoid with zero homomorphisms.
-## Typeclasses
-
-* `OrderAddMonoidHomClass`
-* `OrderMonoidHomClass`
-* `OrderMonoidWithZeroHomClass`
-
## Notation
* `→+o`: Bundled ordered additive monoid homs. Also use for additive groups homs.
@@ -48,6 +42,15 @@ Implicit `{}` brackets are often used instead of type class `[]` brackets. This
instances can be inferred because they are implicit arguments to the type `OrderMonoidHom`. When
they can be inferred from the type it is faster to use this method than to use type class inference.
+### Removed typeclasses
+
+This file used to define typeclasses for order-preserving (additive) monoid homomorphisms:
+`OrderAddMonoidHomClass`, `OrderMonoidHomClass`, and `OrderMonoidWithZeroHomClass`.
+
+In #10544 we migrated from these typeclasses
+to assumptions like `[FunLike F M N] [MonoidHomClass F M N] [OrderHomClass F M N ]`,
+making some definitions and lemmas irrelevant.
+
## Tags
ordered monoid, ordered group, monoid with zero
@@ -78,19 +81,6 @@ structure OrderAddMonoidHom (α β : Type*) [Preorder α] [Preorder β] [AddZero
/-- Infix notation for `OrderAddMonoidHom`. -/
infixr:25 " →+o " => OrderAddMonoidHom
-section
-
-/-- `OrderAddMonoidHomClass F α β` states that `F` is a type of ordered monoid homomorphisms.
-
-You should also extend this typeclass when you extend `OrderAddMonoidHom`. -/
-class OrderAddMonoidHomClass (F α β : Type*) [Preorder α] [Preorder β]
- [AddZeroClass α] [AddZeroClass β] [FunLike F α β] extends AddMonoidHomClass F α β : Prop where
- /-- An `OrderAddMonoidHom` is a monotone function. -/
- monotone (f : F) : Monotone f
-#align order_add_monoid_hom_class OrderAddMonoidHomClass
-
-end
-
-- Instances and lemmas are defined below through `@[to_additive]`.
end AddMonoid
@@ -114,43 +104,22 @@ structure OrderMonoidHom (α β : Type*) [Preorder α] [Preorder β] [MulOneClas
/-- Infix notation for `OrderMonoidHom`. -/
infixr:25 " →*o " => OrderMonoidHom
-section
-
-/-- `OrderMonoidHomClass F α β` states that `F` is a type of ordered monoid homomorphisms.
-
-You should also extend this typeclass when you extend `OrderMonoidHom`. -/
-@[to_additive]
-class OrderMonoidHomClass (F α β : Type*) [Preorder α] [Preorder β] [MulOneClass α] [MulOneClass β]
- [FunLike F α β] extends MonoidHomClass F α β : Prop where
- /-- An `OrderMonoidHom` is a monotone function. -/
- monotone (f : F) : Monotone f
-#align order_monoid_hom_class OrderMonoidHomClass
-
-end
-
variable [Preorder α] [Preorder β] [MulOneClass α] [MulOneClass β] [FunLike F α β]
-/-- Turn an element of a type `F` satisfying `OrderMonoidHomClass F α β` into an actual
-`OrderMonoidHom`. This is declared as the default coercion from `F` to `α →*o β`. -/
+/-- Turn an element of a type `F` satisfying `OrderHomClass F α β` and `MonoidHomClass F α β`
+into an actual `OrderMonoidHom`. This is declared as the default coercion from `F` to `α →*o β`. -/
@[to_additive (attr := coe)
"Turn an element of a type `F` satisfying `OrderAddMonoidHomClass F α β` into an actual
`OrderAddMonoidHom`. This is declared as the default coercion from `F` to `α →+o β`."]
-def OrderMonoidHomClass.toOrderMonoidHom [OrderMonoidHomClass F α β] (f : F) : α →*o β :=
- { (f : α →* β) with monotone' := monotone f }
-
--- See note [lower instance priority]
-@[to_additive]
-instance (priority := 100) OrderMonoidHomClass.toOrderHomClass [OrderMonoidHomClass F α β] :
- OrderHomClass F α β :=
- { ‹OrderMonoidHomClass F α β› with map_rel := OrderMonoidHomClass.monotone }
-#align order_monoid_hom_class.to_order_hom_class OrderMonoidHomClass.toOrderHomClass
-#align order_add_monoid_hom_class.to_order_hom_class OrderAddMonoidHomClass.toOrderHomClass
+def OrderMonoidHomClass.toOrderMonoidHom [OrderHomClass F α β] [MonoidHomClass F α β] (f : F) :
+ α →*o β :=
+ { (f : α →* β) with monotone' := OrderHomClass.monotone f }
/-- Any type satisfying `OrderMonoidHomClass` can be cast into `OrderMonoidHom` via
`OrderMonoidHomClass.toOrderMonoidHom`. -/
@[to_additive "Any type satisfying `OrderAddMonoidHomClass` can be cast into `OrderAddMonoidHom` via
`OrderAddMonoidHomClass.toOrderAddMonoidHom`"]
-instance [OrderMonoidHomClass F α β] : CoeTC F (α →*o β) :=
+instance [OrderHomClass F α β] [MonoidHomClass F α β] : CoeTC F (α →*o β) :=
⟨OrderMonoidHomClass.toOrderMonoidHom⟩
end Monoid
@@ -179,47 +148,31 @@ infixr:25 " →*₀o " => OrderMonoidWithZeroHom
section
-/-- `OrderMonoidWithZeroHomClass F α β` states that `F` is a type of
-ordered monoid with zero homomorphisms.
-
-You should also extend this typeclass when you extend `OrderMonoidWithZeroHom`. -/
-class OrderMonoidWithZeroHomClass (F α β : Type*) [Preorder α] [Preorder β]
- [MulZeroOneClass α] [MulZeroOneClass β] [FunLike F α β]
- extends MonoidWithZeroHomClass F α β : Prop where
- /-- An `OrderMonoidWithZeroHom` is a monotone function. -/
- monotone (f : F) : Monotone f
-#align order_monoid_with_zero_hom_class OrderMonoidWithZeroHomClass
-
variable [FunLike F α β]
-/-- Turn an element of a type `F` satisfying `OrderMonoidWithZeroHomClass F α β` into an actual
-`OrderMonoidWithZeroHom`. This is declared as the default coercion from `F` to `α →+*₀o β`. -/
+/-- Turn an element of a type `F`
+satisfying `OrderHomClass F α β` and `MonoidWithZeroHomClass F α β`
+into an actual `OrderMonoidWithZeroHom`.
+This is declared as the default coercion from `F` to `α →+*₀o β`. -/
@[coe]
-def OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom [OrderMonoidWithZeroHomClass F α β]
- (f : F) : α →*₀o β :=
-{ (f : α →*₀ β) with monotone' := monotone f }
+def OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom [OrderHomClass F α β]
+ [MonoidWithZeroHomClass F α β] (f : F) : α →*₀o β :=
+{ (f : α →*₀ β) with monotone' := OrderHomClass.monotone f }
end
variable [FunLike F α β]
--- See note [lower instance priority]
-instance (priority := 100) OrderMonoidWithZeroHomClass.toOrderMonoidHomClass
- {_ : Preorder α} {_ : Preorder β} {_ : MulZeroOneClass α} {_ : MulZeroOneClass β}
- [OrderMonoidWithZeroHomClass F α β] : OrderMonoidHomClass F α β :=
- { ‹OrderMonoidWithZeroHomClass F α β› with }
-#align order_monoid_with_zero_hom_class.to_order_monoid_hom_class OrderMonoidWithZeroHomClass.toOrderMonoidHomClass
-
-instance [OrderMonoidWithZeroHomClass F α β] : CoeTC F (α →*₀o β) :=
+instance [OrderHomClass F α β] [MonoidWithZeroHomClass F α β] : CoeTC F (α →*₀o β) :=
⟨OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom⟩
end MonoidWithZero
-section OrderedAddCommMonoid
+section OrderedZero
variable [FunLike F α β]
-variable [OrderedAddCommMonoid α] [OrderedAddCommMonoid β] [OrderAddMonoidHomClass F α β] (f : F)
- {a : α}
+variable [Preorder α] [Zero α] [Preorder β] [Zero β] [OrderHomClass F α β]
+ [ZeroHomClass F α β] (f : F) {a : α}
/-- See also `NonnegHomClass.apply_nonneg`. -/
theorem map_nonneg (ha : 0 ≤ a) : 0 ≤ f a := by
@@ -232,7 +185,7 @@ theorem map_nonpos (ha : a ≤ 0) : f a ≤ 0 := by
exact OrderHomClass.mono _ ha
#align map_nonpos map_nonpos
-end OrderedAddCommMonoid
+end OrderedZero
section OrderedAddCommGroup
@@ -299,10 +252,13 @@ instance : FunLike (α →*o β) α β where
congr
@[to_additive]
-instance : OrderMonoidHomClass (α →*o β) α β where
+instance : OrderHomClass (α →*o β) α β where
+ map_rel f _ _ h := f.monotone' h
+
+@[to_additive]
+instance : MonoidHomClass (α →*o β) α β where
map_mul f := f.map_mul'
map_one f := f.map_one'
- monotone f := f.monotone'
-- Other lemmas should be accessed through the `FunLike` API
@[to_additive (attr := ext)]
@@ -586,11 +542,13 @@ instance : FunLike (α →*₀o β) α β where
obtain ⟨⟨⟨_, _⟩⟩, _⟩ := g
congr
-instance : OrderMonoidWithZeroHomClass (α →*₀o β) α β where
+instance : MonoidWithZeroHomClass (α →*₀o β) α β where
map_mul f := f.map_mul'
map_one f := f.map_one'
map_zero f := f.map_zero'
- monotone f := f.monotone'
+
+instance : OrderHomClass (α →*₀o β) α β where
+ map_rel f _ _ h := f.monotone' h
-- Other lemmas should be accessed through the `FunLike` API
@[ext]
@@ -766,3 +724,11 @@ theorem toOrderMonoidHom_eq_coe (f : α →*₀o β) : f.toOrderMonoidHom = f :=
end LinearOrderedCommMonoidWithZero
end OrderMonoidWithZeroHom
+
+/- See module docstring for details. -/
+#noalign order_add_monoid_hom_class
+#noalign order_monoid_hom_class
+#noalign order_monoid_hom_class.to_order_hom_class
+#noalign order_add_monoid_hom_class.to_order_hom_class
+#noalign order_monoid_with_zero_hom_class
+#noalign order_monoid_with_zero_hom_class.to_order_monoid_hom_class
@@ -221,6 +221,7 @@ variable [FunLike F α β]
variable [OrderedAddCommMonoid α] [OrderedAddCommMonoid β] [OrderAddMonoidHomClass F α β] (f : F)
{a : α}
+/-- See also `NonnegHomClass.apply_nonneg`. -/
theorem map_nonneg (ha : 0 ≤ a) : 0 ≤ f a := by
rw [← map_zero f]
exact OrderHomClass.mono _ ha
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.
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]
.
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_param
s, [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 sometimesThis 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.
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 outParam
s 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.)
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>
@@ -83,8 +83,8 @@ section
/-- `OrderAddMonoidHomClass F α β` states that `F` is a type of ordered monoid homomorphisms.
You should also extend this typeclass when you extend `OrderAddMonoidHom`. -/
-class OrderAddMonoidHomClass (F : Type*) (α β : outParam <| Type*) [Preorder α] [Preorder β]
- [AddZeroClass α] [AddZeroClass β] extends AddMonoidHomClass F α β where
+class OrderAddMonoidHomClass (F α β : Type*) [Preorder α] [Preorder β]
+ [AddZeroClass α] [AddZeroClass β] [FunLike F α β] extends AddMonoidHomClass F α β : Prop where
/-- An `OrderAddMonoidHom` is a monotone function. -/
monotone (f : F) : Monotone f
#align order_add_monoid_hom_class OrderAddMonoidHomClass
@@ -120,15 +120,15 @@ section
You should also extend this typeclass when you extend `OrderMonoidHom`. -/
@[to_additive]
-class OrderMonoidHomClass (F : Type*) (α β : outParam <| Type*) [Preorder α] [Preorder β]
- [MulOneClass α] [MulOneClass β] extends MonoidHomClass F α β where
+class OrderMonoidHomClass (F α β : Type*) [Preorder α] [Preorder β] [MulOneClass α] [MulOneClass β]
+ [FunLike F α β] extends MonoidHomClass F α β : Prop where
/-- An `OrderMonoidHom` is a monotone function. -/
monotone (f : F) : Monotone f
#align order_monoid_hom_class OrderMonoidHomClass
end
-variable {_ : Preorder α} {_ : Preorder β} {_ : MulOneClass α} {_ : MulOneClass β}
+variable [Preorder α] [Preorder β] [MulOneClass α] [MulOneClass β] [FunLike F α β]
/-- Turn an element of a type `F` satisfying `OrderMonoidHomClass F α β` into an actual
`OrderMonoidHom`. This is declared as the default coercion from `F` to `α →*o β`. -/
@@ -183,12 +183,15 @@ section
ordered monoid with zero homomorphisms.
You should also extend this typeclass when you extend `OrderMonoidWithZeroHom`. -/
-class OrderMonoidWithZeroHomClass (F : Type*) (α β : outParam <| Type*) [Preorder α] [Preorder β]
- [MulZeroOneClass α] [MulZeroOneClass β] extends MonoidWithZeroHomClass F α β where
+class OrderMonoidWithZeroHomClass (F α β : Type*) [Preorder α] [Preorder β]
+ [MulZeroOneClass α] [MulZeroOneClass β] [FunLike F α β]
+ extends MonoidWithZeroHomClass F α β : Prop where
/-- An `OrderMonoidWithZeroHom` is a monotone function. -/
monotone (f : F) : Monotone f
#align order_monoid_with_zero_hom_class OrderMonoidWithZeroHomClass
+variable [FunLike F α β]
+
/-- Turn an element of a type `F` satisfying `OrderMonoidWithZeroHomClass F α β` into an actual
`OrderMonoidWithZeroHom`. This is declared as the default coercion from `F` to `α →+*₀o β`. -/
@[coe]
@@ -198,6 +201,8 @@ def OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom [OrderMonoidWithZeroHom
end
+variable [FunLike F α β]
+
-- See note [lower instance priority]
instance (priority := 100) OrderMonoidWithZeroHomClass.toOrderMonoidHomClass
{_ : Preorder α} {_ : Preorder β} {_ : MulZeroOneClass α} {_ : MulZeroOneClass β}
@@ -212,6 +217,7 @@ end MonoidWithZero
section OrderedAddCommMonoid
+variable [FunLike F α β]
variable [OrderedAddCommMonoid α] [OrderedAddCommMonoid β] [OrderAddMonoidHomClass F α β] (f : F)
{a : α}
@@ -229,7 +235,8 @@ end OrderedAddCommMonoid
section OrderedAddCommGroup
-variable [OrderedAddCommGroup α] [OrderedAddCommMonoid β] [AddMonoidHomClass F α β] (f : F)
+variable [OrderedAddCommGroup α] [OrderedAddCommMonoid β] [i : FunLike F α β]
+variable [iamhc : AddMonoidHomClass F α β] (f : F)
theorem monotone_iff_map_nonneg : Monotone (f : α → β) ↔ ∀ a, 0 ≤ a → 0 ≤ f a :=
⟨fun h a => by
@@ -240,15 +247,15 @@ theorem monotone_iff_map_nonneg : Monotone (f : α → β) ↔ ∀ a, 0 ≤ a
#align monotone_iff_map_nonneg monotone_iff_map_nonneg
theorem antitone_iff_map_nonpos : Antitone (f : α → β) ↔ ∀ a, 0 ≤ a → f a ≤ 0 :=
- monotone_toDual_comp_iff.symm.trans <| monotone_iff_map_nonneg _
+ monotone_toDual_comp_iff.symm.trans <| monotone_iff_map_nonneg (β := βᵒᵈ) (iamhc := iamhc) _
#align antitone_iff_map_nonpos antitone_iff_map_nonpos
theorem monotone_iff_map_nonpos : Monotone (f : α → β) ↔ ∀ a ≤ 0, f a ≤ 0 :=
- antitone_comp_ofDual_iff.symm.trans <| antitone_iff_map_nonpos _
+ antitone_comp_ofDual_iff.symm.trans <| antitone_iff_map_nonpos (α := αᵒᵈ) (iamhc := iamhc) _
#align monotone_iff_map_nonpos monotone_iff_map_nonpos
theorem antitone_iff_map_nonneg : Antitone (f : α → β) ↔ ∀ a ≤ 0, 0 ≤ f a :=
- monotone_comp_ofDual_iff.symm.trans <| monotone_iff_map_nonneg _
+ monotone_comp_ofDual_iff.symm.trans <| monotone_iff_map_nonneg (α := αᵒᵈ) (iamhc := iamhc) _
#align antitone_iff_map_nonneg antitone_iff_map_nonneg
variable [CovariantClass β β (· + ·) (· < ·)]
@@ -262,15 +269,15 @@ theorem strictMono_iff_map_pos : StrictMono (f : α → β) ↔ ∀ a, 0 < a →
#align strict_mono_iff_map_pos strictMono_iff_map_pos
theorem strictAnti_iff_map_neg : StrictAnti (f : α → β) ↔ ∀ a, 0 < a → f a < 0 :=
- strictMono_toDual_comp_iff.symm.trans <| strictMono_iff_map_pos _
+ strictMono_toDual_comp_iff.symm.trans <| strictMono_iff_map_pos (β := βᵒᵈ) (iamhc := iamhc) _
#align strict_anti_iff_map_neg strictAnti_iff_map_neg
theorem strictMono_iff_map_neg : StrictMono (f : α → β) ↔ ∀ a < 0, f a < 0 :=
- strictAnti_comp_ofDual_iff.symm.trans <| strictAnti_iff_map_neg _
+ strictAnti_comp_ofDual_iff.symm.trans <| strictAnti_iff_map_neg (α := αᵒᵈ) (iamhc := iamhc) _
#align strict_mono_iff_map_neg strictMono_iff_map_neg
theorem strictAnti_iff_map_pos : StrictAnti (f : α → β) ↔ ∀ a < 0, 0 < f a :=
- strictMono_comp_ofDual_iff.symm.trans <| strictMono_iff_map_pos _
+ strictMono_comp_ofDual_iff.symm.trans <| strictMono_iff_map_pos (α := αᵒᵈ) (iamhc := iamhc) _
#align strict_anti_iff_map_pos strictAnti_iff_map_pos
end OrderedAddCommGroup
@@ -283,26 +290,20 @@ variable [Preorder α] [Preorder β] [Preorder γ] [Preorder δ] [MulOneClass α
[MulOneClass γ] [MulOneClass δ] {f g : α →*o β}
@[to_additive]
- instance : OrderMonoidHomClass (α →*o β) α β where
+instance : FunLike (α →*o β) α β where
coe f := f.toFun
coe_injective' f g h := by
obtain ⟨⟨⟨_, _⟩⟩, _⟩ := f
obtain ⟨⟨⟨_, _⟩⟩, _⟩ := g
congr
+
+@[to_additive]
+instance : OrderMonoidHomClass (α →*o β) α β where
map_mul f := f.map_mul'
map_one f := f.map_one'
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.instCoeFunForAll`
--- directly. -/
--- @[to_additive "Helper instance for when there's too many metavariables to apply
--- `DFunLike.instCoeFunForAll` directly."]
--- instance : CoeFun (α →*o β) fun _ => α → β :=
--- DFunLike.instCoeFunForAll
-
--- Other lemmas should be accessed through the `DFunLike` API
+-- Other lemmas should be accessed through the `FunLike` API
@[to_additive (attr := ext)]
theorem ext (h : ∀ a, f a = g a) : f = g :=
DFunLike.ext f g h
@@ -577,25 +578,20 @@ section Preorder
variable [Preorder α] [Preorder β] [Preorder γ] [Preorder δ] [MulZeroOneClass α] [MulZeroOneClass β]
[MulZeroOneClass γ] [MulZeroOneClass δ] {f g : α →*₀o β}
-instance : OrderMonoidWithZeroHomClass (α →*₀o β) α β where
+instance : FunLike (α →*₀o β) α β where
coe f := f.toFun
coe_injective' f g h := by
obtain ⟨⟨⟨_, _⟩⟩, _⟩ := f
obtain ⟨⟨⟨_, _⟩⟩, _⟩ := g
congr
+
+instance : OrderMonoidWithZeroHomClass (α →*₀o β) α β where
map_mul f := f.map_mul'
map_one f := f.map_one'
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.instCoeFunForAll`
---directly. -/
---instance : CoeFun (α →*₀o β) fun _ => α → β :=
--- DFunLike.instCoeFunForAll
-
--- Other lemmas should be accessed through the `DFunLike` API
+-- Other lemmas should be accessed through the `FunLike` API
@[ext]
theorem ext (h : ∀ a, f a = g a) : f = g :=
DFunLike.ext f g h
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>
@@ -295,17 +295,17 @@ variable [Preorder α] [Preorder β] [Preorder γ] [Preorder δ] [MulOneClass α
-- Porting note:
-- These helper instances are unhelpful in Lean 4, so omitting:
--- /-- Helper instance for when there's too many metavariables to apply `FunLike.instCoeFunForAll`
+-- /-- Helper instance for when there's too many metavariables to apply `DFunLike.instCoeFunForAll`
-- directly. -/
-- @[to_additive "Helper instance for when there's too many metavariables to apply
--- `FunLike.instCoeFunForAll` directly."]
+-- `DFunLike.instCoeFunForAll` directly."]
-- instance : CoeFun (α →*o β) fun _ => α → β :=
--- FunLike.instCoeFunForAll
+-- DFunLike.instCoeFunForAll
--- Other lemmas should be accessed through the `FunLike` API
+-- Other lemmas should be accessed through the `DFunLike` API
@[to_additive (attr := ext)]
theorem ext (h : ∀ a, f a = g a) : f = g :=
- FunLike.ext f g h
+ DFunLike.ext f g h
#align order_monoid_hom.ext OrderMonoidHom.ext
#align order_add_monoid_hom.ext OrderAddMonoidHom.ext
@@ -349,13 +349,13 @@ theorem coe_orderHom (f : α →*o β) : ((f : α →o β) : α → β) = f :=
@[to_additive]
theorem toMonoidHom_injective : Injective (toMonoidHom : _ → α →* β) := fun f g h =>
- ext <| by convert FunLike.ext_iff.1 h using 0
+ ext <| by convert DFunLike.ext_iff.1 h using 0
#align order_monoid_hom.to_monoid_hom_injective OrderMonoidHom.toMonoidHom_injective
#align order_add_monoid_hom.to_add_monoid_hom_injective OrderAddMonoidHom.toAddMonoidHom_injective
@[to_additive]
theorem toOrderHom_injective : Injective (toOrderHom : _ → α →o β) := fun f g h =>
- ext <| by convert FunLike.ext_iff.1 h using 0
+ ext <| by convert DFunLike.ext_iff.1 h using 0
#align order_monoid_hom.to_order_hom_injective OrderMonoidHom.toOrderHom_injective
#align order_add_monoid_hom.to_order_hom_injective OrderAddMonoidHom.toOrderHom_injective
@@ -376,7 +376,7 @@ theorem coe_copy (f : α →*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f'
@[to_additive]
theorem copy_eq (f : α →*o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
- FunLike.ext' h
+ DFunLike.ext' h
#align order_monoid_hom.copy_eq OrderMonoidHom.copy_eq
#align order_add_monoid_hom.copy_eq OrderAddMonoidHom.copy_eq
@@ -456,7 +456,7 @@ theorem id_comp (f : α →*o β) : (OrderMonoidHom.id β).comp f = f :=
@[to_additive (attr := simp)]
theorem cancel_right {g₁ g₂ : β →*o γ} {f : α →*o β} (hf : Function.Surjective f) :
g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
- ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, fun _ => by congr⟩
+ ⟨fun h => ext <| hf.forall.2 <| DFunLike.ext_iff.1 h, fun _ => by congr⟩
#align order_monoid_hom.cancel_right OrderMonoidHom.cancel_right
#align order_add_monoid_hom.cancel_right OrderAddMonoidHom.cancel_right
@@ -590,15 +590,15 @@ instance : OrderMonoidWithZeroHomClass (α →*₀o β) α β where
-- Porting note:
-- These helper instances are unhelpful in Lean 4, so omitting:
---/-- Helper instance for when there's too many metavariables to apply `FunLike.instCoeFunForAll`
+--/-- Helper instance for when there's too many metavariables to apply `DFunLike.instCoeFunForAll`
--directly. -/
--instance : CoeFun (α →*₀o β) fun _ => α → β :=
--- FunLike.instCoeFunForAll
+-- DFunLike.instCoeFunForAll
--- Other lemmas should be accessed through the `FunLike` API
+-- Other lemmas should be accessed through the `DFunLike` API
@[ext]
theorem ext (h : ∀ a, f a = g a) : f = g :=
- FunLike.ext f g h
+ DFunLike.ext f g h
#align order_monoid_with_zero_hom.ext OrderMonoidWithZeroHom.ext
theorem toFun_eq_coe (f : α →*₀o β) : f.toFun = (f : α → β) :=
@@ -630,11 +630,11 @@ theorem coe_orderMonoidHom (f : α →*₀o β) : ⇑(f : α →*o β) = f :=
#align order_monoid_with_zero_hom.coe_order_monoid_hom OrderMonoidWithZeroHom.coe_orderMonoidHom
theorem toOrderMonoidHom_injective : Injective (toOrderMonoidHom : _ → α →*o β) := fun f g h =>
- ext <| by convert FunLike.ext_iff.1 h using 0
+ ext <| by convert DFunLike.ext_iff.1 h using 0
#align order_monoid_with_zero_hom.to_order_monoid_hom_injective OrderMonoidWithZeroHom.toOrderMonoidHom_injective
theorem toMonoidWithZeroHom_injective : Injective (toMonoidWithZeroHom : _ → α →*₀ β) :=
- fun f g h => ext <| by convert FunLike.ext_iff.1 h using 0
+ fun f g h => ext <| by convert DFunLike.ext_iff.1 h using 0
#align order_monoid_with_zero_hom.to_monoid_with_zero_hom_injective OrderMonoidWithZeroHom.toMonoidWithZeroHom_injective
/-- Copy of an `OrderMonoidWithZeroHom` with a new `toFun` equal to the old one. Useful to fix
@@ -649,7 +649,7 @@ theorem coe_copy (f : α →*₀o β) (f' : α → β) (h : f' = f) : ⇑(f.copy
#align order_monoid_with_zero_hom.coe_copy OrderMonoidWithZeroHom.coe_copy
theorem copy_eq (f : α →*₀o β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
- FunLike.ext' h
+ DFunLike.ext' h
#align order_monoid_with_zero_hom.copy_eq OrderMonoidWithZeroHom.copy_eq
variable (α)
@@ -711,7 +711,7 @@ theorem id_comp (f : α →*₀o β) : (OrderMonoidWithZeroHom.id β).comp f = f
@[simp]
theorem cancel_right {g₁ g₂ : β →*₀o γ} {f : α →*₀o β} (hf : Function.Surjective f) :
g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
- ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, fun _ => by congr⟩
+ ⟨fun h => ext <| hf.forall.2 <| DFunLike.ext_iff.1 h, fun _ => by congr⟩
#align order_monoid_with_zero_hom.cancel_right OrderMonoidWithZeroHom.cancel_right
@[simp]
Hom
and file name (#8095)
I believe the file defining a type of morphisms belongs alongside the file defining the structure this morphism works on. So I would like to reorganize the files in the Mathlib.Algebra.Hom
folder so that e.g. Mathlib.Algebra.Hom.Ring
becomes Mathlib.Algebra.Ring.Hom
and Mathlib.Algebra.Hom.NonUnitalAlg
becomes Mathlib.Algebra.Algebra.NonUnitalHom
.
While fixing the imports I went ahead and sorted them for good luck.
The full list of changes is: renamed: Mathlib/Algebra/Hom/NonUnitalAlg.lean -> Mathlib/Algebra/Algebra/NonUnitalHom.lean renamed: Mathlib/Algebra/Hom/Aut.lean -> Mathlib/Algebra/Group/Aut.lean renamed: Mathlib/Algebra/Hom/Commute.lean -> Mathlib/Algebra/Group/Commute/Hom.lean renamed: Mathlib/Algebra/Hom/Embedding.lean -> Mathlib/Algebra/Group/Embedding.lean renamed: Mathlib/Algebra/Hom/Equiv/Basic.lean -> Mathlib/Algebra/Group/Equiv/Basic.lean renamed: Mathlib/Algebra/Hom/Equiv/TypeTags.lean -> Mathlib/Algebra/Group/Equiv/TypeTags.lean renamed: Mathlib/Algebra/Hom/Equiv/Units/Basic.lean -> Mathlib/Algebra/Group/Units/Equiv.lean renamed: Mathlib/Algebra/Hom/Equiv/Units/GroupWithZero.lean -> Mathlib/Algebra/GroupWithZero/Units/Equiv.lean renamed: Mathlib/Algebra/Hom/Freiman.lean -> Mathlib/Algebra/Group/Freiman.lean renamed: Mathlib/Algebra/Hom/Group/Basic.lean -> Mathlib/Algebra/Group/Hom/Basic.lean renamed: Mathlib/Algebra/Hom/Group/Defs.lean -> Mathlib/Algebra/Group/Hom/Defs.lean renamed: Mathlib/Algebra/Hom/GroupAction.lean -> Mathlib/GroupTheory/GroupAction/Hom.lean renamed: Mathlib/Algebra/Hom/GroupInstances.lean -> Mathlib/Algebra/Group/Hom/Instances.lean renamed: Mathlib/Algebra/Hom/Iterate.lean -> Mathlib/Algebra/GroupPower/IterateHom.lean renamed: Mathlib/Algebra/Hom/Centroid.lean -> Mathlib/Algebra/Ring/CentroidHom.lean renamed: Mathlib/Algebra/Hom/Ring/Basic.lean -> Mathlib/Algebra/Ring/Hom/Basic.lean renamed: Mathlib/Algebra/Hom/Ring/Defs.lean -> Mathlib/Algebra/Ring/Hom/Defs.lean renamed: Mathlib/Algebra/Hom/Units.lean -> Mathlib/Algebra/Group/Units/Hom.lean
Zulip thread: https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Reorganizing.20.60Mathlib.2EAlgebra.2EHom.60
@@ -3,10 +3,10 @@ Copyright (c) 2022 Yaël Dillies. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Yaël Dillies
-/
-import Mathlib.Data.Pi.Algebra
-import Mathlib.Algebra.Hom.Group.Basic
+import Mathlib.Algebra.Group.Hom.Basic
import Mathlib.Algebra.Order.Group.Instances
import Mathlib.Algebra.Order.Monoid.WithZero.Defs
+import Mathlib.Data.Pi.Algebra
import Mathlib.Order.Hom.Basic
#align_import algebra.order.hom.monoid from "leanprover-community/mathlib"@"3342d1b2178381196f818146ff79bc0e7ccd9e2d"
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Yaël Dillies
-/
import Mathlib.Data.Pi.Algebra
-import Mathlib.Algebra.Hom.Group
+import Mathlib.Algebra.Hom.Group.Basic
import Mathlib.Algebra.Order.Group.Instances
import Mathlib.Algebra.Order.Monoid.WithZero.Defs
import Mathlib.Order.Hom.Basic
@@ -453,14 +453,14 @@ theorem id_comp (f : α →*o β) : (OrderMonoidHom.id β).comp f = f :=
#align order_monoid_hom.id_comp OrderMonoidHom.id_comp
#align order_add_monoid_hom.id_comp OrderAddMonoidHom.id_comp
-@[to_additive]
+@[to_additive (attr := simp)]
theorem cancel_right {g₁ g₂ : β →*o γ} {f : α →*o β} (hf : Function.Surjective f) :
g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, fun _ => by congr⟩
#align order_monoid_hom.cancel_right OrderMonoidHom.cancel_right
#align order_add_monoid_hom.cancel_right OrderAddMonoidHom.cancel_right
-@[to_additive]
+@[to_additive (attr := simp)]
theorem cancel_left {g : β →*o γ} {f₁ f₂ : α →*o β} (hg : Function.Injective g) :
g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
⟨fun h => ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
@@ -708,11 +708,13 @@ theorem comp_id (f : α →*₀o β) : f.comp (OrderMonoidWithZeroHom.id α) = f
theorem id_comp (f : α →*₀o β) : (OrderMonoidWithZeroHom.id β).comp f = f := rfl
#align order_monoid_with_zero_hom.id_comp OrderMonoidWithZeroHom.id_comp
+@[simp]
theorem cancel_right {g₁ g₂ : β →*₀o γ} {f : α →*₀o β} (hf : Function.Surjective f) :
g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, fun _ => by congr⟩
#align order_monoid_with_zero_hom.cancel_right OrderMonoidWithZeroHom.cancel_right
+@[simp]
theorem cancel_left {g : β →*₀o γ} {f₁ f₂ : α →*₀o β} (hg : Function.Injective g) :
g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
⟨fun h => ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
Type _
and Sort _
(#6499)
We remove all possible occurences of Type _
and Sort _
in favor of Type*
and Sort*
.
This has nice performance benefits.
@@ -56,7 +56,7 @@ ordered monoid, ordered group, monoid with zero
open Function
-variable {F α β γ δ : Type _}
+variable {F α β γ δ : Type*}
section AddMonoid
@@ -66,10 +66,10 @@ structure.
`OrderAddMonoidHom` is also used for ordered group homomorphisms.
When possible, instead of parametrizing results over `(f : α →+o β)`,
-you should parametrize over `(F : Type _) [OrderAddMonoidHomClass F α β] (f : F)`.
+you should parametrize over `(F : Type*) [OrderAddMonoidHomClass F α β] (f : F)`.
When you extend this structure, make sure to extend `OrderAddMonoidHomClass`. -/
-structure OrderAddMonoidHom (α β : Type _) [Preorder α] [Preorder β] [AddZeroClass α]
+structure OrderAddMonoidHom (α β : Type*) [Preorder α] [Preorder β] [AddZeroClass α]
[AddZeroClass β] extends α →+ β where
/-- An `OrderAddMonoidHom` is a monotone function. -/
monotone' : Monotone toFun
@@ -83,7 +83,7 @@ section
/-- `OrderAddMonoidHomClass F α β` states that `F` is a type of ordered monoid homomorphisms.
You should also extend this typeclass when you extend `OrderAddMonoidHom`. -/
-class OrderAddMonoidHomClass (F : Type _) (α β : outParam <| Type _) [Preorder α] [Preorder β]
+class OrderAddMonoidHomClass (F : Type*) (α β : outParam <| Type*) [Preorder α] [Preorder β]
[AddZeroClass α] [AddZeroClass β] extends AddMonoidHomClass F α β where
/-- An `OrderAddMonoidHom` is a monotone function. -/
monotone (f : F) : Monotone f
@@ -101,11 +101,11 @@ section Monoid
`OrderMonoidHom` is also used for ordered group homomorphisms.
When possible, instead of parametrizing results over `(f : α →*o β)`,
-you should parametrize over `(F : Type _) [OrderMonoidHomClass F α β] (f : F)`.
+you should parametrize over `(F : Type*) [OrderMonoidHomClass F α β] (f : F)`.
When you extend this structure, make sure to extend `OrderMonoidHomClass`. -/
@[to_additive]
-structure OrderMonoidHom (α β : Type _) [Preorder α] [Preorder β] [MulOneClass α]
+structure OrderMonoidHom (α β : Type*) [Preorder α] [Preorder β] [MulOneClass α]
[MulOneClass β] extends α →* β where
/-- An `OrderMonoidHom` is a monotone function. -/
monotone' : Monotone toFun
@@ -120,7 +120,7 @@ section
You should also extend this typeclass when you extend `OrderMonoidHom`. -/
@[to_additive]
-class OrderMonoidHomClass (F : Type _) (α β : outParam <| Type _) [Preorder α] [Preorder β]
+class OrderMonoidHomClass (F : Type*) (α β : outParam <| Type*) [Preorder α] [Preorder β]
[MulOneClass α] [MulOneClass β] extends MonoidHomClass F α β where
/-- An `OrderMonoidHom` is a monotone function. -/
monotone (f : F) : Monotone f
@@ -165,10 +165,10 @@ the `MonoidWithZero` structure.
`OrderMonoidWithZeroHom` is also used for group homomorphisms.
When possible, instead of parametrizing results over `(f : α →+ β)`,
-you should parametrize over `(F : Type _) [OrderMonoidWithZeroHomClass F α β] (f : F)`.
+you should parametrize over `(F : Type*) [OrderMonoidWithZeroHomClass F α β] (f : F)`.
When you extend this structure, make sure to extend `OrderMonoidWithZeroHomClass`. -/
-structure OrderMonoidWithZeroHom (α β : Type _) [Preorder α] [Preorder β] [MulZeroOneClass α]
+structure OrderMonoidWithZeroHom (α β : Type*) [Preorder α] [Preorder β] [MulZeroOneClass α]
[MulZeroOneClass β] extends α →*₀ β where
/-- An `OrderMonoidWithZeroHom` is a monotone function. -/
monotone' : Monotone toFun
@@ -183,7 +183,7 @@ section
ordered monoid with zero homomorphisms.
You should also extend this typeclass when you extend `OrderMonoidWithZeroHom`. -/
-class OrderMonoidWithZeroHomClass (F : Type _) (α β : outParam <| Type _) [Preorder α] [Preorder β]
+class OrderMonoidWithZeroHomClass (F : Type*) (α β : outParam <| Type*) [Preorder α] [Preorder β]
[MulZeroOneClass α] [MulZeroOneClass β] extends MonoidWithZeroHomClass F α β where
/-- An `OrderMonoidWithZeroHom` is a monotone function. -/
monotone (f : F) : Monotone f
Briefly during the port we were adding "Ported by" headers, but only ~60 / 3000 files ended up with such a header.
I propose deleting them.
We could consider adding these uniformly via a script, as part of the great history rewrite...?
Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
@@ -2,7 +2,6 @@
Copyright (c) 2022 Yaël Dillies. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Yaël Dillies
-Ported by: Frédéric Dupuis
-/
import Mathlib.Data.Pi.Algebra
import Mathlib.Algebra.Hom.Group
@@ -3,11 +3,6 @@ Copyright (c) 2022 Yaël Dillies. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Yaël Dillies
Ported by: Frédéric Dupuis
-
-! This file was ported from Lean 3 source module algebra.order.hom.monoid
-! leanprover-community/mathlib commit 3342d1b2178381196f818146ff79bc0e7ccd9e2d
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.Data.Pi.Algebra
import Mathlib.Algebra.Hom.Group
@@ -15,6 +10,8 @@ import Mathlib.Algebra.Order.Group.Instances
import Mathlib.Algebra.Order.Monoid.WithZero.Defs
import Mathlib.Order.Hom.Basic
+#align_import algebra.order.hom.monoid from "leanprover-community/mathlib"@"3342d1b2178381196f818146ff79bc0e7ccd9e2d"
+
/-!
# Ordered monoid and group homomorphisms
@@ -140,7 +140,7 @@ variable {_ : Preorder α} {_ : Preorder β} {_ : MulOneClass α} {_ : MulOneCla
"Turn an element of a type `F` satisfying `OrderAddMonoidHomClass F α β` into an actual
`OrderAddMonoidHom`. This is declared as the default coercion from `F` to `α →+o β`."]
def OrderMonoidHomClass.toOrderMonoidHom [OrderMonoidHomClass F α β] (f : F) : α →*o β :=
-{ (f : α →* β) with monotone' := monotone f }
+ { (f : α →* β) with monotone' := monotone f }
-- See note [lower instance priority]
@[to_additive]
congr!
and convert
(#2606)
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.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.set_option trace.congr! true
you can see what congr!
sees when it is deciding on congruence lemmas.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.
@@ -353,13 +353,13 @@ theorem coe_orderHom (f : α →*o β) : ((f : α →o β) : α → β) = f :=
@[to_additive]
theorem toMonoidHom_injective : Injective (toMonoidHom : _ → α →* β) := fun f g h =>
- ext <| by convert FunLike.ext_iff.1 h
+ ext <| by convert FunLike.ext_iff.1 h using 0
#align order_monoid_hom.to_monoid_hom_injective OrderMonoidHom.toMonoidHom_injective
#align order_add_monoid_hom.to_add_monoid_hom_injective OrderAddMonoidHom.toAddMonoidHom_injective
@[to_additive]
theorem toOrderHom_injective : Injective (toOrderHom : _ → α →o β) := fun f g h =>
- ext <| by convert FunLike.ext_iff.1 h
+ ext <| by convert FunLike.ext_iff.1 h using 0
#align order_monoid_hom.to_order_hom_injective OrderMonoidHom.toOrderHom_injective
#align order_add_monoid_hom.to_order_hom_injective OrderAddMonoidHom.toOrderHom_injective
@@ -634,11 +634,11 @@ theorem coe_orderMonoidHom (f : α →*₀o β) : ⇑(f : α →*o β) = f :=
#align order_monoid_with_zero_hom.coe_order_monoid_hom OrderMonoidWithZeroHom.coe_orderMonoidHom
theorem toOrderMonoidHom_injective : Injective (toOrderMonoidHom : _ → α →*o β) := fun f g h =>
- ext <| by convert FunLike.ext_iff.1 h
+ ext <| by convert FunLike.ext_iff.1 h using 0
#align order_monoid_with_zero_hom.to_order_monoid_hom_injective OrderMonoidWithZeroHom.toOrderMonoidHom_injective
theorem toMonoidWithZeroHom_injective : Injective (toMonoidWithZeroHom : _ → α →*₀ β) :=
- fun f g h => ext <| by convert FunLike.ext_iff.1 h
+ fun f g h => ext <| by convert FunLike.ext_iff.1 h using 0
#align order_monoid_with_zero_hom.to_monoid_with_zero_hom_injective OrderMonoidWithZeroHom.toMonoidWithZeroHom_injective
/-- Copy of an `OrderMonoidWithZeroHom` with a new `toFun` equal to the old one. Useful to fix
This PR is the result of a slight variant on the following "algorithm"
_
and make all uppercase letters into lowercase_
and make all uppercase letters into lowercase(original_lean3_name, OriginalLean4Name)
#align
statement just before the next empty line#align
statement to have been inserted too early)@@ -422,6 +422,7 @@ theorem coe_comp (f : β →*o γ) (g : α →*o β) : (f.comp g : α → γ) =
theorem comp_apply (f : β →*o γ) (g : α →*o β) (a : α) : (f.comp g) a = f (g a) :=
rfl
#align order_add_monoid_hom.comp_apply OrderAddMonoidHom.comp_apply
+#align order_monoid_hom.comp_apply OrderMonoidHom.comp_apply
@[to_additive]
theorem coe_comp_monoidHom (f : β →*o γ) (g : α →*o β) :
Type*
to Type _
(#1866)
A bunch of docstrings were still mentioning Type*
. This changes them to Type _
.
@@ -70,7 +70,7 @@ structure.
`OrderAddMonoidHom` is also used for ordered group homomorphisms.
When possible, instead of parametrizing results over `(f : α →+o β)`,
-you should parametrize over `(F : Type*) [OrderAddMonoidHomClass F α β] (f : F)`.
+you should parametrize over `(F : Type _) [OrderAddMonoidHomClass F α β] (f : F)`.
When you extend this structure, make sure to extend `OrderAddMonoidHomClass`. -/
structure OrderAddMonoidHom (α β : Type _) [Preorder α] [Preorder β] [AddZeroClass α]
@@ -105,7 +105,7 @@ section Monoid
`OrderMonoidHom` is also used for ordered group homomorphisms.
When possible, instead of parametrizing results over `(f : α →*o β)`,
-you should parametrize over `(F : Type*) [OrderMonoidHomClass F α β] (f : F)`.
+you should parametrize over `(F : Type _) [OrderMonoidHomClass F α β] (f : F)`.
When you extend this structure, make sure to extend `OrderMonoidHomClass`. -/
@[to_additive]
@@ -169,7 +169,7 @@ the `MonoidWithZero` structure.
`OrderMonoidWithZeroHom` is also used for group homomorphisms.
When possible, instead of parametrizing results over `(f : α →+ β)`,
-you should parametrize over `(F : Type*) [OrderMonoidWithZeroHomClass F α β] (f : F)`.
+you should parametrize over `(F : Type _) [OrderMonoidWithZeroHomClass F α β] (f : F)`.
When you extend this structure, make sure to extend `OrderMonoidWithZeroHomClass`. -/
structure OrderMonoidWithZeroHom (α β : Type _) [Preorder α] [Preorder β] [MulZeroOneClass α]
@@ -207,9 +207,7 @@ instance (priority := 100) OrderMonoidWithZeroHomClass.toOrderMonoidHomClass
{_ : Preorder α} {_ : Preorder β} {_ : MulZeroOneClass α} {_ : MulZeroOneClass β}
[OrderMonoidWithZeroHomClass F α β] : OrderMonoidHomClass F α β :=
{ ‹OrderMonoidWithZeroHomClass F α β› with }
-#align
- order_monoid_with_zero_hom_class.to_order_monoid_hom_class
- OrderMonoidWithZeroHomClass.toOrderMonoidHomClass
+#align order_monoid_with_zero_hom_class.to_order_monoid_hom_class OrderMonoidWithZeroHomClass.toOrderMonoidHomClass
instance [OrderMonoidWithZeroHomClass F α β] : CoeTC F (α →*₀o β) :=
⟨OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom⟩
@@ -627,9 +625,7 @@ def toOrderMonoidHom (f : α →*₀o β) : α →*o β :=
@[simp]
theorem coe_monoidWithZeroHom (f : α →*₀o β) : ⇑(f : α →*₀ β) = f :=
rfl
-#align
- order_monoid_with_zero_hom.coe_monoid_with_zero_hom
- OrderMonoidWithZeroHom.coe_monoidWithZeroHom
+#align order_monoid_with_zero_hom.coe_monoid_with_zero_hom OrderMonoidWithZeroHom.coe_monoidWithZeroHom
@[simp]
theorem coe_orderMonoidHom (f : α →*₀o β) : ⇑(f : α →*o β) = f :=
@@ -638,15 +634,11 @@ theorem coe_orderMonoidHom (f : α →*₀o β) : ⇑(f : α →*o β) = f :=
theorem toOrderMonoidHom_injective : Injective (toOrderMonoidHom : _ → α →*o β) := fun f g h =>
ext <| by convert FunLike.ext_iff.1 h
-#align
- order_monoid_with_zero_hom.to_order_monoid_hom_injective
- OrderMonoidWithZeroHom.toOrderMonoidHom_injective
+#align order_monoid_with_zero_hom.to_order_monoid_hom_injective OrderMonoidWithZeroHom.toOrderMonoidHom_injective
theorem toMonoidWithZeroHom_injective : Injective (toMonoidWithZeroHom : _ → α →*₀ β) :=
fun f g h => ext <| by convert FunLike.ext_iff.1 h
-#align
- order_monoid_with_zero_hom.to_monoid_with_zero_hom_injective
- OrderMonoidWithZeroHom.toMonoidWithZeroHom_injective
+#align order_monoid_with_zero_hom.to_monoid_with_zero_hom_injective OrderMonoidWithZeroHom.toMonoidWithZeroHom_injective
/-- Copy of an `OrderMonoidWithZeroHom` with a new `toFun` equal to the old one. Useful to fix
definitional equalities. -/
@@ -698,16 +690,12 @@ theorem comp_apply (f : β →*₀o γ) (g : α →*₀o β) (a : α) : (f.comp
theorem coe_comp_monoidWithZeroHom (f : β →*₀o γ) (g : α →*₀o β) :
(f.comp g : α →*₀ γ) = (f : β →*₀ γ).comp g :=
rfl
-#align
- order_monoid_with_zero_hom.coe_comp_monoid_with_zero_hom
- OrderMonoidWithZeroHom.coe_comp_monoidWithZeroHom
+#align order_monoid_with_zero_hom.coe_comp_monoid_with_zero_hom OrderMonoidWithZeroHom.coe_comp_monoidWithZeroHom
theorem coe_comp_orderMonoidHom (f : β →*₀o γ) (g : α →*₀o β) :
(f.comp g : α →*o γ) = (f : β →*o γ).comp g :=
rfl
-#align
- order_monoid_with_zero_hom.coe_comp_order_monoid_hom
- OrderMonoidWithZeroHom.coe_comp_orderMonoidHom
+#align order_monoid_with_zero_hom.coe_comp_order_monoid_hom OrderMonoidWithZeroHom.coe_comp_orderMonoidHom
@[simp]
theorem comp_assoc (f : γ →*₀o δ) (g : β →*₀o γ) (h : α →*₀o β) :
@@ -772,16 +760,12 @@ variable {hα : Preorder α} {hα' : MulZeroOneClass α} {hβ : Preorder β} {h
@[simp]
theorem toMonoidWithZeroHom_eq_coe (f : α →*₀o β) : f.toMonoidWithZeroHom = f := by
rfl
-#align
- order_monoid_with_zero_hom.to_monoid_with_zero_hom_eq_coe
- OrderMonoidWithZeroHom.toMonoidWithZeroHom_eq_coe
+#align order_monoid_with_zero_hom.to_monoid_with_zero_hom_eq_coe OrderMonoidWithZeroHom.toMonoidWithZeroHom_eq_coe
@[simp]
theorem toOrderMonoidHom_eq_coe (f : α →*₀o β) : f.toOrderMonoidHom = f :=
rfl
-#align
- order_monoid_with_zero_hom.to_order_monoid_hom_eq_coe
- OrderMonoidWithZeroHom.toOrderMonoidHom_eq_coe
+#align order_monoid_with_zero_hom.to_order_monoid_hom_eq_coe OrderMonoidWithZeroHom.toOrderMonoidHom_eq_coe
end LinearOrderedCommMonoidWithZero
HomClass.toHom
coercions to Algebra.Order.Hom.Monoid (#1603)
To create good coercion behaviour for the Homs and fix some broken norm_cast
s in #1482, added OrderMonoidHomClass.toOrderMonoidHom
and OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom
to Algebra.Order.Hom.Monoid
. This is consistent with how we have been treating coercions of Homs in other files recently, such as Algebra.Hom.GroupAction.
Also golfed some ext; rfl
s in that file to rfl
s since that now works.
@@ -134,6 +134,13 @@ end
variable {_ : Preorder α} {_ : Preorder β} {_ : MulOneClass α} {_ : MulOneClass β}
+/-- Turn an element of a type `F` satisfying `OrderMonoidHomClass F α β` into an actual
+`OrderMonoidHom`. This is declared as the default coercion from `F` to `α →*o β`. -/
+@[to_additive (attr := coe)
+ "Turn an element of a type `F` satisfying `OrderAddMonoidHomClass F α β` into an actual
+ `OrderAddMonoidHom`. This is declared as the default coercion from `F` to `α →+o β`."]
+def OrderMonoidHomClass.toOrderMonoidHom [OrderMonoidHomClass F α β] (f : F) : α →*o β :=
+{ (f : α →* β) with monotone' := monotone f }
-- See note [lower instance priority]
@[to_additive]
@@ -143,11 +150,12 @@ instance (priority := 100) OrderMonoidHomClass.toOrderHomClass [OrderMonoidHomCl
#align order_monoid_hom_class.to_order_hom_class OrderMonoidHomClass.toOrderHomClass
#align order_add_monoid_hom_class.to_order_hom_class OrderAddMonoidHomClass.toOrderHomClass
-@[to_additive]
+/-- Any type satisfying `OrderMonoidHomClass` can be cast into `OrderMonoidHom` via
+ `OrderMonoidHomClass.toOrderMonoidHom`. -/
+@[to_additive "Any type satisfying `OrderAddMonoidHomClass` can be cast into `OrderAddMonoidHom` via
+ `OrderAddMonoidHomClass.toOrderAddMonoidHom`"]
instance [OrderMonoidHomClass F α β] : CoeTC F (α →*o β) :=
- ⟨fun f =>
- { toFun := f, map_one' := map_one f, map_mul' := map_mul f,
- monotone' := OrderMonoidHomClass.monotone _ }⟩
+ ⟨OrderMonoidHomClass.toOrderMonoidHom⟩
end Monoid
@@ -185,6 +193,13 @@ class OrderMonoidWithZeroHomClass (F : Type _) (α β : outParam <| Type _) [Pre
monotone (f : F) : Monotone f
#align order_monoid_with_zero_hom_class OrderMonoidWithZeroHomClass
+/-- Turn an element of a type `F` satisfying `OrderMonoidWithZeroHomClass F α β` into an actual
+`OrderMonoidWithZeroHom`. This is declared as the default coercion from `F` to `α →+*₀o β`. -/
+@[coe]
+def OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom [OrderMonoidWithZeroHomClass F α β]
+ (f : F) : α →*₀o β :=
+{ (f : α →*₀ β) with monotone' := monotone f }
+
end
-- See note [lower instance priority]
@@ -192,16 +207,12 @@ instance (priority := 100) OrderMonoidWithZeroHomClass.toOrderMonoidHomClass
{_ : Preorder α} {_ : Preorder β} {_ : MulZeroOneClass α} {_ : MulZeroOneClass β}
[OrderMonoidWithZeroHomClass F α β] : OrderMonoidHomClass F α β :=
{ ‹OrderMonoidWithZeroHomClass F α β› with }
-#align order_monoid_with_zero_hom_class.to_order_monoid_hom_class
+#align
+ order_monoid_with_zero_hom_class.to_order_monoid_hom_class
OrderMonoidWithZeroHomClass.toOrderMonoidHomClass
instance [OrderMonoidWithZeroHomClass F α β] : CoeTC F (α →*₀o β) :=
- ⟨fun f =>
- { toFun := f,
- map_one' := map_one f,
- map_zero' := map_zero f,
- map_mul' := map_mul f,
- monotone' := OrderMonoidWithZeroHomClass.monotone _ }⟩
+ ⟨OrderMonoidWithZeroHomClass.toOrderMonoidWithZeroHom⟩
end MonoidWithZero
@@ -278,8 +289,7 @@ variable [Preorder α] [Preorder β] [Preorder γ] [Preorder δ] [MulOneClass α
[MulOneClass γ] [MulOneClass δ] {f g : α →*o β}
@[to_additive]
-instance : OrderMonoidHomClass (α →*o β) α
- β where
+ instance : OrderMonoidHomClass (α →*o β) α β where
coe f := f.toFun
coe_injective' f g h := by
obtain ⟨⟨⟨_, _⟩⟩, _⟩ := f
@@ -357,7 +367,7 @@ theorem toOrderHom_injective : Injective (toOrderHom : _ → α →o β) := fun
/-- Copy of an `OrderMonoidHom` with a new `toFun` equal to the old one. Useful to fix
definitional equalities. -/
-@[to_additive "Copy of an `OrderMonoidHom` with a new `toFun` equal to the old one. Useful to fix
+@[to_additive "Copy of an `OrderAddMonoidHom` 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.toMonoidHom.copy f' h with toFun := f', monotone' := h.symm.subst f.monotone' }
@@ -438,13 +448,13 @@ theorem comp_assoc (f : γ →*o δ) (g : β →*o γ) (h : α →*o β) :
@[to_additive (attr := simp)]
theorem comp_id (f : α →*o β) : f.comp (OrderMonoidHom.id α) = f :=
- ext fun _ => rfl
+ rfl
#align order_monoid_hom.comp_id OrderMonoidHom.comp_id
#align order_add_monoid_hom.comp_id OrderAddMonoidHom.comp_id
@[to_additive (attr := simp)]
theorem id_comp (f : α →*o β) : (OrderMonoidHom.id β).comp f = f :=
- ext fun _ => rfl
+ rfl
#align order_monoid_hom.id_comp OrderMonoidHom.id_comp
#align order_add_monoid_hom.id_comp OrderAddMonoidHom.id_comp
@@ -486,9 +496,8 @@ theorem one_comp (f : α →*o β) : (1 : β →*o γ).comp f = 1 :=
#align order_add_monoid_hom.zero_comp OrderAddMonoidHom.zero_comp
@[to_additive (attr := simp)]
-theorem comp_one (f : β →*o γ) : f.comp (1 : α →*o β) = 1 := by
- ext
- exact map_one f
+theorem comp_one (f : β →*o γ) : f.comp (1 : α →*o β) = 1 :=
+ ext fun _ => map_one f
#align order_monoid_hom.comp_one OrderMonoidHom.comp_one
#align order_add_monoid_hom.comp_zero OrderAddMonoidHom.comp_zero
@@ -524,9 +533,8 @@ theorem mul_comp (g₁ g₂ : β →*o γ) (f : α →*o β) : (g₁ * g₂).com
#align order_add_monoid_hom.add_comp OrderAddMonoidHom.add_comp
@[to_additive]
-theorem comp_mul (g : β →*o γ) (f₁ f₂ : α →*o β) : g.comp (f₁ * f₂) = g.comp f₁ * g.comp f₂ := by
- ext
- exact map_mul g _ _
+theorem comp_mul (g : β →*o γ) (f₁ f₂ : α →*o β) : g.comp (f₁ * f₂) = g.comp f₁ * g.comp f₂ :=
+ ext fun _ => map_mul g _ _
#align order_monoid_hom.comp_mul OrderMonoidHom.comp_mul
#align order_add_monoid_hom.comp_add OrderAddMonoidHom.comp_add
@@ -537,12 +545,14 @@ section OrderedCommMonoid
variable {hα : OrderedCommMonoid α} {hβ : OrderedCommMonoid β}
@[to_additive (attr := simp)]
-theorem toMonoidHom_eq_coe (f : α →*o β) : f.toMonoidHom = f := by ext; rfl
+theorem toMonoidHom_eq_coe (f : α →*o β) : f.toMonoidHom = f :=
+ rfl
#align order_monoid_hom.to_monoid_hom_eq_coe OrderMonoidHom.toMonoidHom_eq_coe
#align order_add_monoid_hom.to_add_monoid_hom_eq_coe OrderAddMonoidHom.toAddMonoidHom_eq_coe
@[to_additive (attr := simp)]
-theorem toOrderHom_eq_coe (f : α →*o β) : f.toOrderHom = f := rfl
+theorem toOrderHom_eq_coe (f : α →*o β) : f.toOrderHom = f :=
+ rfl
#align order_monoid_hom.to_order_hom_eq_coe OrderMonoidHom.toOrderHom_eq_coe
#align order_add_monoid_hom.to_order_hom_eq_coe OrderAddMonoidHom.toOrderHom_eq_coe
@@ -572,8 +582,7 @@ section Preorder
variable [Preorder α] [Preorder β] [Preorder γ] [Preorder δ] [MulZeroOneClass α] [MulZeroOneClass β]
[MulZeroOneClass γ] [MulZeroOneClass δ] {f g : α →*₀o β}
-instance : OrderMonoidWithZeroHomClass (α →*₀o β) α
- β where
+instance : OrderMonoidWithZeroHomClass (α →*₀o β) α β where
coe f := f.toFun
coe_injective' f g h := by
obtain ⟨⟨⟨_, _⟩⟩, _⟩ := f
@@ -607,9 +616,7 @@ theorem coe_mk (f : α →*₀ β) (h) : (OrderMonoidWithZeroHom.mk f h : α →
#align order_monoid_with_zero_hom.coe_mk OrderMonoidWithZeroHom.coe_mk
@[simp]
-theorem mk_coe (f : α →*₀o β) (h) : OrderMonoidWithZeroHom.mk (f : α →*₀ β) h = f := by
- ext
- rfl
+theorem mk_coe (f : α →*₀o β) (h) : OrderMonoidWithZeroHom.mk (f : α →*₀ β) h = f := rfl
#align order_monoid_with_zero_hom.mk_coe OrderMonoidWithZeroHom.mk_coe
/-- Reinterpret an ordered monoid with zero homomorphism as an order monoid homomorphism. -/
@@ -709,13 +716,11 @@ theorem comp_assoc (f : γ →*₀o δ) (g : β →*₀o γ) (h : α →*₀o β
#align order_monoid_with_zero_hom.comp_assoc OrderMonoidWithZeroHom.comp_assoc
@[simp]
-theorem comp_id (f : α →*₀o β) : f.comp (OrderMonoidWithZeroHom.id α) = f :=
- ext fun _ => rfl
+theorem comp_id (f : α →*₀o β) : f.comp (OrderMonoidWithZeroHom.id α) = f := rfl
#align order_monoid_with_zero_hom.comp_id OrderMonoidWithZeroHom.comp_id
@[simp]
-theorem id_comp (f : α →*₀o β) : (OrderMonoidWithZeroHom.id β).comp f = f :=
- ext fun _ => rfl
+theorem id_comp (f : α →*₀o β) : (OrderMonoidWithZeroHom.id β).comp f = f := rfl
#align order_monoid_with_zero_hom.id_comp OrderMonoidWithZeroHom.id_comp
theorem cancel_right {g₁ g₂ : β →*₀o γ} {f : α →*₀o β} (hf : Function.Surjective f) :
@@ -766,7 +771,6 @@ variable {hα : Preorder α} {hα' : MulZeroOneClass α} {hβ : Preorder β} {h
@[simp]
theorem toMonoidWithZeroHom_eq_coe (f : α →*₀o β) : f.toMonoidWithZeroHom = f := by
- ext
rfl
#align
order_monoid_with_zero_hom.to_monoid_with_zero_hom_eq_coe
to_additive
is @[to_additive (attrs := simp, ext, simps)]
simp
and simps
attributes to the to_additive
-dictionary.simp
-attributes). In particular it's possible that norm_cast
might generate some auxiliary declarations.to_additive
and simps
from the Simps
file to the toAdditive
file for uniformity.@[reassoc]
Co-authored-by: Johan Commelin <johan@commelin.net> Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
@@ -299,7 +299,7 @@ instance : OrderMonoidHomClass (α →*o β) α
-- FunLike.instCoeFunForAll
-- Other lemmas should be accessed through the `FunLike` API
-@[ext, to_additive]
+@[to_additive (attr := ext)]
theorem ext (h : ∀ a, f a = g a) : f = g :=
FunLike.ext f g h
#align order_monoid_hom.ext OrderMonoidHom.ext
@@ -311,13 +311,13 @@ theorem toFun_eq_coe (f : α →*o β) : f.toFun = (f : α → β) :=
#align order_monoid_hom.to_fun_eq_coe OrderMonoidHom.toFun_eq_coe
#align order_add_monoid_hom.to_fun_eq_coe OrderAddMonoidHom.toFun_eq_coe
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem coe_mk (f : α →* β) (h) : (OrderMonoidHom.mk f h : α → β) = f :=
rfl
#align order_monoid_hom.coe_mk OrderMonoidHom.coe_mk
#align order_add_monoid_hom.coe_mk OrderAddMonoidHom.coe_mk
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem mk_coe (f : α →*o β) (h) : OrderMonoidHom.mk (f : α →* β) h = f := by
ext
rfl
@@ -331,13 +331,13 @@ def toOrderHom (f : α →*o β) : α →o β :=
#align order_monoid_hom.to_order_hom OrderMonoidHom.toOrderHom
#align order_add_monoid_hom.to_order_hom OrderAddMonoidHom.toOrderHom
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem coe_monoidHom (f : α →*o β) : ((f : α →* β) : α → β) = f :=
rfl
#align order_monoid_hom.coe_monoid_hom OrderMonoidHom.coe_monoidHom
#align order_add_monoid_hom.coe_add_monoid_hom OrderAddMonoidHom.coe_addMonoidHom
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem coe_orderHom (f : α →*o β) : ((f : α →o β) : α → β) = f :=
rfl
#align order_monoid_hom.coe_order_hom OrderMonoidHom.coe_orderHom
@@ -364,7 +364,7 @@ protected def copy (f : α →*o β) (f' : α → β) (h : f' = f) : α →*o β
#align order_monoid_hom.copy OrderMonoidHom.copy
#align order_add_monoid_hom.copy OrderAddMonoidHom.copy
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem coe_copy (f : α →*o β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
rfl
#align order_monoid_hom.coe_copy OrderMonoidHom.coe_copy
@@ -385,7 +385,7 @@ protected def id : α →*o α :=
#align order_monoid_hom.id OrderMonoidHom.id
#align order_add_monoid_hom.id OrderAddMonoidHom.id
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem coe_id : ⇑(OrderMonoidHom.id α) = id :=
rfl
#align order_monoid_hom.coe_id OrderMonoidHom.coe_id
@@ -404,13 +404,13 @@ def comp (f : β →*o γ) (g : α →*o β) : α →*o γ :=
#align order_monoid_hom.comp OrderMonoidHom.comp
#align order_add_monoid_hom.comp OrderAddMonoidHom.comp
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem coe_comp (f : β →*o γ) (g : α →*o β) : (f.comp g : α → γ) = f ∘ g :=
rfl
#align order_monoid_hom.coe_comp OrderMonoidHom.coe_comp
#align order_add_monoid_hom.coe_comp OrderAddMonoidHom.coe_comp
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem comp_apply (f : β →*o γ) (g : α →*o β) (a : α) : (f.comp g) a = f (g a) :=
rfl
#align order_add_monoid_hom.comp_apply OrderAddMonoidHom.comp_apply
@@ -429,20 +429,20 @@ theorem coe_comp_orderHom (f : β →*o γ) (g : α →*o β) :
#align order_monoid_hom.coe_comp_order_hom OrderMonoidHom.coe_comp_orderHom
#align order_add_monoid_hom.coe_comp_order_hom OrderAddMonoidHom.coe_comp_orderHom
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem comp_assoc (f : γ →*o δ) (g : β →*o γ) (h : α →*o β) :
(f.comp g).comp h = f.comp (g.comp h) :=
rfl
#align order_monoid_hom.comp_assoc OrderMonoidHom.comp_assoc
#align order_add_monoid_hom.comp_assoc OrderAddMonoidHom.comp_assoc
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem comp_id (f : α →*o β) : f.comp (OrderMonoidHom.id α) = f :=
ext fun _ => rfl
#align order_monoid_hom.comp_id OrderMonoidHom.comp_id
#align order_add_monoid_hom.comp_id OrderAddMonoidHom.comp_id
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem id_comp (f : α →*o β) : (OrderMonoidHom.id β).comp f = f :=
ext fun _ => rfl
#align order_monoid_hom.id_comp OrderMonoidHom.id_comp
@@ -467,25 +467,25 @@ theorem cancel_left {g : β →*o γ} {f₁ f₂ : α →*o β} (hg : Function.I
instance : One (α →*o β) :=
⟨{ (1 : α →* β) with monotone' := monotone_const }⟩
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem coe_one : ⇑(1 : α →*o β) = 1 :=
rfl
#align order_monoid_hom.coe_one OrderMonoidHom.coe_one
#align order_add_monoid_hom.coe_zero OrderAddMonoidHom.coe_zero
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem one_apply (a : α) : (1 : α →*o β) a = 1 :=
rfl
#align order_monoid_hom.one_apply OrderMonoidHom.one_apply
#align order_add_monoid_hom.zero_apply OrderAddMonoidHom.zero_apply
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem one_comp (f : α →*o β) : (1 : β →*o γ).comp f = 1 :=
rfl
#align order_monoid_hom.one_comp OrderMonoidHom.one_comp
#align order_add_monoid_hom.zero_comp OrderAddMonoidHom.zero_comp
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem comp_one (f : β →*o γ) : f.comp (1 : α →*o β) = 1 := by
ext
exact map_one f
@@ -505,13 +505,13 @@ additive monoid morphism sending `a` to `f a + g a`."]
instance : Mul (α →*o β) :=
⟨fun f g => { (f * g : α →* β) with monotone' := f.monotone'.mul' g.monotone' }⟩
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem coe_mul (f g : α →*o β) : ⇑(f * g) = f * g :=
rfl
#align order_monoid_hom.coe_mul OrderMonoidHom.coe_mul
#align order_add_monoid_hom.coe_add OrderAddMonoidHom.coe_add
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem mul_apply (f g : α →*o β) (a : α) : (f * g) a = f a * g a :=
rfl
#align order_monoid_hom.mul_apply OrderMonoidHom.mul_apply
@@ -536,12 +536,12 @@ section OrderedCommMonoid
variable {hα : OrderedCommMonoid α} {hβ : OrderedCommMonoid β}
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem toMonoidHom_eq_coe (f : α →*o β) : f.toMonoidHom = f := by ext; rfl
#align order_monoid_hom.to_monoid_hom_eq_coe OrderMonoidHom.toMonoidHom_eq_coe
#align order_add_monoid_hom.to_add_monoid_hom_eq_coe OrderAddMonoidHom.toAddMonoidHom_eq_coe
-@[simp, to_additive]
+@[to_additive (attr := simp)]
theorem toOrderHom_eq_coe (f : α →*o β) : f.toOrderHom = f := rfl
#align order_monoid_hom.to_order_hom_eq_coe OrderMonoidHom.toOrderHom_eq_coe
#align order_add_monoid_hom.to_order_hom_eq_coe OrderAddMonoidHom.toOrderHom_eq_coe
Fix a lot of wrong casing mostly in the docstrings but also sometimes in def/theorem names. E.g. fin 2 --> Fin 2
, add_monoid_hom --> AddMonoidHom
Remove \n
from to_additive
docstrings that were inserted by mathport.
Move files and directories with Gcd
and Smul
to GCD
and SMul
@@ -158,7 +158,7 @@ variable [Preorder α] [Preorder β] [MulZeroOneClass α] [MulZeroOneClass β]
/-- `OrderMonoidWithZeroHom α β` is the type of functions `α → β` that preserve
the `MonoidWithZero` structure.
-`OrderMonoidWithZero_hom` is also used for group homomorphisms.
+`OrderMonoidWithZeroHom` is also used for group homomorphisms.
When possible, instead of parametrizing results over `(f : α →+ β)`,
you should parametrize over `(F : Type*) [OrderMonoidWithZeroHomClass F α β] (f : F)`.
@@ -398,7 +398,7 @@ instance : Inhabited (α →*o α) :=
variable {α}
/-- Composition of `OrderMonoidHom`s as an `OrderMonoidHom`. -/
-@[to_additive "Composition of `order_add_monoid_hom`s as an `order_add_monoid_hom`"]
+@[to_additive "Composition of `OrderAddMonoidHom`s as an `OrderAddMonoidHom`"]
def comp (f : β →*o γ) (g : α →*o β) : α →*o γ :=
{ f.toMonoidHom.comp (g : α →* β), f.toOrderHom.comp (g : α →o β) with }
#align order_monoid_hom.comp OrderMonoidHom.comp
The script used to do this is included. The yaml file was obtained from https://raw.githubusercontent.com/wiki/leanprover-community/mathlib/mathlib4-port-status.md
@@ -3,6 +3,11 @@ Copyright (c) 2022 Yaël Dillies. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Yaël Dillies
Ported by: Frédéric Dupuis
+
+! This file was ported from Lean 3 source module algebra.order.hom.monoid
+! leanprover-community/mathlib commit 3342d1b2178381196f818146ff79bc0e7ccd9e2d
+! Please do not edit these lines, except to modify the commit id
+! if you have ported upstream changes.
-/
import Mathlib.Data.Pi.Algebra
import Mathlib.Algebra.Hom.Group