order.heyting.homMathlib.Order.Heyting.Hom

This file has been ported!

Changes since the initial port

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

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(last sync)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -275,7 +275,7 @@ instance : HeytingHomClass (HeytingHom α β) α β
 /-- Helper instance for when there's too many metavariables to apply `fun_like.has_coe_to_fun`
 directly. -/
 instance : CoeFun (HeytingHom α β) fun _ => α → β :=
-  FunLike.hasCoeToFun
+  DFunLike.hasCoeToFun
 
 #print HeytingHom.toFun_eq_coe /-
 @[simp]
@@ -287,7 +287,7 @@ theorem toFun_eq_coe {f : HeytingHom α β} : f.toFun = (f : α → β) :=
 #print HeytingHom.ext /-
 @[ext]
 theorem ext {f g : HeytingHom α β} (h : ∀ a, f a = g a) : f = g :=
-  FunLike.ext f g h
+  DFunLike.ext f g h
 #align heyting_hom.ext HeytingHom.ext
 -/
 
@@ -313,7 +313,7 @@ theorem coe_copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.co
 
 #print HeytingHom.copy_eq /-
 theorem copy_eq (f : HeytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
-  FunLike.ext' h
+  DFunLike.ext' h
 #align heyting_hom.copy_eq HeytingHom.copy_eq
 -/
 
@@ -348,7 +348,7 @@ instance : Inhabited (HeytingHom α α) :=
   ⟨HeytingHom.id _⟩
 
 instance : PartialOrder (HeytingHom α β) :=
-  PartialOrder.lift _ FunLike.coe_injective
+  PartialOrder.lift _ DFunLike.coe_injective
 
 #print HeytingHom.comp /-
 /-- Composition of `heyting_hom`s as a `heyting_hom`. -/
@@ -400,7 +400,7 @@ theorem id_comp (f : HeytingHom α β) : (HeytingHom.id β).comp f = f :=
 
 #print HeytingHom.cancel_right /-
 theorem cancel_right (hf : 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 heyting_hom.cancel_right HeytingHom.cancel_right
 -/
 
@@ -428,7 +428,7 @@ instance : CoheytingHomClass (CoheytingHom α β) α β
 /-- Helper instance for when there's too many metavariables to apply `fun_like.has_coe_to_fun`
 directly. -/
 instance : CoeFun (CoheytingHom α β) fun _ => α → β :=
-  FunLike.hasCoeToFun
+  DFunLike.hasCoeToFun
 
 #print CoheytingHom.toFun_eq_coe /-
 @[simp]
@@ -440,7 +440,7 @@ theorem toFun_eq_coe {f : CoheytingHom α β} : f.toFun = (f : α → β) :=
 #print CoheytingHom.ext /-
 @[ext]
 theorem ext {f g : CoheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
-  FunLike.ext f g h
+  DFunLike.ext f g h
 #align coheyting_hom.ext CoheytingHom.ext
 -/
 
@@ -466,7 +466,7 @@ theorem coe_copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.
 
 #print CoheytingHom.copy_eq /-
 theorem copy_eq (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
-  FunLike.ext' h
+  DFunLike.ext' h
 #align coheyting_hom.copy_eq CoheytingHom.copy_eq
 -/
 
@@ -501,7 +501,7 @@ instance : Inhabited (CoheytingHom α α) :=
   ⟨CoheytingHom.id _⟩
 
 instance : PartialOrder (CoheytingHom α β) :=
-  PartialOrder.lift _ FunLike.coe_injective
+  PartialOrder.lift _ DFunLike.coe_injective
 
 #print CoheytingHom.comp /-
 /-- Composition of `coheyting_hom`s as a `coheyting_hom`. -/
@@ -553,7 +553,7 @@ theorem id_comp (f : CoheytingHom α β) : (CoheytingHom.id β).comp f = f :=
 
 #print CoheytingHom.cancel_right /-
 theorem cancel_right (hf : 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 coheyting_hom.cancel_right CoheytingHom.cancel_right
 -/
 
@@ -581,7 +581,7 @@ instance : BiheytingHomClass (BiheytingHom α β) α β
 /-- Helper instance for when there's too many metavariables to apply `fun_like.has_coe_to_fun`
 directly. -/
 instance : CoeFun (BiheytingHom α β) fun _ => α → β :=
-  FunLike.hasCoeToFun
+  DFunLike.hasCoeToFun
 
 #print BiheytingHom.toFun_eq_coe /-
 @[simp]
@@ -593,7 +593,7 @@ theorem toFun_eq_coe {f : BiheytingHom α β} : f.toFun = (f : α → β) :=
 #print BiheytingHom.ext /-
 @[ext]
 theorem ext {f g : BiheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
-  FunLike.ext f g h
+  DFunLike.ext f g h
 #align biheyting_hom.ext BiheytingHom.ext
 -/
 
@@ -619,7 +619,7 @@ theorem coe_copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.
 
 #print BiheytingHom.copy_eq /-
 theorem copy_eq (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
-  FunLike.ext' h
+  DFunLike.ext' h
 #align biheyting_hom.copy_eq BiheytingHom.copy_eq
 -/
 
@@ -652,7 +652,7 @@ instance : Inhabited (BiheytingHom α α) :=
   ⟨BiheytingHom.id _⟩
 
 instance : PartialOrder (BiheytingHom α β) :=
-  PartialOrder.lift _ FunLike.coe_injective
+  PartialOrder.lift _ DFunLike.coe_injective
 
 #print BiheytingHom.comp /-
 /-- Composition of `biheyting_hom`s as a `biheyting_hom`. -/
@@ -704,7 +704,7 @@ theorem id_comp (f : BiheytingHom α β) : (BiheytingHom.id β).comp f = f :=
 
 #print BiheytingHom.cancel_right /-
 theorem cancel_right (hf : 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 biheyting_hom.cancel_right BiheytingHom.cancel_right
 -/
 
Diff
@@ -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 Mathbin.Order.Hom.Lattice
+import Order.Hom.Lattice
 
 #align_import order.heyting.hom from "leanprover-community/mathlib"@"50832daea47b195a48b5b33b1c8b2162c48c3afc"
 
Diff
@@ -2,14 +2,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
-
-! This file was ported from Lean 3 source module order.heyting.hom
-! leanprover-community/mathlib commit 50832daea47b195a48b5b33b1c8b2162c48c3afc
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Order.Hom.Lattice
 
+#align_import order.heyting.hom from "leanprover-community/mathlib"@"50832daea47b195a48b5b33b1c8b2162c48c3afc"
+
 /-!
 # Heyting algebra morphisms
 
Diff
@@ -203,17 +203,17 @@ section HeytingAlgebra
 
 variable [HeytingAlgebra α] [HeytingAlgebra β] [HeytingHomClass F α β] (f : F)
 
-include β
-
 #print map_compl /-
 @[simp]
 theorem map_compl (a : α) : f (aᶜ) = f aᶜ := by rw [← himp_bot, ← himp_bot, map_himp, map_bot]
 #align map_compl map_compl
 -/
 
+#print map_bihimp /-
 @[simp]
 theorem map_bihimp (a b : α) : f (a ⇔ b) = f a ⇔ f b := by simp_rw [bihimp, map_inf, map_himp]
 #align map_bihimp map_bihimp
+-/
 
 -- TODO: `map_bihimp`
 end HeytingAlgebra
@@ -222,15 +222,17 @@ section CoheytingAlgebra
 
 variable [CoheytingAlgebra α] [CoheytingAlgebra β] [CoheytingHomClass F α β] (f : F)
 
-include β
-
+#print map_hnot /-
 @[simp]
 theorem map_hnot (a : α) : f (¬a) = ¬f a := by rw [← top_sdiff', ← top_sdiff', map_sdiff, map_top]
 #align map_hnot map_hnot
+-/
 
+#print map_symmDiff /-
 @[simp]
 theorem map_symmDiff (a b : α) : f (a ∆ b) = f a ∆ f b := by simp_rw [symmDiff, map_sup, map_sdiff]
 #align map_symm_diff map_symmDiff
+-/
 
 end CoheytingAlgebra
 
@@ -278,16 +280,21 @@ directly. -/
 instance : CoeFun (HeytingHom α β) fun _ => α → β :=
   FunLike.hasCoeToFun
 
+#print HeytingHom.toFun_eq_coe /-
 @[simp]
 theorem toFun_eq_coe {f : HeytingHom α β} : f.toFun = (f : α → β) :=
   rfl
 #align heyting_hom.to_fun_eq_coe HeytingHom.toFun_eq_coe
+-/
 
+#print HeytingHom.ext /-
 @[ext]
 theorem ext {f g : HeytingHom α β} (h : ∀ a, f a = g a) : f = g :=
   FunLike.ext f g h
 #align heyting_hom.ext HeytingHom.ext
+-/
 
+#print HeytingHom.copy /-
 /-- Copy of a `heyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
 protected def copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : HeytingHom α β
@@ -298,15 +305,20 @@ protected def copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : Heytin
   map_bot' := by simpa only [h] using map_bot f
   map_himp' := by simpa only [h] using map_himp f
 #align heyting_hom.copy HeytingHom.copy
+-/
 
+#print HeytingHom.coe_copy /-
 @[simp]
 theorem coe_copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
   rfl
 #align heyting_hom.coe_copy HeytingHom.coe_copy
+-/
 
+#print HeytingHom.copy_eq /-
 theorem copy_eq (f : HeytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
 #align heyting_hom.copy_eq HeytingHom.copy_eq
+-/
 
 variable (α)
 
@@ -319,17 +331,21 @@ protected def id : HeytingHom α α :=
 #align heyting_hom.id HeytingHom.id
 -/
 
+#print HeytingHom.coe_id /-
 @[simp]
 theorem coe_id : ⇑(HeytingHom.id α) = id :=
   rfl
 #align heyting_hom.coe_id HeytingHom.coe_id
+-/
 
 variable {α}
 
+#print HeytingHom.id_apply /-
 @[simp]
 theorem id_apply (a : α) : HeytingHom.id α a = a :=
   rfl
 #align heyting_hom.id_apply HeytingHom.id_apply
+-/
 
 instance : Inhabited (HeytingHom α α) :=
   ⟨HeytingHom.id _⟩
@@ -349,39 +365,53 @@ def comp (f : HeytingHom β γ) (g : HeytingHom α β) : HeytingHom α γ :=
 
 variable {f f₁ f₂ : HeytingHom α β} {g g₁ g₂ : HeytingHom β γ}
 
+#print HeytingHom.coe_comp /-
 @[simp]
 theorem coe_comp (f : HeytingHom β γ) (g : HeytingHom α β) : ⇑(f.comp g) = f ∘ g :=
   rfl
 #align heyting_hom.coe_comp HeytingHom.coe_comp
+-/
 
+#print HeytingHom.comp_apply /-
 @[simp]
 theorem comp_apply (f : HeytingHom β γ) (g : HeytingHom α β) (a : α) : f.comp g a = f (g a) :=
   rfl
 #align heyting_hom.comp_apply HeytingHom.comp_apply
+-/
 
+#print HeytingHom.comp_assoc /-
 @[simp]
 theorem comp_assoc (f : HeytingHom γ δ) (g : HeytingHom β γ) (h : HeytingHom α β) :
     (f.comp g).comp h = f.comp (g.comp h) :=
   rfl
 #align heyting_hom.comp_assoc HeytingHom.comp_assoc
+-/
 
+#print HeytingHom.comp_id /-
 @[simp]
 theorem comp_id (f : HeytingHom α β) : f.comp (HeytingHom.id α) = f :=
   ext fun a => rfl
 #align heyting_hom.comp_id HeytingHom.comp_id
+-/
 
+#print HeytingHom.id_comp /-
 @[simp]
 theorem id_comp (f : HeytingHom α β) : (HeytingHom.id β).comp f = f :=
   ext fun a => rfl
 #align heyting_hom.id_comp HeytingHom.id_comp
+-/
 
+#print HeytingHom.cancel_right /-
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
 #align heyting_hom.cancel_right HeytingHom.cancel_right
+-/
 
+#print HeytingHom.cancel_left /-
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => HeytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
 #align heyting_hom.cancel_left HeytingHom.cancel_left
+-/
 
 end HeytingHom
 
@@ -403,16 +433,21 @@ directly. -/
 instance : CoeFun (CoheytingHom α β) fun _ => α → β :=
   FunLike.hasCoeToFun
 
+#print CoheytingHom.toFun_eq_coe /-
 @[simp]
 theorem toFun_eq_coe {f : CoheytingHom α β} : f.toFun = (f : α → β) :=
   rfl
 #align coheyting_hom.to_fun_eq_coe CoheytingHom.toFun_eq_coe
+-/
 
+#print CoheytingHom.ext /-
 @[ext]
 theorem ext {f g : CoheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
   FunLike.ext f g h
 #align coheyting_hom.ext CoheytingHom.ext
+-/
 
+#print CoheytingHom.copy /-
 /-- Copy of a `coheyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
 protected def copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : CoheytingHom α β
@@ -423,15 +458,20 @@ protected def copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : Cohe
   map_top' := by simpa only [h] using map_top f
   map_sdiff' := by simpa only [h] using map_sdiff f
 #align coheyting_hom.copy CoheytingHom.copy
+-/
 
+#print CoheytingHom.coe_copy /-
 @[simp]
 theorem coe_copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
   rfl
 #align coheyting_hom.coe_copy CoheytingHom.coe_copy
+-/
 
+#print CoheytingHom.copy_eq /-
 theorem copy_eq (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
 #align coheyting_hom.copy_eq CoheytingHom.copy_eq
+-/
 
 variable (α)
 
@@ -444,17 +484,21 @@ protected def id : CoheytingHom α α :=
 #align coheyting_hom.id CoheytingHom.id
 -/
 
+#print CoheytingHom.coe_id /-
 @[simp]
 theorem coe_id : ⇑(CoheytingHom.id α) = id :=
   rfl
 #align coheyting_hom.coe_id CoheytingHom.coe_id
+-/
 
 variable {α}
 
+#print CoheytingHom.id_apply /-
 @[simp]
 theorem id_apply (a : α) : CoheytingHom.id α a = a :=
   rfl
 #align coheyting_hom.id_apply CoheytingHom.id_apply
+-/
 
 instance : Inhabited (CoheytingHom α α) :=
   ⟨CoheytingHom.id _⟩
@@ -474,39 +518,53 @@ def comp (f : CoheytingHom β γ) (g : CoheytingHom α β) : CoheytingHom α γ
 
 variable {f f₁ f₂ : CoheytingHom α β} {g g₁ g₂ : CoheytingHom β γ}
 
+#print CoheytingHom.coe_comp /-
 @[simp]
 theorem coe_comp (f : CoheytingHom β γ) (g : CoheytingHom α β) : ⇑(f.comp g) = f ∘ g :=
   rfl
 #align coheyting_hom.coe_comp CoheytingHom.coe_comp
+-/
 
+#print CoheytingHom.comp_apply /-
 @[simp]
 theorem comp_apply (f : CoheytingHom β γ) (g : CoheytingHom α β) (a : α) : f.comp g a = f (g a) :=
   rfl
 #align coheyting_hom.comp_apply CoheytingHom.comp_apply
+-/
 
+#print CoheytingHom.comp_assoc /-
 @[simp]
 theorem comp_assoc (f : CoheytingHom γ δ) (g : CoheytingHom β γ) (h : CoheytingHom α β) :
     (f.comp g).comp h = f.comp (g.comp h) :=
   rfl
 #align coheyting_hom.comp_assoc CoheytingHom.comp_assoc
+-/
 
+#print CoheytingHom.comp_id /-
 @[simp]
 theorem comp_id (f : CoheytingHom α β) : f.comp (CoheytingHom.id α) = f :=
   ext fun a => rfl
 #align coheyting_hom.comp_id CoheytingHom.comp_id
+-/
 
+#print CoheytingHom.id_comp /-
 @[simp]
 theorem id_comp (f : CoheytingHom α β) : (CoheytingHom.id β).comp f = f :=
   ext fun a => rfl
 #align coheyting_hom.id_comp CoheytingHom.id_comp
+-/
 
+#print CoheytingHom.cancel_right /-
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
 #align coheyting_hom.cancel_right CoheytingHom.cancel_right
+-/
 
+#print CoheytingHom.cancel_left /-
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => CoheytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
 #align coheyting_hom.cancel_left CoheytingHom.cancel_left
+-/
 
 end CoheytingHom
 
@@ -528,16 +586,21 @@ directly. -/
 instance : CoeFun (BiheytingHom α β) fun _ => α → β :=
   FunLike.hasCoeToFun
 
+#print BiheytingHom.toFun_eq_coe /-
 @[simp]
 theorem toFun_eq_coe {f : BiheytingHom α β} : f.toFun = (f : α → β) :=
   rfl
 #align biheyting_hom.to_fun_eq_coe BiheytingHom.toFun_eq_coe
+-/
 
+#print BiheytingHom.ext /-
 @[ext]
 theorem ext {f g : BiheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
   FunLike.ext f g h
 #align biheyting_hom.ext BiheytingHom.ext
+-/
 
+#print BiheytingHom.copy /-
 /-- Copy of a `biheyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
 protected def copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : BiheytingHom α β
@@ -548,15 +611,20 @@ protected def copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : Bihe
   map_himp' := by simpa only [h] using map_himp f
   map_sdiff' := by simpa only [h] using map_sdiff f
 #align biheyting_hom.copy BiheytingHom.copy
+-/
 
+#print BiheytingHom.coe_copy /-
 @[simp]
 theorem coe_copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
   rfl
 #align biheyting_hom.coe_copy BiheytingHom.coe_copy
+-/
 
+#print BiheytingHom.copy_eq /-
 theorem copy_eq (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
 #align biheyting_hom.copy_eq BiheytingHom.copy_eq
+-/
 
 variable (α)
 
@@ -567,17 +635,21 @@ protected def id : BiheytingHom α α :=
 #align biheyting_hom.id BiheytingHom.id
 -/
 
+#print BiheytingHom.coe_id /-
 @[simp]
 theorem coe_id : ⇑(BiheytingHom.id α) = id :=
   rfl
 #align biheyting_hom.coe_id BiheytingHom.coe_id
+-/
 
 variable {α}
 
+#print BiheytingHom.id_apply /-
 @[simp]
 theorem id_apply (a : α) : BiheytingHom.id α a = a :=
   rfl
 #align biheyting_hom.id_apply BiheytingHom.id_apply
+-/
 
 instance : Inhabited (BiheytingHom α α) :=
   ⟨BiheytingHom.id _⟩
@@ -597,39 +669,53 @@ def comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : BiheytingHom α γ
 
 variable {f f₁ f₂ : BiheytingHom α β} {g g₁ g₂ : BiheytingHom β γ}
 
+#print BiheytingHom.coe_comp /-
 @[simp]
 theorem coe_comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : ⇑(f.comp g) = f ∘ g :=
   rfl
 #align biheyting_hom.coe_comp BiheytingHom.coe_comp
+-/
 
+#print BiheytingHom.comp_apply /-
 @[simp]
 theorem comp_apply (f : BiheytingHom β γ) (g : BiheytingHom α β) (a : α) : f.comp g a = f (g a) :=
   rfl
 #align biheyting_hom.comp_apply BiheytingHom.comp_apply
+-/
 
+#print BiheytingHom.comp_assoc /-
 @[simp]
 theorem comp_assoc (f : BiheytingHom γ δ) (g : BiheytingHom β γ) (h : BiheytingHom α β) :
     (f.comp g).comp h = f.comp (g.comp h) :=
   rfl
 #align biheyting_hom.comp_assoc BiheytingHom.comp_assoc
+-/
 
+#print BiheytingHom.comp_id /-
 @[simp]
 theorem comp_id (f : BiheytingHom α β) : f.comp (BiheytingHom.id α) = f :=
   ext fun a => rfl
 #align biheyting_hom.comp_id BiheytingHom.comp_id
+-/
 
+#print BiheytingHom.id_comp /-
 @[simp]
 theorem id_comp (f : BiheytingHom α β) : (BiheytingHom.id β).comp f = f :=
   ext fun a => rfl
 #align biheyting_hom.id_comp BiheytingHom.id_comp
+-/
 
+#print BiheytingHom.cancel_right /-
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
 #align biheyting_hom.cancel_right BiheytingHom.cancel_right
+-/
 
+#print BiheytingHom.cancel_left /-
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => BiheytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
 #align biheyting_hom.cancel_left BiheytingHom.cancel_left
+-/
 
 end BiheytingHom
 
Diff
@@ -45,7 +45,7 @@ variable {F α β γ δ : Type _}
 Heyting implication. -/
 @[protect_proj]
 structure HeytingHom (α β : Type _) [HeytingAlgebra α] [HeytingAlgebra β] extends
-  LatticeHom α β where
+    LatticeHom α β where
   map_bot' : to_fun ⊥ = ⊥
   map_himp' : ∀ a b, to_fun (a ⇨ b) = to_fun a ⇨ to_fun b
 #align heyting_hom HeytingHom
@@ -56,7 +56,7 @@ structure HeytingHom (α β : Type _) [HeytingAlgebra α] [HeytingAlgebra β] ex
 preserve difference. -/
 @[protect_proj]
 structure CoheytingHom (α β : Type _) [CoheytingAlgebra α] [CoheytingAlgebra β] extends
-  LatticeHom α β where
+    LatticeHom α β where
   map_top' : to_fun ⊤ = ⊤
   map_sdiff' : ∀ a b, to_fun (a \ b) = to_fun a \ to_fun b
 #align coheyting_hom CoheytingHom
@@ -67,7 +67,7 @@ structure CoheytingHom (α β : Type _) [CoheytingAlgebra α] [CoheytingAlgebra
 preserve Heyting implication and difference. -/
 @[protect_proj]
 structure BiheytingHom (α β : Type _) [BiheytingAlgebra α] [BiheytingAlgebra β] extends
-  LatticeHom α β where
+    LatticeHom α β where
   map_himp' : ∀ a b, to_fun (a ⇨ b) = to_fun a ⇨ to_fun b
   map_sdiff' : ∀ a b, to_fun (a \ b) = to_fun a \ to_fun b
 #align biheyting_hom BiheytingHom
@@ -78,7 +78,7 @@ structure BiheytingHom (α β : Type _) [BiheytingAlgebra α] [BiheytingAlgebra
 
 You should extend this class when you extend `heyting_hom`. -/
 class HeytingHomClass (F : Type _) (α β : outParam <| Type _) [HeytingAlgebra α]
-  [HeytingAlgebra β] extends LatticeHomClass F α β where
+    [HeytingAlgebra β] extends LatticeHomClass F α β where
   map_bot (f : F) : f ⊥ = ⊥
   map_himp (f : F) : ∀ a b, f (a ⇨ b) = f a ⇨ f b
 #align heyting_hom_class HeytingHomClass
@@ -89,7 +89,7 @@ class HeytingHomClass (F : Type _) (α β : outParam <| Type _) [HeytingAlgebra
 
 You should extend this class when you extend `coheyting_hom`. -/
 class CoheytingHomClass (F : Type _) (α β : outParam <| Type _) [CoheytingAlgebra α]
-  [CoheytingAlgebra β] extends LatticeHomClass F α β where
+    [CoheytingAlgebra β] extends LatticeHomClass F α β where
   map_top (f : F) : f ⊤ = ⊤
   map_sdiff (f : F) : ∀ a b, f (a \ b) = f a \ f b
 #align coheyting_hom_class CoheytingHomClass
@@ -100,7 +100,7 @@ class CoheytingHomClass (F : Type _) (α β : outParam <| Type _) [CoheytingAlge
 
 You should extend this class when you extend `biheyting_hom`. -/
 class BiheytingHomClass (F : Type _) (α β : outParam <| Type _) [BiheytingAlgebra α]
-  [BiheytingAlgebra β] extends LatticeHomClass F α β where
+    [BiheytingAlgebra β] extends LatticeHomClass F α β where
   map_himp (f : F) : ∀ a b, f (a ⇨ b) = f a ⇨ f b
   map_sdiff (f : F) : ∀ a b, f (a \ b) = f a \ f b
 #align biheyting_hom_class BiheytingHomClass
Diff
@@ -148,6 +148,7 @@ instance (priority := 100) BiheytingHomClass.toCoheytingHomClass [BiheytingAlgeb
 #align biheyting_hom_class.to_coheyting_hom_class BiheytingHomClass.toCoheytingHomClass
 -/
 
+#print OrderIsoClass.toHeytingHomClass /-
 -- See note [lower instance priority]
 instance (priority := 100) OrderIsoClass.toHeytingHomClass [HeytingAlgebra α] [HeytingAlgebra β]
     [OrderIsoClass F α β] : HeytingHomClass F α β :=
@@ -156,7 +157,9 @@ instance (priority := 100) OrderIsoClass.toHeytingHomClass [HeytingAlgebra α] [
       eq_of_forall_le_iff fun c => by simp only [← map_inv_le_iff, le_himp_iff];
         rw [← OrderIsoClass.map_le_map_iff f]; simp }
 #align order_iso_class.to_heyting_hom_class OrderIsoClass.toHeytingHomClass
+-/
 
+#print OrderIsoClass.toCoheytingHomClass /-
 -- See note [lower instance priority]
 instance (priority := 100) OrderIsoClass.toCoheytingHomClass [CoheytingAlgebra α]
     [CoheytingAlgebra β] [OrderIsoClass F α β] : CoheytingHomClass F α β :=
@@ -165,7 +168,9 @@ instance (priority := 100) OrderIsoClass.toCoheytingHomClass [CoheytingAlgebra 
       eq_of_forall_ge_iff fun c => by simp only [← le_map_inv_iff, sdiff_le_iff];
         rw [← OrderIsoClass.map_le_map_iff f]; simp }
 #align order_iso_class.to_coheyting_hom_class OrderIsoClass.toCoheytingHomClass
+-/
 
+#print OrderIsoClass.toBiheytingHomClass /-
 -- See note [lower instance priority]
 instance (priority := 100) OrderIsoClass.toBiheytingHomClass [BiheytingAlgebra α]
     [BiheytingAlgebra β] [OrderIsoClass F α β] : BiheytingHomClass F α β :=
@@ -178,6 +183,7 @@ instance (priority := 100) OrderIsoClass.toBiheytingHomClass [BiheytingAlgebra 
       eq_of_forall_ge_iff fun c => by simp only [← le_map_inv_iff, sdiff_le_iff];
         rw [← OrderIsoClass.map_le_map_iff f]; simp }
 #align order_iso_class.to_biheyting_hom_class OrderIsoClass.toBiheytingHomClass
+-/
 
 #print BoundedLatticeHomClass.toBiheytingHomClass /-
 -- See note [reducible non instances]
Diff
@@ -148,12 +148,6 @@ instance (priority := 100) BiheytingHomClass.toCoheytingHomClass [BiheytingAlgeb
 #align biheyting_hom_class.to_coheyting_hom_class BiheytingHomClass.toCoheytingHomClass
 -/
 
-/- warning: order_iso_class.to_heyting_hom_class -> OrderIsoClass.toHeytingHomClass is a dubious translation:
-lean 3 declaration is
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : OrderIsoClass.{u1, u2, u3} F α β (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))))))], HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2
-but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] {_inst_2 : HeytingAlgebra.{u3} β} [_inst_3 : OrderIsoClass.{u1, u2, u3} F α β (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))))))], HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2
-Case conversion may be inaccurate. Consider using '#align order_iso_class.to_heyting_hom_class OrderIsoClass.toHeytingHomClassₓ'. -/
 -- See note [lower instance priority]
 instance (priority := 100) OrderIsoClass.toHeytingHomClass [HeytingAlgebra α] [HeytingAlgebra β]
     [OrderIsoClass F α β] : HeytingHomClass F α β :=
@@ -163,12 +157,6 @@ instance (priority := 100) OrderIsoClass.toHeytingHomClass [HeytingAlgebra α] [
         rw [← OrderIsoClass.map_le_map_iff f]; simp }
 #align order_iso_class.to_heyting_hom_class OrderIsoClass.toHeytingHomClass
 
-/- warning: order_iso_class.to_coheyting_hom_class -> OrderIsoClass.toCoheytingHomClass is a dubious translation:
-lean 3 declaration is
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : OrderIsoClass.{u1, u2, u3} F α β (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))))))], CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2
-but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] {_inst_2 : CoheytingAlgebra.{u3} β} [_inst_3 : OrderIsoClass.{u1, u2, u3} F α β (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))))))], CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2
-Case conversion may be inaccurate. Consider using '#align order_iso_class.to_coheyting_hom_class OrderIsoClass.toCoheytingHomClassₓ'. -/
 -- See note [lower instance priority]
 instance (priority := 100) OrderIsoClass.toCoheytingHomClass [CoheytingAlgebra α]
     [CoheytingAlgebra β] [OrderIsoClass F α β] : CoheytingHomClass F α β :=
@@ -178,12 +166,6 @@ instance (priority := 100) OrderIsoClass.toCoheytingHomClass [CoheytingAlgebra 
         rw [← OrderIsoClass.map_le_map_iff f]; simp }
 #align order_iso_class.to_coheyting_hom_class OrderIsoClass.toCoheytingHomClass
 
-/- warning: order_iso_class.to_biheyting_hom_class -> OrderIsoClass.toBiheytingHomClass is a dubious translation:
-lean 3 declaration is
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : OrderIsoClass.{u1, u2, u3} F α β (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))))))], BiheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2
-but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u2} α] {_inst_2 : BiheytingAlgebra.{u3} β} [_inst_3 : OrderIsoClass.{u1, u2, u3} F α β (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))))))], BiheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2
-Case conversion may be inaccurate. Consider using '#align order_iso_class.to_biheyting_hom_class OrderIsoClass.toBiheytingHomClassₓ'. -/
 -- See note [lower instance priority]
 instance (priority := 100) OrderIsoClass.toBiheytingHomClass [BiheytingAlgebra α]
     [BiheytingAlgebra β] [OrderIsoClass F α β] : BiheytingHomClass F α β :=
@@ -223,9 +205,6 @@ theorem map_compl (a : α) : f (aᶜ) = f aᶜ := by rw [← himp_bot, ← himp_
 #align map_compl map_compl
 -/
 
-/- warning: map_bihimp -> map_bihimp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align map_bihimp map_bihimpₓ'. -/
 @[simp]
 theorem map_bihimp (a b : α) : f (a ⇔ b) = f a ⇔ f b := by simp_rw [bihimp, map_inf, map_himp]
 #align map_bihimp map_bihimp
@@ -239,19 +218,10 @@ variable [CoheytingAlgebra α] [CoheytingAlgebra β] [CoheytingHomClass F α β]
 
 include β
 
-/- warning: map_hnot -> map_hnot is a dubious translation:
-lean 3 declaration is
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α), Eq.{succ u3} β (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (HNot.hnot.{u2} α (CoheytingAlgebra.toHasHnot.{u2} α _inst_1) a)) (HNot.hnot.{u3} β (CoheytingAlgebra.toHasHnot.{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 : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a))
-but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (HNot.hnot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (CoheytingAlgebra.toHNot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) _inst_2) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a))
-Case conversion may be inaccurate. Consider using '#align map_hnot map_hnotₓ'. -/
 @[simp]
 theorem map_hnot (a : α) : f (¬a) = ¬f a := by rw [← top_sdiff', ← top_sdiff', map_sdiff, map_top]
 #align map_hnot map_hnot
 
-/- warning: map_symm_diff -> map_symmDiff is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align map_symm_diff map_symmDiffₓ'. -/
 @[simp]
 theorem map_symmDiff (a b : α) : f (a ∆ b) = f a ∆ f b := by simp_rw [symmDiff, map_sup, map_sdiff]
 #align map_symm_diff map_symmDiff
@@ -302,34 +272,16 @@ directly. -/
 instance : CoeFun (HeytingHom α β) fun _ => α → β :=
   FunLike.hasCoeToFun
 
-/- warning: heyting_hom.to_fun_eq_coe -> HeytingHom.toFun_eq_coe is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] {f : HeytingHom.{u1, u2} α β _inst_1 _inst_2}, Eq.{max (succ u1) (succ u2)} (α -> β) (SupHom.toFun.{u1, u2} α β (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))) (SemilatticeSup.toHasSup.{u2} β (Lattice.toSemilatticeSup.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))) (LatticeHom.toSupHom.{u1, u2} α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingHom.toLatticeHom.{u1, u2} α β _inst_1 _inst_2 f))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
-Case conversion may be inaccurate. Consider using '#align heyting_hom.to_fun_eq_coe HeytingHom.toFun_eq_coeₓ'. -/
 @[simp]
 theorem toFun_eq_coe {f : HeytingHom α β} : f.toFun = (f : α → β) :=
   rfl
 #align heyting_hom.to_fun_eq_coe HeytingHom.toFun_eq_coe
 
-/- warning: heyting_hom.ext -> HeytingHom.ext is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] {f : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {g : HeytingHom.{u1, u2} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a)) -> (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) f g)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2} {g : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
-Case conversion may be inaccurate. Consider using '#align heyting_hom.ext HeytingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : HeytingHom α β} (h : ∀ a, f a = g a) : f = g :=
   FunLike.ext f g h
 #align heyting_hom.ext HeytingHom.ext
 
-/- warning: heyting_hom.copy -> HeytingHom.copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (HeytingHom.{u1, u2} α β _inst_1 _inst_2)
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (HeytingHom.{u1, u2} α β _inst_1 _inst_2)
-Case conversion may be inaccurate. Consider using '#align heyting_hom.copy HeytingHom.copyₓ'. -/
 /-- Copy of a `heyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
 protected def copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : HeytingHom α β
@@ -341,23 +293,11 @@ protected def copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : Heytin
   map_himp' := by simpa only [h] using map_himp f
 #align heyting_hom.copy HeytingHom.copy
 
-/- warning: heyting_hom.coe_copy -> HeytingHom.coe_copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) (HeytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h)) f'
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
-Case conversion may be inaccurate. Consider using '#align heyting_hom.coe_copy HeytingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
   rfl
 #align heyting_hom.coe_copy HeytingHom.coe_copy
 
-/- warning: heyting_hom.copy_eq -> HeytingHom.copy_eq is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (HeytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h) f
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
-Case conversion may be inaccurate. Consider using '#align heyting_hom.copy_eq HeytingHom.copy_eqₓ'. -/
 theorem copy_eq (f : HeytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
 #align heyting_hom.copy_eq HeytingHom.copy_eq
@@ -373,12 +313,6 @@ protected def id : HeytingHom α α :=
 #align heyting_hom.id HeytingHom.id
 -/
 
-/- warning: heyting_hom.coe_id -> HeytingHom.coe_id is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) [_inst_1 : HeytingAlgebra.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : HeytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (HeytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (HeytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
-but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : HeytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
-Case conversion may be inaccurate. Consider using '#align heyting_hom.coe_id HeytingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(HeytingHom.id α) = id :=
   rfl
@@ -386,12 +320,6 @@ theorem coe_id : ⇑(HeytingHom.id α) = id :=
 
 variable {α}
 
-/- warning: heyting_hom.id_apply -> HeytingHom.id_apply is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : HeytingAlgebra.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : HeytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (HeytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (HeytingHom.id.{u1} α _inst_1) a) a
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : HeytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1) a) a
-Case conversion may be inaccurate. Consider using '#align heyting_hom.id_apply HeytingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : HeytingHom.id α a = a :=
   rfl
@@ -415,78 +343,36 @@ def comp (f : HeytingHom β γ) (g : HeytingHom α β) : HeytingHom α γ :=
 
 variable {f f₁ f₂ : HeytingHom α β} {g g₁ g₂ : HeytingHom β γ}
 
-/- warning: heyting_hom.coe_comp -> HeytingHom.coe_comp is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] (f : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : HeytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (HeytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (HeytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
-Case conversion may be inaccurate. Consider using '#align heyting_hom.coe_comp HeytingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : HeytingHom β γ) (g : HeytingHom α β) : ⇑(f.comp g) = f ∘ g :=
   rfl
 #align heyting_hom.coe_comp HeytingHom.coe_comp
 
-/- warning: heyting_hom.comp_apply -> HeytingHom.comp_apply is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] (f : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : HeytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (HeytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (HeytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
-Case conversion may be inaccurate. Consider using '#align heyting_hom.comp_apply HeytingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : HeytingHom β γ) (g : HeytingHom α β) (a : α) : f.comp g a = f (g a) :=
   rfl
 #align heyting_hom.comp_apply HeytingHom.comp_apply
 
-/- warning: heyting_hom.comp_assoc -> HeytingHom.comp_assoc is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} {δ : Type.{u4}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] [_inst_4 : HeytingAlgebra.{u4} δ] (f : HeytingHom.{u3, u4} γ δ _inst_3 _inst_4) (g : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (h : HeytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u4)} (HeytingHom.{u1, u4} α δ _inst_1 _inst_4) (HeytingHom.comp.{u1, u2, u4} α β δ _inst_1 _inst_2 _inst_4 (HeytingHom.comp.{u2, u3, u4} β γ δ _inst_2 _inst_3 _inst_4 f g) h) (HeytingHom.comp.{u1, u3, u4} α γ δ _inst_1 _inst_3 _inst_4 f (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g h))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u4}} {δ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u4} γ] [_inst_4 : HeytingAlgebra.{u3} δ] (f : HeytingHom.{u4, u3} γ δ _inst_3 _inst_4) (g : HeytingHom.{u2, u4} β γ _inst_2 _inst_3) (h : HeytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α δ _inst_1 _inst_4) (HeytingHom.comp.{u1, u2, u3} α β δ _inst_1 _inst_2 _inst_4 (HeytingHom.comp.{u2, u4, u3} β γ δ _inst_2 _inst_3 _inst_4 f g) h) (HeytingHom.comp.{u1, u4, u3} α γ δ _inst_1 _inst_3 _inst_4 f (HeytingHom.comp.{u1, u2, u4} α β γ _inst_1 _inst_2 _inst_3 g h))
-Case conversion may be inaccurate. Consider using '#align heyting_hom.comp_assoc HeytingHom.comp_assocₓ'. -/
 @[simp]
 theorem comp_assoc (f : HeytingHom γ δ) (g : HeytingHom β γ) (h : HeytingHom α β) :
     (f.comp g).comp h = f.comp (g.comp h) :=
   rfl
 #align heyting_hom.comp_assoc HeytingHom.comp_assoc
 
-/- warning: heyting_hom.comp_id -> HeytingHom.comp_id is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (HeytingHom.comp.{u1, u1, u2} α α β _inst_1 _inst_1 _inst_2 f (HeytingHom.id.{u1} α _inst_1)) f
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2), Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) (HeytingHom.comp.{u2, u2, u1} α α β _inst_1 _inst_1 _inst_2 f (HeytingHom.id.{u2} α _inst_1)) f
-Case conversion may be inaccurate. Consider using '#align heyting_hom.comp_id HeytingHom.comp_idₓ'. -/
 @[simp]
 theorem comp_id (f : HeytingHom α β) : f.comp (HeytingHom.id α) = f :=
   ext fun a => rfl
 #align heyting_hom.comp_id HeytingHom.comp_id
 
-/- warning: heyting_hom.id_comp -> HeytingHom.id_comp is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (HeytingHom.comp.{u1, u2, u2} α β β _inst_1 _inst_2 _inst_2 (HeytingHom.id.{u2} β _inst_2) f) f
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2), Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) (HeytingHom.comp.{u2, u1, u1} α β β _inst_1 _inst_2 _inst_2 (HeytingHom.id.{u1} β _inst_2) f) f
-Case conversion may be inaccurate. Consider using '#align heyting_hom.id_comp HeytingHom.id_compₓ'. -/
 @[simp]
 theorem id_comp (f : HeytingHom α β) : (HeytingHom.id β).comp f = f :=
   ext fun a => rfl
 #align heyting_hom.id_comp HeytingHom.id_comp
 
-/- warning: heyting_hom.cancel_right -> HeytingHom.cancel_right is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] {f : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {g₁ : HeytingHom.{u2, u3} β γ _inst_2 _inst_3} {g₂ : HeytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) g₁ g₂))
-but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : HeytingAlgebra.{u3} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u1} γ] {f : HeytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (HeytingHom.{u3, u1} α γ _inst_1 _inst_3) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
-Case conversion may be inaccurate. Consider using '#align heyting_hom.cancel_right HeytingHom.cancel_rightₓ'. -/
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
 #align heyting_hom.cancel_right HeytingHom.cancel_right
 
-/- warning: heyting_hom.cancel_left -> HeytingHom.cancel_left is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] {f₁ : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {f₂ : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {g : HeytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (HeytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₁) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) f₁ f₂))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] {f₁ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {g : HeytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
-Case conversion may be inaccurate. Consider using '#align heyting_hom.cancel_left HeytingHom.cancel_leftₓ'. -/
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => HeytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
 #align heyting_hom.cancel_left HeytingHom.cancel_left
@@ -511,34 +397,16 @@ directly. -/
 instance : CoeFun (CoheytingHom α β) fun _ => α → β :=
   FunLike.hasCoeToFun
 
-/- warning: coheyting_hom.to_fun_eq_coe -> CoheytingHom.toFun_eq_coe is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] {f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2}, Eq.{max (succ u1) (succ u2)} (α -> β) (SupHom.toFun.{u1, u2} α β (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))) (SemilatticeSup.toHasSup.{u2} β (Lattice.toSemilatticeSup.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))) (LatticeHom.toSupHom.{u1, u2} α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHom.toLatticeHom.{u1, u2} α β _inst_1 _inst_2 f))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.to_fun_eq_coe CoheytingHom.toFun_eq_coeₓ'. -/
 @[simp]
 theorem toFun_eq_coe {f : CoheytingHom α β} : f.toFun = (f : α → β) :=
   rfl
 #align coheyting_hom.to_fun_eq_coe CoheytingHom.toFun_eq_coe
 
-/- warning: coheyting_hom.ext -> CoheytingHom.ext is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] {f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : CoheytingHom.{u1, u2} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a)) -> (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) f g)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.ext CoheytingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : CoheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
   FunLike.ext f g h
 #align coheyting_hom.ext CoheytingHom.ext
 
-/- warning: coheyting_hom.copy -> CoheytingHom.copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (CoheytingHom.{u1, u2} α β _inst_1 _inst_2)
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (CoheytingHom.{u1, u2} α β _inst_1 _inst_2)
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.copy CoheytingHom.copyₓ'. -/
 /-- Copy of a `coheyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
 protected def copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : CoheytingHom α β
@@ -550,23 +418,11 @@ protected def copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : Cohe
   map_sdiff' := by simpa only [h] using map_sdiff f
 #align coheyting_hom.copy CoheytingHom.copy
 
-/- warning: coheyting_hom.coe_copy -> CoheytingHom.coe_copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) (CoheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h)) f'
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.coe_copy CoheytingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
   rfl
 #align coheyting_hom.coe_copy CoheytingHom.coe_copy
 
-/- warning: coheyting_hom.copy_eq -> CoheytingHom.copy_eq is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (CoheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h) f
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.copy_eq CoheytingHom.copy_eqₓ'. -/
 theorem copy_eq (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
 #align coheyting_hom.copy_eq CoheytingHom.copy_eq
@@ -582,12 +438,6 @@ protected def id : CoheytingHom α α :=
 #align coheyting_hom.id CoheytingHom.id
 -/
 
-/- warning: coheyting_hom.coe_id -> CoheytingHom.coe_id is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) [_inst_1 : CoheytingAlgebra.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : CoheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (CoheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (CoheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
-but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : CoheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.coe_id CoheytingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(CoheytingHom.id α) = id :=
   rfl
@@ -595,12 +445,6 @@ theorem coe_id : ⇑(CoheytingHom.id α) = id :=
 
 variable {α}
 
-/- warning: coheyting_hom.id_apply -> CoheytingHom.id_apply is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : CoheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (CoheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (CoheytingHom.id.{u1} α _inst_1) a) a
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1) a) a
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.id_apply CoheytingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : CoheytingHom.id α a = a :=
   rfl
@@ -624,78 +468,36 @@ def comp (f : CoheytingHom β γ) (g : CoheytingHom α β) : CoheytingHom α γ
 
 variable {f f₁ f₂ : CoheytingHom α β} {g g₁ g₂ : CoheytingHom β γ}
 
-/- warning: coheyting_hom.coe_comp -> CoheytingHom.coe_comp is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] (f : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (CoheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (CoheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.coe_comp CoheytingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : CoheytingHom β γ) (g : CoheytingHom α β) : ⇑(f.comp g) = f ∘ g :=
   rfl
 #align coheyting_hom.coe_comp CoheytingHom.coe_comp
 
-/- warning: coheyting_hom.comp_apply -> CoheytingHom.comp_apply is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] (f : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (CoheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (CoheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.comp_apply CoheytingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : CoheytingHom β γ) (g : CoheytingHom α β) (a : α) : f.comp g a = f (g a) :=
   rfl
 #align coheyting_hom.comp_apply CoheytingHom.comp_apply
 
-/- warning: coheyting_hom.comp_assoc -> CoheytingHom.comp_assoc is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} {δ : Type.{u4}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] [_inst_4 : CoheytingAlgebra.{u4} δ] (f : CoheytingHom.{u3, u4} γ δ _inst_3 _inst_4) (g : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (h : CoheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u4)} (CoheytingHom.{u1, u4} α δ _inst_1 _inst_4) (CoheytingHom.comp.{u1, u2, u4} α β δ _inst_1 _inst_2 _inst_4 (CoheytingHom.comp.{u2, u3, u4} β γ δ _inst_2 _inst_3 _inst_4 f g) h) (CoheytingHom.comp.{u1, u3, u4} α γ δ _inst_1 _inst_3 _inst_4 f (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g h))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u4}} {δ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u4} γ] [_inst_4 : CoheytingAlgebra.{u3} δ] (f : CoheytingHom.{u4, u3} γ δ _inst_3 _inst_4) (g : CoheytingHom.{u2, u4} β γ _inst_2 _inst_3) (h : CoheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α δ _inst_1 _inst_4) (CoheytingHom.comp.{u1, u2, u3} α β δ _inst_1 _inst_2 _inst_4 (CoheytingHom.comp.{u2, u4, u3} β γ δ _inst_2 _inst_3 _inst_4 f g) h) (CoheytingHom.comp.{u1, u4, u3} α γ δ _inst_1 _inst_3 _inst_4 f (CoheytingHom.comp.{u1, u2, u4} α β γ _inst_1 _inst_2 _inst_3 g h))
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.comp_assoc CoheytingHom.comp_assocₓ'. -/
 @[simp]
 theorem comp_assoc (f : CoheytingHom γ δ) (g : CoheytingHom β γ) (h : CoheytingHom α β) :
     (f.comp g).comp h = f.comp (g.comp h) :=
   rfl
 #align coheyting_hom.comp_assoc CoheytingHom.comp_assoc
 
-/- warning: coheyting_hom.comp_id -> CoheytingHom.comp_id is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (CoheytingHom.comp.{u1, u1, u2} α α β _inst_1 _inst_1 _inst_2 f (CoheytingHom.id.{u1} α _inst_1)) f
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2), Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (CoheytingHom.comp.{u2, u2, u1} α α β _inst_1 _inst_1 _inst_2 f (CoheytingHom.id.{u2} α _inst_1)) f
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.comp_id CoheytingHom.comp_idₓ'. -/
 @[simp]
 theorem comp_id (f : CoheytingHom α β) : f.comp (CoheytingHom.id α) = f :=
   ext fun a => rfl
 #align coheyting_hom.comp_id CoheytingHom.comp_id
 
-/- warning: coheyting_hom.id_comp -> CoheytingHom.id_comp is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (CoheytingHom.comp.{u1, u2, u2} α β β _inst_1 _inst_2 _inst_2 (CoheytingHom.id.{u2} β _inst_2) f) f
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2), Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (CoheytingHom.comp.{u2, u1, u1} α β β _inst_1 _inst_2 _inst_2 (CoheytingHom.id.{u1} β _inst_2) f) f
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.id_comp CoheytingHom.id_compₓ'. -/
 @[simp]
 theorem id_comp (f : CoheytingHom α β) : (CoheytingHom.id β).comp f = f :=
   ext fun a => rfl
 #align coheyting_hom.id_comp CoheytingHom.id_comp
 
-/- warning: coheyting_hom.cancel_right -> CoheytingHom.cancel_right is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] {f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {g₁ : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3} {g₂ : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) g₁ g₂))
-but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u3} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u1} γ] {f : CoheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (CoheytingHom.{u3, u1} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.cancel_right CoheytingHom.cancel_rightₓ'. -/
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
 #align coheyting_hom.cancel_right CoheytingHom.cancel_right
 
-/- warning: coheyting_hom.cancel_left -> CoheytingHom.cancel_left is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] {f₁ : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {f₂ : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (CoheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₁) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) f₁ f₂))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] {f₁ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
-Case conversion may be inaccurate. Consider using '#align coheyting_hom.cancel_left CoheytingHom.cancel_leftₓ'. -/
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => CoheytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
 #align coheyting_hom.cancel_left CoheytingHom.cancel_left
@@ -720,34 +522,16 @@ directly. -/
 instance : CoeFun (BiheytingHom α β) fun _ => α → β :=
   FunLike.hasCoeToFun
 
-/- warning: biheyting_hom.to_fun_eq_coe -> BiheytingHom.toFun_eq_coe is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] {f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2}, Eq.{max (succ u1) (succ u2)} (α -> β) (SupHom.toFun.{u1, u2} α β (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))) (SemilatticeSup.toHasSup.{u2} β (Lattice.toSemilatticeSup.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))) (LatticeHom.toSupHom.{u1, u2} α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (BiheytingHom.toLatticeHom.{u1, u2} α β _inst_1 _inst_2 f))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (BiheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.to_fun_eq_coe BiheytingHom.toFun_eq_coeₓ'. -/
 @[simp]
 theorem toFun_eq_coe {f : BiheytingHom α β} : f.toFun = (f : α → β) :=
   rfl
 #align biheyting_hom.to_fun_eq_coe BiheytingHom.toFun_eq_coe
 
-/- warning: biheyting_hom.ext -> BiheytingHom.ext is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] {f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : BiheytingHom.{u1, u2} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a)) -> (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) f g)
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.ext BiheytingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : BiheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
   FunLike.ext f g h
 #align biheyting_hom.ext BiheytingHom.ext
 
-/- warning: biheyting_hom.copy -> BiheytingHom.copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (BiheytingHom.{u1, u2} α β _inst_1 _inst_2)
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α β _inst_1 _inst_2)))))) f)) -> (BiheytingHom.{u1, u2} α β _inst_1 _inst_2)
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.copy BiheytingHom.copyₓ'. -/
 /-- Copy of a `biheyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
 protected def copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : BiheytingHom α β
@@ -759,23 +543,11 @@ protected def copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : Bihe
   map_sdiff' := by simpa only [h] using map_sdiff f
 #align biheyting_hom.copy BiheytingHom.copy
 
-/- warning: biheyting_hom.coe_copy -> BiheytingHom.coe_copy is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) (BiheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h)) f'
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.coe_copy BiheytingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
   rfl
 #align biheyting_hom.coe_copy BiheytingHom.coe_copy
 
-/- warning: biheyting_hom.copy_eq -> BiheytingHom.copy_eq is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (BiheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h) f
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.copy_eq BiheytingHom.copy_eqₓ'. -/
 theorem copy_eq (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
 #align biheyting_hom.copy_eq BiheytingHom.copy_eq
@@ -789,12 +561,6 @@ protected def id : BiheytingHom α α :=
 #align biheyting_hom.id BiheytingHom.id
 -/
 
-/- warning: biheyting_hom.coe_id -> BiheytingHom.coe_id is a dubious translation:
-lean 3 declaration is
-  forall (α : Type.{u1}) [_inst_1 : BiheytingAlgebra.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : BiheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (BiheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (BiheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
-but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : BiheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.coe_id BiheytingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(BiheytingHom.id α) = id :=
   rfl
@@ -802,12 +568,6 @@ theorem coe_id : ⇑(BiheytingHom.id α) = id :=
 
 variable {α}
 
-/- warning: biheyting_hom.id_apply -> BiheytingHom.id_apply is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : BiheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (BiheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (BiheytingHom.id.{u1} α _inst_1) a) a
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1) a) a
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.id_apply BiheytingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : BiheytingHom.id α a = a :=
   rfl
@@ -831,72 +591,36 @@ def comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : BiheytingHom α γ
 
 variable {f f₁ f₂ : BiheytingHom α β} {g g₁ g₂ : BiheytingHom β γ}
 
-/- warning: biheyting_hom.coe_comp -> BiheytingHom.coe_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.coe_comp BiheytingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : ⇑(f.comp g) = f ∘ g :=
   rfl
 #align biheyting_hom.coe_comp BiheytingHom.coe_comp
 
-/- warning: biheyting_hom.comp_apply -> BiheytingHom.comp_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.comp_apply BiheytingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : BiheytingHom β γ) (g : BiheytingHom α β) (a : α) : f.comp g a = f (g a) :=
   rfl
 #align biheyting_hom.comp_apply BiheytingHom.comp_apply
 
-/- warning: biheyting_hom.comp_assoc -> BiheytingHom.comp_assoc is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} {δ : Type.{u4}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] [_inst_4 : BiheytingAlgebra.{u4} δ] (f : BiheytingHom.{u3, u4} γ δ _inst_3 _inst_4) (g : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (h : BiheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u4)} (BiheytingHom.{u1, u4} α δ _inst_1 _inst_4) (BiheytingHom.comp.{u1, u2, u4} α β δ _inst_1 _inst_2 _inst_4 (BiheytingHom.comp.{u2, u3, u4} β γ δ _inst_2 _inst_3 _inst_4 f g) h) (BiheytingHom.comp.{u1, u3, u4} α γ δ _inst_1 _inst_3 _inst_4 f (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g h))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u4}} {δ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u4} γ] [_inst_4 : BiheytingAlgebra.{u3} δ] (f : BiheytingHom.{u4, u3} γ δ _inst_3 _inst_4) (g : BiheytingHom.{u2, u4} β γ _inst_2 _inst_3) (h : BiheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α δ _inst_1 _inst_4) (BiheytingHom.comp.{u1, u2, u3} α β δ _inst_1 _inst_2 _inst_4 (BiheytingHom.comp.{u2, u4, u3} β γ δ _inst_2 _inst_3 _inst_4 f g) h) (BiheytingHom.comp.{u1, u4, u3} α γ δ _inst_1 _inst_3 _inst_4 f (BiheytingHom.comp.{u1, u2, u4} α β γ _inst_1 _inst_2 _inst_3 g h))
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.comp_assoc BiheytingHom.comp_assocₓ'. -/
 @[simp]
 theorem comp_assoc (f : BiheytingHom γ δ) (g : BiheytingHom β γ) (h : BiheytingHom α β) :
     (f.comp g).comp h = f.comp (g.comp h) :=
   rfl
 #align biheyting_hom.comp_assoc BiheytingHom.comp_assoc
 
-/- warning: biheyting_hom.comp_id -> BiheytingHom.comp_id is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (BiheytingHom.comp.{u1, u1, u2} α α β _inst_1 _inst_1 _inst_2 f (BiheytingHom.id.{u1} α _inst_1)) f
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2), Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (BiheytingHom.comp.{u2, u2, u1} α α β _inst_1 _inst_1 _inst_2 f (BiheytingHom.id.{u2} α _inst_1)) f
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.comp_id BiheytingHom.comp_idₓ'. -/
 @[simp]
 theorem comp_id (f : BiheytingHom α β) : f.comp (BiheytingHom.id α) = f :=
   ext fun a => rfl
 #align biheyting_hom.comp_id BiheytingHom.comp_id
 
-/- warning: biheyting_hom.id_comp -> BiheytingHom.id_comp is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (BiheytingHom.comp.{u1, u2, u2} α β β _inst_1 _inst_2 _inst_2 (BiheytingHom.id.{u2} β _inst_2) f) f
-but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2), Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (BiheytingHom.comp.{u2, u1, u1} α β β _inst_1 _inst_2 _inst_2 (BiheytingHom.id.{u1} β _inst_2) f) f
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.id_comp BiheytingHom.id_compₓ'. -/
 @[simp]
 theorem id_comp (f : BiheytingHom α β) : (BiheytingHom.id β).comp f = f :=
   ext fun a => rfl
 #align biheyting_hom.id_comp BiheytingHom.id_comp
 
-/- warning: biheyting_hom.cancel_right -> BiheytingHom.cancel_right is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] {f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {g₁ : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3} {g₂ : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) g₁ g₂))
-but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u3} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u1} γ] {f : BiheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} α β _inst_1 _inst_2)))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (BiheytingHom.{u3, u1} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.cancel_right BiheytingHom.cancel_rightₓ'. -/
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
 #align biheyting_hom.cancel_right BiheytingHom.cancel_right
 
-/- warning: biheyting_hom.cancel_left -> BiheytingHom.cancel_left is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] {f₁ : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {f₂ : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (BiheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₁) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) f₁ f₂))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] {f₁ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
-Case conversion may be inaccurate. Consider using '#align biheyting_hom.cancel_left BiheytingHom.cancel_leftₓ'. -/
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => BiheytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
 #align biheyting_hom.cancel_left BiheytingHom.cancel_left
Diff
@@ -159,11 +159,8 @@ instance (priority := 100) OrderIsoClass.toHeytingHomClass [HeytingAlgebra α] [
     [OrderIsoClass F α β] : HeytingHomClass F α β :=
   { OrderIsoClass.toBoundedLatticeHomClass with
     map_himp := fun f a b =>
-      eq_of_forall_le_iff fun c =>
-        by
-        simp only [← map_inv_le_iff, le_himp_iff]
-        rw [← OrderIsoClass.map_le_map_iff f]
-        simp }
+      eq_of_forall_le_iff fun c => by simp only [← map_inv_le_iff, le_himp_iff];
+        rw [← OrderIsoClass.map_le_map_iff f]; simp }
 #align order_iso_class.to_heyting_hom_class OrderIsoClass.toHeytingHomClass
 
 /- warning: order_iso_class.to_coheyting_hom_class -> OrderIsoClass.toCoheytingHomClass is a dubious translation:
@@ -177,11 +174,8 @@ instance (priority := 100) OrderIsoClass.toCoheytingHomClass [CoheytingAlgebra 
     [CoheytingAlgebra β] [OrderIsoClass F α β] : CoheytingHomClass F α β :=
   { OrderIsoClass.toBoundedLatticeHomClass with
     map_sdiff := fun f a b =>
-      eq_of_forall_ge_iff fun c =>
-        by
-        simp only [← le_map_inv_iff, sdiff_le_iff]
-        rw [← OrderIsoClass.map_le_map_iff f]
-        simp }
+      eq_of_forall_ge_iff fun c => by simp only [← le_map_inv_iff, sdiff_le_iff];
+        rw [← OrderIsoClass.map_le_map_iff f]; simp }
 #align order_iso_class.to_coheyting_hom_class OrderIsoClass.toCoheytingHomClass
 
 /- warning: order_iso_class.to_biheyting_hom_class -> OrderIsoClass.toBiheytingHomClass is a dubious translation:
@@ -196,17 +190,11 @@ instance (priority := 100) OrderIsoClass.toBiheytingHomClass [BiheytingAlgebra 
   {
     OrderIsoClass.toLatticeHomClass with
     map_himp := fun f a b =>
-      eq_of_forall_le_iff fun c =>
-        by
-        simp only [← map_inv_le_iff, le_himp_iff]
-        rw [← OrderIsoClass.map_le_map_iff f]
-        simp
+      eq_of_forall_le_iff fun c => by simp only [← map_inv_le_iff, le_himp_iff];
+        rw [← OrderIsoClass.map_le_map_iff f]; simp
     map_sdiff := fun f a b =>
-      eq_of_forall_ge_iff fun c =>
-        by
-        simp only [← le_map_inv_iff, sdiff_le_iff]
-        rw [← OrderIsoClass.map_le_map_iff f]
-        simp }
+      eq_of_forall_ge_iff fun c => by simp only [← le_map_inv_iff, sdiff_le_iff];
+        rw [← OrderIsoClass.map_le_map_iff f]; simp }
 #align order_iso_class.to_biheyting_hom_class OrderIsoClass.toBiheytingHomClass
 
 #print BoundedLatticeHomClass.toBiheytingHomClass /-
Diff
@@ -236,10 +236,7 @@ theorem map_compl (a : α) : f (aᶜ) = f aᶜ := by rw [← himp_bot, ← himp_
 -/
 
 /- warning: map_bihimp -> map_bihimp is a dubious translation:
-lean 3 declaration is
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} β (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (bihimp.{u2} α (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (GeneralizedHeytingAlgebra.toHasHimp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (bihimp.{u3} β (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (GeneralizedHeytingAlgebra.toHasHimp.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{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 : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
-but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) (bihimp.{u2} α (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (bihimp.{u2} α (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (bihimp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (Lattice.toInf.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (GeneralizedHeytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) _inst_2))) (GeneralizedHeytingAlgebra.toHImp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
+<too large>
 Case conversion may be inaccurate. Consider using '#align map_bihimp map_bihimpₓ'. -/
 @[simp]
 theorem map_bihimp (a b : α) : f (a ⇔ b) = f a ⇔ f b := by simp_rw [bihimp, map_inf, map_himp]
@@ -265,10 +262,7 @@ theorem map_hnot (a : α) : f (¬a) = ¬f a := by rw [← top_sdiff', ← top_
 #align map_hnot map_hnot
 
 /- warning: map_symm_diff -> map_symmDiff is a dubious translation:
-lean 3 declaration is
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} β (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (symmDiff.{u2} α (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toHasSdiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (symmDiff.{u3} β (SemilatticeSup.toHasSup.{u3} β (Lattice.toSemilatticeSup.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (GeneralizedCoheytingAlgebra.toHasSdiff.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{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 : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
-but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) (symmDiff.{u2} α (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (symmDiff.{u2} α (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (symmDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (SemilatticeSup.toSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (Lattice.toSemilatticeSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (GeneralizedCoheytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) _inst_2)))) (GeneralizedCoheytingAlgebra.toSDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
+<too large>
 Case conversion may be inaccurate. Consider using '#align map_symm_diff map_symmDiffₓ'. -/
 @[simp]
 theorem map_symmDiff (a b : α) : f (a ∆ b) = f a ∆ f b := by simp_rw [symmDiff, map_sup, map_sdiff]
@@ -850,10 +844,7 @@ def comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : BiheytingHom α γ
 variable {f f₁ f₂ : BiheytingHom α β} {g g₁ g₂ : BiheytingHom β γ}
 
 /- warning: biheyting_hom.coe_comp -> BiheytingHom.coe_comp is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] (f : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (BiheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (BiheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g))
+<too large>
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.coe_comp BiheytingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : ⇑(f.comp g) = f ∘ g :=
@@ -861,10 +852,7 @@ theorem coe_comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : ⇑(f.comp
 #align biheyting_hom.coe_comp BiheytingHom.coe_comp
 
 /- warning: biheyting_hom.comp_apply -> BiheytingHom.comp_apply is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] (f : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (BiheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (BiheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a))
-but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g a))
+<too large>
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.comp_apply BiheytingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : BiheytingHom β γ) (g : BiheytingHom α β) (a : α) : f.comp g a = f (g a) :=
Diff
@@ -148,7 +148,12 @@ instance (priority := 100) BiheytingHomClass.toCoheytingHomClass [BiheytingAlgeb
 #align biheyting_hom_class.to_coheyting_hom_class BiheytingHomClass.toCoheytingHomClass
 -/
 
-#print OrderIsoClass.toHeytingHomClass /-
+/- warning: order_iso_class.to_heyting_hom_class -> OrderIsoClass.toHeytingHomClass is a dubious translation:
+lean 3 declaration is
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : OrderIsoClass.{u1, u2, u3} F α β (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))))))], HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2
+but is expected to have type
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] {_inst_2 : HeytingAlgebra.{u3} β} [_inst_3 : OrderIsoClass.{u1, u2, u3} F α β (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))))))], HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2
+Case conversion may be inaccurate. Consider using '#align order_iso_class.to_heyting_hom_class OrderIsoClass.toHeytingHomClassₓ'. -/
 -- See note [lower instance priority]
 instance (priority := 100) OrderIsoClass.toHeytingHomClass [HeytingAlgebra α] [HeytingAlgebra β]
     [OrderIsoClass F α β] : HeytingHomClass F α β :=
@@ -160,9 +165,13 @@ instance (priority := 100) OrderIsoClass.toHeytingHomClass [HeytingAlgebra α] [
         rw [← OrderIsoClass.map_le_map_iff f]
         simp }
 #align order_iso_class.to_heyting_hom_class OrderIsoClass.toHeytingHomClass
--/
 
-#print OrderIsoClass.toCoheytingHomClass /-
+/- warning: order_iso_class.to_coheyting_hom_class -> OrderIsoClass.toCoheytingHomClass is a dubious translation:
+lean 3 declaration is
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : OrderIsoClass.{u1, u2, u3} F α β (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))))))], CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2
+but is expected to have type
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] {_inst_2 : CoheytingAlgebra.{u3} β} [_inst_3 : OrderIsoClass.{u1, u2, u3} F α β (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))))))], CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2
+Case conversion may be inaccurate. Consider using '#align order_iso_class.to_coheyting_hom_class OrderIsoClass.toCoheytingHomClassₓ'. -/
 -- See note [lower instance priority]
 instance (priority := 100) OrderIsoClass.toCoheytingHomClass [CoheytingAlgebra α]
     [CoheytingAlgebra β] [OrderIsoClass F α β] : CoheytingHomClass F α β :=
@@ -174,9 +183,13 @@ instance (priority := 100) OrderIsoClass.toCoheytingHomClass [CoheytingAlgebra 
         rw [← OrderIsoClass.map_le_map_iff f]
         simp }
 #align order_iso_class.to_coheyting_hom_class OrderIsoClass.toCoheytingHomClass
--/
 
-#print OrderIsoClass.toBiheytingHomClass /-
+/- warning: order_iso_class.to_biheyting_hom_class -> OrderIsoClass.toBiheytingHomClass is a dubious translation:
+lean 3 declaration is
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : OrderIsoClass.{u1, u2, u3} F α β (Preorder.toHasLe.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (Preorder.toHasLe.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))))))], BiheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2
+but is expected to have type
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u2} α] {_inst_2 : BiheytingAlgebra.{u3} β} [_inst_3 : OrderIsoClass.{u1, u2, u3} F α β (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))))))], BiheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2
+Case conversion may be inaccurate. Consider using '#align order_iso_class.to_biheyting_hom_class OrderIsoClass.toBiheytingHomClassₓ'. -/
 -- See note [lower instance priority]
 instance (priority := 100) OrderIsoClass.toBiheytingHomClass [BiheytingAlgebra α]
     [BiheytingAlgebra β] [OrderIsoClass F α β] : BiheytingHomClass F α β :=
@@ -195,7 +208,6 @@ instance (priority := 100) OrderIsoClass.toBiheytingHomClass [BiheytingAlgebra 
         rw [← OrderIsoClass.map_le_map_iff f]
         simp }
 #align order_iso_class.to_biheyting_hom_class OrderIsoClass.toBiheytingHomClass
--/
 
 #print BoundedLatticeHomClass.toBiheytingHomClass /-
 -- See note [reducible non instances]
Diff
@@ -227,7 +227,7 @@ theorem map_compl (a : α) : f (aᶜ) = f aᶜ := by rw [← himp_bot, ← himp_
 lean 3 declaration is
   forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} β (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (bihimp.{u2} α (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (GeneralizedHeytingAlgebra.toHasHimp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (bihimp.{u3} β (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (GeneralizedHeytingAlgebra.toHasHimp.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{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 : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
 but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) (bihimp.{u2} α (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (bihimp.{u2} α (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (bihimp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (Lattice.toInf.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (GeneralizedHeytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) _inst_2))) (GeneralizedHeytingAlgebra.toHImp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) (bihimp.{u2} α (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (bihimp.{u2} α (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (bihimp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (Lattice.toInf.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (GeneralizedHeytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) _inst_2))) (GeneralizedHeytingAlgebra.toHImp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
 Case conversion may be inaccurate. Consider using '#align map_bihimp map_bihimpₓ'. -/
 @[simp]
 theorem map_bihimp (a b : α) : f (a ⇔ b) = f a ⇔ f b := by simp_rw [bihimp, map_inf, map_himp]
@@ -246,7 +246,7 @@ include β
 lean 3 declaration is
   forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α), Eq.{succ u3} β (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (HNot.hnot.{u2} α (CoheytingAlgebra.toHasHnot.{u2} α _inst_1) a)) (HNot.hnot.{u3} β (CoheytingAlgebra.toHasHnot.{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 : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a))
 but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (HNot.hnot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (CoheytingAlgebra.toHNot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) _inst_2) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a))
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (HNot.hnot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (CoheytingAlgebra.toHNot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) _inst_2) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a))
 Case conversion may be inaccurate. Consider using '#align map_hnot map_hnotₓ'. -/
 @[simp]
 theorem map_hnot (a : α) : f (¬a) = ¬f a := by rw [← top_sdiff', ← top_sdiff', map_sdiff, map_top]
@@ -256,7 +256,7 @@ theorem map_hnot (a : α) : f (¬a) = ¬f a := by rw [← top_sdiff', ← top_
 lean 3 declaration is
   forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} β (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (symmDiff.{u2} α (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toHasSdiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (symmDiff.{u3} β (SemilatticeSup.toHasSup.{u3} β (Lattice.toSemilatticeSup.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (GeneralizedCoheytingAlgebra.toHasSdiff.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{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 : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
 but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) (symmDiff.{u2} α (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (symmDiff.{u2} α (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (symmDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (SemilatticeSup.toSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (Lattice.toSemilatticeSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (GeneralizedCoheytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) _inst_2)))) (GeneralizedCoheytingAlgebra.toSDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) (symmDiff.{u2} α (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (symmDiff.{u2} α (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (symmDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (SemilatticeSup.toSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (Lattice.toSemilatticeSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (GeneralizedCoheytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) _inst_2)))) (GeneralizedCoheytingAlgebra.toSDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
 Case conversion may be inaccurate. Consider using '#align map_symm_diff map_symmDiffₓ'. -/
 @[simp]
 theorem map_symmDiff (a b : α) : f (a ∆ b) = f a ∆ f b := by simp_rw [symmDiff, map_sup, map_sdiff]
@@ -312,7 +312,7 @@ instance : CoeFun (HeytingHom α β) fun _ => α → β :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] {f : HeytingHom.{u1, u2} α β _inst_1 _inst_2}, Eq.{max (succ u1) (succ u2)} (α -> β) (SupHom.toFun.{u1, u2} α β (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))) (SemilatticeSup.toHasSup.{u2} β (Lattice.toSemilatticeSup.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))) (LatticeHom.toSupHom.{u1, u2} α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingHom.toLatticeHom.{u1, u2} α β _inst_1 _inst_2 f))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
 Case conversion may be inaccurate. Consider using '#align heyting_hom.to_fun_eq_coe HeytingHom.toFun_eq_coeₓ'. -/
 @[simp]
 theorem toFun_eq_coe {f : HeytingHom α β} : f.toFun = (f : α → β) :=
@@ -323,7 +323,7 @@ theorem toFun_eq_coe {f : HeytingHom α β} : f.toFun = (f : α → β) :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] {f : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {g : HeytingHom.{u1, u2} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a)) -> (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) f g)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2} {g : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2} {g : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
 Case conversion may be inaccurate. Consider using '#align heyting_hom.ext HeytingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : HeytingHom α β} (h : ∀ a, f a = g a) : f = g :=
@@ -334,7 +334,7 @@ theorem ext {f g : HeytingHom α β} (h : ∀ a, f a = g a) : f = g :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (HeytingHom.{u1, u2} α β _inst_1 _inst_2)
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (HeytingHom.{u1, u2} α β _inst_1 _inst_2)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (HeytingHom.{u1, u2} α β _inst_1 _inst_2)
 Case conversion may be inaccurate. Consider using '#align heyting_hom.copy HeytingHom.copyₓ'. -/
 /-- Copy of a `heyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
@@ -351,7 +351,7 @@ protected def copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : Heytin
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) (HeytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h)) f'
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
 Case conversion may be inaccurate. Consider using '#align heyting_hom.coe_copy HeytingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
@@ -362,7 +362,7 @@ theorem coe_copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.co
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (HeytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h) f
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
 Case conversion may be inaccurate. Consider using '#align heyting_hom.copy_eq HeytingHom.copy_eqₓ'. -/
 theorem copy_eq (f : HeytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
@@ -383,7 +383,7 @@ protected def id : HeytingHom α α :=
 lean 3 declaration is
   forall (α : Type.{u1}) [_inst_1 : HeytingAlgebra.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : HeytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (HeytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (HeytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : HeytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
+  forall (α : Type.{u1}) [_inst_1 : HeytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 Case conversion may be inaccurate. Consider using '#align heyting_hom.coe_id HeytingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(HeytingHom.id α) = id :=
@@ -396,7 +396,7 @@ variable {α}
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : HeytingAlgebra.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : HeytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (HeytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (HeytingHom.id.{u1} α _inst_1) a) a
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : HeytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1) a) a
+  forall {α : Type.{u1}} [_inst_1 : HeytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1) a) a
 Case conversion may be inaccurate. Consider using '#align heyting_hom.id_apply HeytingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : HeytingHom.id α a = a :=
@@ -425,7 +425,7 @@ variable {f f₁ f₂ : HeytingHom α β} {g g₁ g₂ : HeytingHom β γ}
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] (f : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : HeytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (HeytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (HeytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
 Case conversion may be inaccurate. Consider using '#align heyting_hom.coe_comp HeytingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : HeytingHom β γ) (g : HeytingHom α β) : ⇑(f.comp g) = f ∘ g :=
@@ -436,7 +436,7 @@ theorem coe_comp (f : HeytingHom β γ) (g : HeytingHom α β) : ⇑(f.comp g) =
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] (f : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : HeytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (HeytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (HeytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
 Case conversion may be inaccurate. Consider using '#align heyting_hom.comp_apply HeytingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : HeytingHom β γ) (g : HeytingHom α β) (a : α) : f.comp g a = f (g a) :=
@@ -481,7 +481,7 @@ theorem id_comp (f : HeytingHom α β) : (HeytingHom.id β).comp f = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] {f : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {g₁ : HeytingHom.{u2, u3} β γ _inst_2 _inst_3} {g₂ : HeytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) g₁ g₂))
 but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : HeytingAlgebra.{u3} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u1} γ] {f : HeytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (HeytingHom.{u3, u1} α γ _inst_1 _inst_3) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
+  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : HeytingAlgebra.{u3} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u1} γ] {f : HeytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (HeytingHom.{u3, u1} α γ _inst_1 _inst_3) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
 Case conversion may be inaccurate. Consider using '#align heyting_hom.cancel_right HeytingHom.cancel_rightₓ'. -/
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
@@ -491,7 +491,7 @@ theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ =
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] {f₁ : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {f₂ : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {g : HeytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (HeytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₁) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) f₁ f₂))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] {f₁ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {g : HeytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] {f₁ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {g : HeytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
 Case conversion may be inaccurate. Consider using '#align heyting_hom.cancel_left HeytingHom.cancel_leftₓ'. -/
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => HeytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
@@ -521,7 +521,7 @@ instance : CoeFun (CoheytingHom α β) fun _ => α → β :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] {f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2}, Eq.{max (succ u1) (succ u2)} (α -> β) (SupHom.toFun.{u1, u2} α β (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))) (SemilatticeSup.toHasSup.{u2} β (Lattice.toSemilatticeSup.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))) (LatticeHom.toSupHom.{u1, u2} α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHom.toLatticeHom.{u1, u2} α β _inst_1 _inst_2 f))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.to_fun_eq_coe CoheytingHom.toFun_eq_coeₓ'. -/
 @[simp]
 theorem toFun_eq_coe {f : CoheytingHom α β} : f.toFun = (f : α → β) :=
@@ -532,7 +532,7 @@ theorem toFun_eq_coe {f : CoheytingHom α β} : f.toFun = (f : α → β) :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] {f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : CoheytingHom.{u1, u2} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a)) -> (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) f g)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.ext CoheytingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : CoheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
@@ -543,7 +543,7 @@ theorem ext {f g : CoheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (CoheytingHom.{u1, u2} α β _inst_1 _inst_2)
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (CoheytingHom.{u1, u2} α β _inst_1 _inst_2)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (CoheytingHom.{u1, u2} α β _inst_1 _inst_2)
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.copy CoheytingHom.copyₓ'. -/
 /-- Copy of a `coheyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
@@ -560,7 +560,7 @@ protected def copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : Cohe
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) (CoheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h)) f'
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.coe_copy CoheytingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
@@ -571,7 +571,7 @@ theorem coe_copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (CoheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h) f
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.copy_eq CoheytingHom.copy_eqₓ'. -/
 theorem copy_eq (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
@@ -592,7 +592,7 @@ protected def id : CoheytingHom α α :=
 lean 3 declaration is
   forall (α : Type.{u1}) [_inst_1 : CoheytingAlgebra.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : CoheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (CoheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (CoheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : CoheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
+  forall (α : Type.{u1}) [_inst_1 : CoheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.coe_id CoheytingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(CoheytingHom.id α) = id :=
@@ -605,7 +605,7 @@ variable {α}
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : CoheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (CoheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (CoheytingHom.id.{u1} α _inst_1) a) a
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1) a) a
+  forall {α : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1) a) a
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.id_apply CoheytingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : CoheytingHom.id α a = a :=
@@ -634,7 +634,7 @@ variable {f f₁ f₂ : CoheytingHom α β} {g g₁ g₂ : CoheytingHom β γ}
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] (f : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (CoheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (CoheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.coe_comp CoheytingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : CoheytingHom β γ) (g : CoheytingHom α β) : ⇑(f.comp g) = f ∘ g :=
@@ -645,7 +645,7 @@ theorem coe_comp (f : CoheytingHom β γ) (g : CoheytingHom α β) : ⇑(f.comp
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] (f : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (CoheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (CoheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.comp_apply CoheytingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : CoheytingHom β γ) (g : CoheytingHom α β) (a : α) : f.comp g a = f (g a) :=
@@ -690,7 +690,7 @@ theorem id_comp (f : CoheytingHom α β) : (CoheytingHom.id β).comp f = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] {f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {g₁ : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3} {g₂ : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) g₁ g₂))
 but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u3} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u1} γ] {f : CoheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (CoheytingHom.{u3, u1} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
+  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u3} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u1} γ] {f : CoheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (CoheytingHom.{u3, u1} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.cancel_right CoheytingHom.cancel_rightₓ'. -/
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
@@ -700,7 +700,7 @@ theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ =
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] {f₁ : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {f₂ : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (CoheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₁) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) f₁ f₂))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] {f₁ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] {f₁ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.cancel_left CoheytingHom.cancel_leftₓ'. -/
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => CoheytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
@@ -730,7 +730,7 @@ instance : CoeFun (BiheytingHom α β) fun _ => α → β :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] {f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2}, Eq.{max (succ u1) (succ u2)} (α -> β) (SupHom.toFun.{u1, u2} α β (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))) (SemilatticeSup.toHasSup.{u2} β (Lattice.toSemilatticeSup.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))) (LatticeHom.toSupHom.{u1, u2} α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (BiheytingHom.toLatticeHom.{u1, u2} α β _inst_1 _inst_2 f))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (BiheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (BiheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.to_fun_eq_coe BiheytingHom.toFun_eq_coeₓ'. -/
 @[simp]
 theorem toFun_eq_coe {f : BiheytingHom α β} : f.toFun = (f : α → β) :=
@@ -741,7 +741,7 @@ theorem toFun_eq_coe {f : BiheytingHom α β} : f.toFun = (f : α → β) :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] {f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : BiheytingHom.{u1, u2} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a)) -> (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) f g)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.ext BiheytingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : BiheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
@@ -752,7 +752,7 @@ theorem ext {f g : BiheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (BiheytingHom.{u1, u2} α β _inst_1 _inst_2)
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α β _inst_1 _inst_2)))))) f)) -> (BiheytingHom.{u1, u2} α β _inst_1 _inst_2)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α β _inst_1 _inst_2)))))) f)) -> (BiheytingHom.{u1, u2} α β _inst_1 _inst_2)
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.copy BiheytingHom.copyₓ'. -/
 /-- Copy of a `biheyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
@@ -769,7 +769,7 @@ protected def copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : Bihe
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) (BiheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h)) f'
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.coe_copy BiheytingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
@@ -780,7 +780,7 @@ theorem coe_copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (BiheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h) f
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.copy_eq BiheytingHom.copy_eqₓ'. -/
 theorem copy_eq (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
@@ -799,7 +799,7 @@ protected def id : BiheytingHom α α :=
 lean 3 declaration is
   forall (α : Type.{u1}) [_inst_1 : BiheytingAlgebra.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : BiheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (BiheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (BiheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : BiheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
+  forall (α : Type.{u1}) [_inst_1 : BiheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.coe_id BiheytingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(BiheytingHom.id α) = id :=
@@ -812,7 +812,7 @@ variable {α}
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : BiheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (BiheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (BiheytingHom.id.{u1} α _inst_1) a) a
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1) a) a
+  forall {α : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1) a) a
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.id_apply BiheytingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : BiheytingHom.id α a = a :=
@@ -841,7 +841,7 @@ variable {f f₁ f₂ : BiheytingHom α β} {g g₁ g₂ : BiheytingHom β γ}
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] (f : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (BiheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (BiheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g))
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.coe_comp BiheytingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : ⇑(f.comp g) = f ∘ g :=
@@ -852,7 +852,7 @@ theorem coe_comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : ⇑(f.comp
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] (f : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (BiheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (BiheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g a))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g a))
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.comp_apply BiheytingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : BiheytingHom β γ) (g : BiheytingHom α β) (a : α) : f.comp g a = f (g a) :=
@@ -897,7 +897,7 @@ theorem id_comp (f : BiheytingHom α β) : (BiheytingHom.id β).comp f = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] {f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {g₁ : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3} {g₂ : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) g₁ g₂))
 but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u3} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u1} γ] {f : BiheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} α β _inst_1 _inst_2)))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (BiheytingHom.{u3, u1} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
+  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u3} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u1} γ] {f : BiheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} α β _inst_1 _inst_2)))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (BiheytingHom.{u3, u1} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.cancel_right BiheytingHom.cancel_rightₓ'. -/
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
@@ -907,7 +907,7 @@ theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ =
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] {f₁ : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {f₂ : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (BiheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₁) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) f₁ f₂))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] {f₁ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] {f₁ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.494 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.cancel_left BiheytingHom.cancel_leftₓ'. -/
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => BiheytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
Diff
@@ -227,7 +227,7 @@ theorem map_compl (a : α) : f (aᶜ) = f aᶜ := by rw [← himp_bot, ← himp_
 lean 3 declaration is
   forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} β (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (bihimp.{u2} α (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (GeneralizedHeytingAlgebra.toHasHimp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (bihimp.{u3} β (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (GeneralizedHeytingAlgebra.toHasHimp.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{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 : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
 but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) (bihimp.{u2} α (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (bihimp.{u2} α (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (bihimp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (Lattice.toInf.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (GeneralizedHeytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2))) (GeneralizedHeytingAlgebra.toHImp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) (bihimp.{u2} α (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (bihimp.{u2} α (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (bihimp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (Lattice.toInf.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (GeneralizedHeytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) _inst_2))) (GeneralizedHeytingAlgebra.toHImp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
 Case conversion may be inaccurate. Consider using '#align map_bihimp map_bihimpₓ'. -/
 @[simp]
 theorem map_bihimp (a b : α) : f (a ⇔ b) = f a ⇔ f b := by simp_rw [bihimp, map_inf, map_himp]
@@ -246,7 +246,7 @@ include β
 lean 3 declaration is
   forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α), Eq.{succ u3} β (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (HNot.hnot.{u2} α (CoheytingAlgebra.toHasHnot.{u2} α _inst_1) a)) (HNot.hnot.{u3} β (CoheytingAlgebra.toHasHnot.{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 : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a))
 but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (HNot.hnot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (CoheytingAlgebra.toHNot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a))
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (HNot.hnot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (CoheytingAlgebra.toHNot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) _inst_2) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a))
 Case conversion may be inaccurate. Consider using '#align map_hnot map_hnotₓ'. -/
 @[simp]
 theorem map_hnot (a : α) : f (¬a) = ¬f a := by rw [← top_sdiff', ← top_sdiff', map_sdiff, map_top]
@@ -256,7 +256,7 @@ theorem map_hnot (a : α) : f (¬a) = ¬f a := by rw [← top_sdiff', ← top_
 lean 3 declaration is
   forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} β (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (symmDiff.{u2} α (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toHasSdiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (symmDiff.{u3} β (SemilatticeSup.toHasSup.{u3} β (Lattice.toSemilatticeSup.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (GeneralizedCoheytingAlgebra.toHasSdiff.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{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 : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
 but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) (symmDiff.{u2} α (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (symmDiff.{u2} α (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (symmDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (SemilatticeSup.toSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (Lattice.toSemilatticeSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (GeneralizedCoheytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2)))) (GeneralizedCoheytingAlgebra.toSDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) (symmDiff.{u2} α (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (symmDiff.{u2} α (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (symmDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (SemilatticeSup.toSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (Lattice.toSemilatticeSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (GeneralizedCoheytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) _inst_2)))) (GeneralizedCoheytingAlgebra.toSDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
 Case conversion may be inaccurate. Consider using '#align map_symm_diff map_symmDiffₓ'. -/
 @[simp]
 theorem map_symmDiff (a b : α) : f (a ∆ b) = f a ∆ f b := by simp_rw [symmDiff, map_sup, map_sdiff]
@@ -312,7 +312,7 @@ instance : CoeFun (HeytingHom α β) fun _ => α → β :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] {f : HeytingHom.{u1, u2} α β _inst_1 _inst_2}, Eq.{max (succ u1) (succ u2)} (α -> β) (SupHom.toFun.{u1, u2} α β (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))) (SemilatticeSup.toHasSup.{u2} β (Lattice.toSemilatticeSup.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))) (LatticeHom.toSupHom.{u1, u2} α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingHom.toLatticeHom.{u1, u2} α β _inst_1 _inst_2 f))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
 Case conversion may be inaccurate. Consider using '#align heyting_hom.to_fun_eq_coe HeytingHom.toFun_eq_coeₓ'. -/
 @[simp]
 theorem toFun_eq_coe {f : HeytingHom α β} : f.toFun = (f : α → β) :=
@@ -323,7 +323,7 @@ theorem toFun_eq_coe {f : HeytingHom α β} : f.toFun = (f : α → β) :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] {f : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {g : HeytingHom.{u1, u2} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a)) -> (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) f g)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2} {g : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2} {g : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
 Case conversion may be inaccurate. Consider using '#align heyting_hom.ext HeytingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : HeytingHom α β} (h : ∀ a, f a = g a) : f = g :=
@@ -334,7 +334,7 @@ theorem ext {f g : HeytingHom α β} (h : ∀ a, f a = g a) : f = g :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (HeytingHom.{u1, u2} α β _inst_1 _inst_2)
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (HeytingHom.{u1, u2} α β _inst_1 _inst_2)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (HeytingHom.{u1, u2} α β _inst_1 _inst_2)
 Case conversion may be inaccurate. Consider using '#align heyting_hom.copy HeytingHom.copyₓ'. -/
 /-- Copy of a `heyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
@@ -351,7 +351,7 @@ protected def copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : Heytin
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) (HeytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h)) f'
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
 Case conversion may be inaccurate. Consider using '#align heyting_hom.coe_copy HeytingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
@@ -362,7 +362,7 @@ theorem coe_copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.co
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (HeytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h) f
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
 Case conversion may be inaccurate. Consider using '#align heyting_hom.copy_eq HeytingHom.copy_eqₓ'. -/
 theorem copy_eq (f : HeytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
@@ -383,7 +383,7 @@ protected def id : HeytingHom α α :=
 lean 3 declaration is
   forall (α : Type.{u1}) [_inst_1 : HeytingAlgebra.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : HeytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (HeytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (HeytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : HeytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
+  forall (α : Type.{u1}) [_inst_1 : HeytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 Case conversion may be inaccurate. Consider using '#align heyting_hom.coe_id HeytingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(HeytingHom.id α) = id :=
@@ -396,7 +396,7 @@ variable {α}
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : HeytingAlgebra.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : HeytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (HeytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (HeytingHom.id.{u1} α _inst_1) a) a
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : HeytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1) a) a
+  forall {α : Type.{u1}} [_inst_1 : HeytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1) a) a
 Case conversion may be inaccurate. Consider using '#align heyting_hom.id_apply HeytingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : HeytingHom.id α a = a :=
@@ -425,7 +425,7 @@ variable {f f₁ f₂ : HeytingHom α β} {g g₁ g₂ : HeytingHom β γ}
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] (f : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : HeytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (HeytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (HeytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
 Case conversion may be inaccurate. Consider using '#align heyting_hom.coe_comp HeytingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : HeytingHom β γ) (g : HeytingHom α β) : ⇑(f.comp g) = f ∘ g :=
@@ -436,7 +436,7 @@ theorem coe_comp (f : HeytingHom β γ) (g : HeytingHom α β) : ⇑(f.comp g) =
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] (f : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : HeytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (HeytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (HeytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
 Case conversion may be inaccurate. Consider using '#align heyting_hom.comp_apply HeytingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : HeytingHom β γ) (g : HeytingHom α β) (a : α) : f.comp g a = f (g a) :=
@@ -481,7 +481,7 @@ theorem id_comp (f : HeytingHom α β) : (HeytingHom.id β).comp f = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] {f : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {g₁ : HeytingHom.{u2, u3} β γ _inst_2 _inst_3} {g₂ : HeytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) g₁ g₂))
 but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : HeytingAlgebra.{u3} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u1} γ] {f : HeytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (HeytingHom.{u3, u1} α γ _inst_1 _inst_3) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
+  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : HeytingAlgebra.{u3} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u1} γ] {f : HeytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (HeytingHom.{u3, u1} α γ _inst_1 _inst_3) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
 Case conversion may be inaccurate. Consider using '#align heyting_hom.cancel_right HeytingHom.cancel_rightₓ'. -/
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
@@ -491,7 +491,7 @@ theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ =
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] {f₁ : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {f₂ : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {g : HeytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (HeytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₁) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) f₁ f₂))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] {f₁ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {g : HeytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] {f₁ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {g : HeytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
 Case conversion may be inaccurate. Consider using '#align heyting_hom.cancel_left HeytingHom.cancel_leftₓ'. -/
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => HeytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
@@ -521,7 +521,7 @@ instance : CoeFun (CoheytingHom α β) fun _ => α → β :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] {f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2}, Eq.{max (succ u1) (succ u2)} (α -> β) (SupHom.toFun.{u1, u2} α β (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))) (SemilatticeSup.toHasSup.{u2} β (Lattice.toSemilatticeSup.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))) (LatticeHom.toSupHom.{u1, u2} α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHom.toLatticeHom.{u1, u2} α β _inst_1 _inst_2 f))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.to_fun_eq_coe CoheytingHom.toFun_eq_coeₓ'. -/
 @[simp]
 theorem toFun_eq_coe {f : CoheytingHom α β} : f.toFun = (f : α → β) :=
@@ -532,7 +532,7 @@ theorem toFun_eq_coe {f : CoheytingHom α β} : f.toFun = (f : α → β) :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] {f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : CoheytingHom.{u1, u2} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a)) -> (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) f g)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.ext CoheytingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : CoheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
@@ -543,7 +543,7 @@ theorem ext {f g : CoheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (CoheytingHom.{u1, u2} α β _inst_1 _inst_2)
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (CoheytingHom.{u1, u2} α β _inst_1 _inst_2)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (CoheytingHom.{u1, u2} α β _inst_1 _inst_2)
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.copy CoheytingHom.copyₓ'. -/
 /-- Copy of a `coheyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
@@ -560,7 +560,7 @@ protected def copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : Cohe
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) (CoheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h)) f'
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.coe_copy CoheytingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
@@ -571,7 +571,7 @@ theorem coe_copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (CoheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h) f
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.copy_eq CoheytingHom.copy_eqₓ'. -/
 theorem copy_eq (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
@@ -592,7 +592,7 @@ protected def id : CoheytingHom α α :=
 lean 3 declaration is
   forall (α : Type.{u1}) [_inst_1 : CoheytingAlgebra.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : CoheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (CoheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (CoheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : CoheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
+  forall (α : Type.{u1}) [_inst_1 : CoheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.coe_id CoheytingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(CoheytingHom.id α) = id :=
@@ -605,7 +605,7 @@ variable {α}
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : CoheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (CoheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (CoheytingHom.id.{u1} α _inst_1) a) a
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1) a) a
+  forall {α : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1) a) a
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.id_apply CoheytingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : CoheytingHom.id α a = a :=
@@ -634,7 +634,7 @@ variable {f f₁ f₂ : CoheytingHom α β} {g g₁ g₂ : CoheytingHom β γ}
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] (f : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (CoheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (CoheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.coe_comp CoheytingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : CoheytingHom β γ) (g : CoheytingHom α β) : ⇑(f.comp g) = f ∘ g :=
@@ -645,7 +645,7 @@ theorem coe_comp (f : CoheytingHom β γ) (g : CoheytingHom α β) : ⇑(f.comp
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] (f : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (CoheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (CoheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.comp_apply CoheytingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : CoheytingHom β γ) (g : CoheytingHom α β) (a : α) : f.comp g a = f (g a) :=
@@ -690,7 +690,7 @@ theorem id_comp (f : CoheytingHom α β) : (CoheytingHom.id β).comp f = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] {f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {g₁ : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3} {g₂ : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) g₁ g₂))
 but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u3} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u1} γ] {f : CoheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (CoheytingHom.{u3, u1} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
+  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u3} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u1} γ] {f : CoheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (CoheytingHom.{u3, u1} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.cancel_right CoheytingHom.cancel_rightₓ'. -/
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
@@ -700,7 +700,7 @@ theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ =
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] {f₁ : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {f₂ : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (CoheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₁) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) f₁ f₂))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] {f₁ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] {f₁ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.cancel_left CoheytingHom.cancel_leftₓ'. -/
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => CoheytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
@@ -730,7 +730,7 @@ instance : CoeFun (BiheytingHom α β) fun _ => α → β :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] {f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2}, Eq.{max (succ u1) (succ u2)} (α -> β) (SupHom.toFun.{u1, u2} α β (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))) (SemilatticeSup.toHasSup.{u2} β (Lattice.toSemilatticeSup.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))) (LatticeHom.toSupHom.{u1, u2} α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (BiheytingHom.toLatticeHom.{u1, u2} α β _inst_1 _inst_2 f))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (BiheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (BiheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.to_fun_eq_coe BiheytingHom.toFun_eq_coeₓ'. -/
 @[simp]
 theorem toFun_eq_coe {f : BiheytingHom α β} : f.toFun = (f : α → β) :=
@@ -741,7 +741,7 @@ theorem toFun_eq_coe {f : BiheytingHom α β} : f.toFun = (f : α → β) :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] {f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : BiheytingHom.{u1, u2} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a)) -> (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) f g)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.ext BiheytingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : BiheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
@@ -752,7 +752,7 @@ theorem ext {f g : BiheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (BiheytingHom.{u1, u2} α β _inst_1 _inst_2)
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α β _inst_1 _inst_2)))))) f)) -> (BiheytingHom.{u1, u2} α β _inst_1 _inst_2)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α β _inst_1 _inst_2)))))) f)) -> (BiheytingHom.{u1, u2} α β _inst_1 _inst_2)
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.copy BiheytingHom.copyₓ'. -/
 /-- Copy of a `biheyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
@@ -769,7 +769,7 @@ protected def copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : Bihe
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) (BiheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h)) f'
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.coe_copy BiheytingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
@@ -780,7 +780,7 @@ theorem coe_copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (BiheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h) f
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.copy_eq BiheytingHom.copy_eqₓ'. -/
 theorem copy_eq (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
@@ -799,7 +799,7 @@ protected def id : BiheytingHom α α :=
 lean 3 declaration is
   forall (α : Type.{u1}) [_inst_1 : BiheytingAlgebra.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : BiheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (BiheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (BiheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : BiheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
+  forall (α : Type.{u1}) [_inst_1 : BiheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.coe_id BiheytingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(BiheytingHom.id α) = id :=
@@ -812,7 +812,7 @@ variable {α}
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : BiheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (BiheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (BiheytingHom.id.{u1} α _inst_1) a) a
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1) a) a
+  forall {α : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1) a) a
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.id_apply BiheytingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : BiheytingHom.id α a = a :=
@@ -841,7 +841,7 @@ variable {f f₁ f₂ : BiheytingHom α β} {g g₁ g₂ : BiheytingHom β γ}
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] (f : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (BiheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (BiheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g))
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.coe_comp BiheytingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : ⇑(f.comp g) = f ∘ g :=
@@ -852,7 +852,7 @@ theorem coe_comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : ⇑(f.comp
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] (f : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (BiheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (BiheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g a))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g a))
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.comp_apply BiheytingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : BiheytingHom β γ) (g : BiheytingHom α β) (a : α) : f.comp g a = f (g a) :=
@@ -897,7 +897,7 @@ theorem id_comp (f : BiheytingHom α β) : (BiheytingHom.id β).comp f = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] {f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {g₁ : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3} {g₂ : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) g₁ g₂))
 but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u3} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u1} γ] {f : BiheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} α β _inst_1 _inst_2)))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (BiheytingHom.{u3, u1} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
+  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u3} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u1} γ] {f : BiheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} α β _inst_1 _inst_2)))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (BiheytingHom.{u3, u1} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.cancel_right BiheytingHom.cancel_rightₓ'. -/
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
@@ -907,7 +907,7 @@ theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ =
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] {f₁ : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {f₂ : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (BiheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₁) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) f₁ f₂))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] {f₁ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] {f₁ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.491 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.cancel_left BiheytingHom.cancel_leftₓ'. -/
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => BiheytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
Diff
@@ -227,7 +227,7 @@ theorem map_compl (a : α) : f (aᶜ) = f aᶜ := by rw [← himp_bot, ← himp_
 lean 3 declaration is
   forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} β (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (bihimp.{u2} α (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (GeneralizedHeytingAlgebra.toHasHimp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (bihimp.{u3} β (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (GeneralizedHeytingAlgebra.toHasHimp.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{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 : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
 but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) (bihimp.{u2} α (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (bihimp.{u2} α (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (bihimp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (Lattice.toHasInf.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (GeneralizedHeytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2))) (GeneralizedHeytingAlgebra.toHImp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) (bihimp.{u2} α (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (bihimp.{u2} α (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (GeneralizedHeytingAlgebra.toHImp.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) a b)) (bihimp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (Lattice.toInf.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (GeneralizedHeytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2))) (GeneralizedHeytingAlgebra.toHImp.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
 Case conversion may be inaccurate. Consider using '#align map_bihimp map_bihimpₓ'. -/
 @[simp]
 theorem map_bihimp (a b : α) : f (a ⇔ b) = f a ⇔ f b := by simp_rw [bihimp, map_inf, map_himp]
@@ -246,7 +246,7 @@ include β
 lean 3 declaration is
   forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α), Eq.{succ u3} β (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (HNot.hnot.{u2} α (CoheytingAlgebra.toHasHnot.{u2} α _inst_1) a)) (HNot.hnot.{u3} β (CoheytingAlgebra.toHasHnot.{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 : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a))
 but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (HNot.hnot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (CoheytingAlgebra.toHNot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a))
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (HNot.hnot.{u2} α (CoheytingAlgebra.toHNot.{u2} α _inst_1) a)) (HNot.hnot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (CoheytingAlgebra.toHNot.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a))
 Case conversion may be inaccurate. Consider using '#align map_hnot map_hnotₓ'. -/
 @[simp]
 theorem map_hnot (a : α) : f (¬a) = ¬f a := by rw [← top_sdiff', ← top_sdiff', map_sdiff, map_top]
@@ -256,7 +256,7 @@ theorem map_hnot (a : α) : f (¬a) = ¬f a := by rw [← top_sdiff', ← top_
 lean 3 declaration is
   forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} β (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (symmDiff.{u2} α (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toHasSdiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (symmDiff.{u3} β (SemilatticeSup.toHasSup.{u3} β (Lattice.toSemilatticeSup.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (GeneralizedCoheytingAlgebra.toHasSdiff.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{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 : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (coeFn.{succ u1, max (succ u2) (succ u3)} F (fun (_x : F) => α -> β) (FunLike.hasCoeToFun.{succ u1, succ u2, succ u3} F α (fun (_x : α) => β) (InfHomClass.toFunLike.{u1, u2, u3} F α β (SemilatticeInf.toHasInf.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeInf.toHasInf.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))) (LatticeHomClass.toInfHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
 but is expected to have type
-  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) (symmDiff.{u2} α (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (symmDiff.{u2} α (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (symmDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (SemilatticeSup.toHasSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (Lattice.toSemilatticeSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (GeneralizedCoheytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2)))) (GeneralizedCoheytingAlgebra.toSDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
+  forall {F : Type.{u1}} {α : Type.{u2}} {β : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingHomClass.{u1, u2, u3} F α β _inst_1 _inst_2] (f : F) (a : α) (b : α), Eq.{succ u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) (symmDiff.{u2} α (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f (symmDiff.{u2} α (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (GeneralizedCoheytingAlgebra.toSDiff.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) a b)) (symmDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (SemilatticeSup.toSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (Lattice.toSemilatticeSup.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (GeneralizedCoheytingAlgebra.toLattice.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2)))) (GeneralizedCoheytingAlgebra.toSDiff.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) _inst_2)) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f a) (FunLike.coe.{succ u1, succ u2, succ u3} F α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{u1, u2, u3} F α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u2, u3} F α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u2, u3} F α β _inst_1 _inst_2 _inst_3)))) f b))
 Case conversion may be inaccurate. Consider using '#align map_symm_diff map_symmDiffₓ'. -/
 @[simp]
 theorem map_symmDiff (a b : α) : f (a ∆ b) = f a ∆ f b := by simp_rw [symmDiff, map_sup, map_sdiff]
@@ -312,7 +312,7 @@ instance : CoeFun (HeytingHom α β) fun _ => α → β :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] {f : HeytingHom.{u1, u2} α β _inst_1 _inst_2}, Eq.{max (succ u1) (succ u2)} (α -> β) (SupHom.toFun.{u1, u2} α β (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))) (SemilatticeSup.toHasSup.{u2} β (Lattice.toSemilatticeSup.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))) (LatticeHom.toSupHom.{u1, u2} α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingHom.toLatticeHom.{u1, u2} α β _inst_1 _inst_2 f))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toHasSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
 Case conversion may be inaccurate. Consider using '#align heyting_hom.to_fun_eq_coe HeytingHom.toFun_eq_coeₓ'. -/
 @[simp]
 theorem toFun_eq_coe {f : HeytingHom α β} : f.toFun = (f : α → β) :=
@@ -323,7 +323,7 @@ theorem toFun_eq_coe {f : HeytingHom α β} : f.toFun = (f : α → β) :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] {f : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {g : HeytingHom.{u1, u2} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a)) -> (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) f g)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2} {g : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] {f : HeytingHom.{u2, u1} α β _inst_1 _inst_2} {g : HeytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
 Case conversion may be inaccurate. Consider using '#align heyting_hom.ext HeytingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : HeytingHom α β} (h : ∀ a, f a = g a) : f = g :=
@@ -334,7 +334,7 @@ theorem ext {f g : HeytingHom α β} (h : ∀ a, f a = g a) : f = g :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (HeytingHom.{u1, u2} α β _inst_1 _inst_2)
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (HeytingHom.{u1, u2} α β _inst_1 _inst_2)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (HeytingHom.{u1, u2} α β _inst_1 _inst_2)
 Case conversion may be inaccurate. Consider using '#align heyting_hom.copy HeytingHom.copyₓ'. -/
 /-- Copy of a `heyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
@@ -351,7 +351,7 @@ protected def copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : Heytin
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) (HeytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h)) f'
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
 Case conversion may be inaccurate. Consider using '#align heyting_hom.coe_copy HeytingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
@@ -362,7 +362,7 @@ theorem coe_copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.co
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] (f : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (HeytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h) f
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : HeytingAlgebra.{u2} α] [_inst_2 : HeytingAlgebra.{u1} β] (f : HeytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u2} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u2} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} α β _inst_1 _inst_2) (HeytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
 Case conversion may be inaccurate. Consider using '#align heyting_hom.copy_eq HeytingHom.copy_eqₓ'. -/
 theorem copy_eq (f : HeytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
@@ -383,7 +383,7 @@ protected def id : HeytingHom α α :=
 lean 3 declaration is
   forall (α : Type.{u1}) [_inst_1 : HeytingAlgebra.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : HeytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (HeytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (HeytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : HeytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
+  forall (α : Type.{u1}) [_inst_1 : HeytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 Case conversion may be inaccurate. Consider using '#align heyting_hom.coe_id HeytingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(HeytingHom.id α) = id :=
@@ -396,7 +396,7 @@ variable {α}
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : HeytingAlgebra.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : HeytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (HeytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (HeytingHom.id.{u1} α _inst_1) a) a
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : HeytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1) a) a
+  forall {α : Type.{u1}} [_inst_1 : HeytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (HeytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u1} α α _inst_1 _inst_1))))) (HeytingHom.id.{u1} α _inst_1) a) a
 Case conversion may be inaccurate. Consider using '#align heyting_hom.id_apply HeytingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : HeytingHom.id α a = a :=
@@ -425,7 +425,7 @@ variable {f f₁ f₂ : HeytingHom α β} {g g₁ g₂ : HeytingHom β γ}
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] (f : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : HeytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (HeytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (HeytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toHasInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toHasInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
 Case conversion may be inaccurate. Consider using '#align heyting_hom.coe_comp HeytingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : HeytingHom β γ) (g : HeytingHom α β) : ⇑(f.comp g) = f ∘ g :=
@@ -436,7 +436,7 @@ theorem coe_comp (f : HeytingHom β γ) (g : HeytingHom α β) : ⇑(f.comp g) =
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] (f : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u2} α β _inst_1 _inst_2) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : HeytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (HeytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (HeytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toHasInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toHasInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] (f : HeytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : HeytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u1} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u1} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u1} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
 Case conversion may be inaccurate. Consider using '#align heyting_hom.comp_apply HeytingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : HeytingHom β γ) (g : HeytingHom α β) (a : α) : f.comp g a = f (g a) :=
@@ -481,7 +481,7 @@ theorem id_comp (f : HeytingHom α β) : (HeytingHom.id β).comp f = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] {f : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {g₁ : HeytingHom.{u2, u3} β γ _inst_2 _inst_3} {g₂ : HeytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : HeytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (HeytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) g₁ g₂))
 but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : HeytingAlgebra.{u3} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u1} γ] {f : HeytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toHasInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toHasInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (HeytingHom.{u3, u1} α γ _inst_1 _inst_3) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
+  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : HeytingAlgebra.{u3} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u1} γ] {f : HeytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : HeytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)))))) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedHeytingAlgebra.toLattice.{u3} α (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} α _inst_1)) (GeneralizedHeytingAlgebra.toLattice.{u2} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} β _inst_2)) (HeytingAlgebra.toBoundedOrder.{u3} α _inst_1) (HeytingAlgebra.toBoundedOrder.{u2} β _inst_2) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (HeytingHom.{u3, u1} α γ _inst_1 _inst_3) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (HeytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (HeytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
 Case conversion may be inaccurate. Consider using '#align heyting_hom.cancel_right HeytingHom.cancel_rightₓ'. -/
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
@@ -491,7 +491,7 @@ theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ =
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u2} β] [_inst_3 : HeytingAlgebra.{u3} γ] {f₁ : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {f₂ : HeytingHom.{u1, u2} α β _inst_1 _inst_2} {g : HeytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (HeytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : HeytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (HeytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₁) (HeytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α β _inst_1 _inst_2) f₁ f₂))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] {f₁ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {g : HeytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toHasInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toHasInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : HeytingAlgebra.{u1} α] [_inst_2 : HeytingAlgebra.{u3} β] [_inst_3 : HeytingAlgebra.{u2} γ] {f₁ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : HeytingHom.{u1, u3} α β _inst_1 _inst_2} {g : HeytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)))))) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)))))) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedHeytingAlgebra.toLattice.{u3} β (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u3} β _inst_2)) (GeneralizedHeytingAlgebra.toLattice.{u2} γ (HeytingAlgebra.toGeneralizedHeytingAlgebra.{u2} γ _inst_3)) (HeytingAlgebra.toBoundedOrder.{u3} β _inst_2) (HeytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (HeytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (HeytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (HeytingHom.instHeytingHomClassHeytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (HeytingHom.{u1, u2} α γ _inst_1 _inst_3) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (HeytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (HeytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
 Case conversion may be inaccurate. Consider using '#align heyting_hom.cancel_left HeytingHom.cancel_leftₓ'. -/
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => HeytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
@@ -521,7 +521,7 @@ instance : CoeFun (CoheytingHom α β) fun _ => α → β :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] {f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2}, Eq.{max (succ u1) (succ u2)} (α -> β) (SupHom.toFun.{u1, u2} α β (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))) (SemilatticeSup.toHasSup.{u2} β (Lattice.toSemilatticeSup.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))) (LatticeHom.toSupHom.{u1, u2} α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHom.toLatticeHom.{u1, u2} α β _inst_1 _inst_2 f))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toHasSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.to_fun_eq_coe CoheytingHom.toFun_eq_coeₓ'. -/
 @[simp]
 theorem toFun_eq_coe {f : CoheytingHom α β} : f.toFun = (f : α → β) :=
@@ -532,7 +532,7 @@ theorem toFun_eq_coe {f : CoheytingHom α β} : f.toFun = (f : α → β) :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] {f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : CoheytingHom.{u1, u2} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a)) -> (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) f g)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] {f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : CoheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.ext CoheytingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : CoheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
@@ -543,7 +543,7 @@ theorem ext {f g : CoheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (CoheytingHom.{u1, u2} α β _inst_1 _inst_2)
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (CoheytingHom.{u1, u2} α β _inst_1 _inst_2)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α β _inst_1 _inst_2))))) f)) -> (CoheytingHom.{u1, u2} α β _inst_1 _inst_2)
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.copy CoheytingHom.copyₓ'. -/
 /-- Copy of a `coheyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
@@ -560,7 +560,7 @@ protected def copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : Cohe
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) (CoheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h)) f'
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.coe_copy CoheytingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
@@ -571,7 +571,7 @@ theorem coe_copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] (f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (CoheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h) f
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u2} α] [_inst_2 : CoheytingAlgebra.{u1} β] (f : CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u2, u1} α β _inst_1 _inst_2))))) f)), Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} α β _inst_1 _inst_2) (CoheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.copy_eq CoheytingHom.copy_eqₓ'. -/
 theorem copy_eq (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
@@ -592,7 +592,7 @@ protected def id : CoheytingHom α α :=
 lean 3 declaration is
   forall (α : Type.{u1}) [_inst_1 : CoheytingAlgebra.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : CoheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (CoheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (CoheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : CoheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
+  forall (α : Type.{u1}) [_inst_1 : CoheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.coe_id CoheytingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(CoheytingHom.id α) = id :=
@@ -605,7 +605,7 @@ variable {α}
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : CoheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (CoheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (CoheytingHom.id.{u1} α _inst_1) a) a
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1) a) a
+  forall {α : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (CoheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u1} α α _inst_1 _inst_1))))) (CoheytingHom.id.{u1} α _inst_1) a) a
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.id_apply CoheytingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : CoheytingHom.id α a = a :=
@@ -634,7 +634,7 @@ variable {f f₁ f₂ : CoheytingHom α β} {g g₁ g₂ : CoheytingHom β γ}
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] (f : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (CoheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (CoheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g))
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.coe_comp CoheytingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : CoheytingHom β γ) (g : CoheytingHom α β) : ⇑(f.comp g) = f ∘ g :=
@@ -645,7 +645,7 @@ theorem coe_comp (f : CoheytingHom β γ) (g : CoheytingHom α β) : ⇑(f.comp
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] (f : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (CoheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (CoheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] (f : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : CoheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u2} α γ _inst_1 _inst_3))))) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u1} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u1, u3} α β _inst_1 _inst_2))))) g a))
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.comp_apply CoheytingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : CoheytingHom β γ) (g : CoheytingHom α β) (a : α) : f.comp g a = f (g a) :=
@@ -690,7 +690,7 @@ theorem id_comp (f : CoheytingHom α β) : (CoheytingHom.id β).comp f = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] {f : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {g₁ : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3} {g₂ : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : CoheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (CoheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) g₁ g₂))
 but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u3} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u1} γ] {f : CoheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toHasInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toHasInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (CoheytingHom.{u3, u1} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
+  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : CoheytingAlgebra.{u3} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u1} γ] {f : CoheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : CoheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)))))) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α _inst_1)) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u3} α _inst_1) (CoheytingAlgebra.toBoundedOrder.{u2} β _inst_2) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} α β _inst_1 _inst_2))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (CoheytingHom.{u3, u1} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (CoheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (CoheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.cancel_right CoheytingHom.cancel_rightₓ'. -/
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
@@ -700,7 +700,7 @@ theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ =
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u2} β] [_inst_3 : CoheytingAlgebra.{u3} γ] {f₁ : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {f₂ : CoheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : CoheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (CoheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₁) (CoheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α β _inst_1 _inst_2) f₁ f₂))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] {f₁ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : CoheytingAlgebra.{u1} α] [_inst_2 : CoheytingAlgebra.{u3} β] [_inst_3 : CoheytingAlgebra.{u2} γ] {f₁ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : CoheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : CoheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)))))) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β _inst_2)) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingAlgebra.toBoundedOrder.{u3} β _inst_2) (CoheytingAlgebra.toBoundedOrder.{u2} γ _inst_3) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (CoheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (CoheytingHom.instCoheytingHomClassCoheytingHom.{u3, u2} β γ _inst_2 _inst_3))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (CoheytingHom.{u1, u2} α γ _inst_1 _inst_3) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (CoheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (CoheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
 Case conversion may be inaccurate. Consider using '#align coheyting_hom.cancel_left CoheytingHom.cancel_leftₓ'. -/
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => CoheytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
@@ -730,7 +730,7 @@ instance : CoeFun (BiheytingHom α β) fun _ => α → β :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] {f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2}, Eq.{max (succ u1) (succ u2)} (α -> β) (SupHom.toFun.{u1, u2} α β (SemilatticeSup.toHasSup.{u1} α (Lattice.toSemilatticeSup.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))) (SemilatticeSup.toHasSup.{u2} β (Lattice.toSemilatticeSup.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))) (LatticeHom.toSupHom.{u1, u2} α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (BiheytingHom.toLatticeHom.{u1, u2} α β _inst_1 _inst_2 f))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toHasSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))) (SemilatticeSup.toHasSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (BiheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, Eq.{max (succ u2) (succ u1)} (α -> β) (SupHom.toFun.{u2, u1} α β (SemilatticeSup.toSup.{u2} α (Lattice.toSemilatticeSup.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))) (SemilatticeSup.toSup.{u1} β (Lattice.toSemilatticeSup.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))) (LatticeHom.toSupHom.{u2, u1} α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (BiheytingHom.toLatticeHom.{u2, u1} α β _inst_1 _inst_2 f))) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.to_fun_eq_coe BiheytingHom.toFun_eq_coeₓ'. -/
 @[simp]
 theorem toFun_eq_coe {f : BiheytingHom α β} : f.toFun = (f : α → β) :=
@@ -741,7 +741,7 @@ theorem toFun_eq_coe {f : BiheytingHom α β} : f.toFun = (f : α → β) :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] {f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : BiheytingHom.{u1, u2} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u2} β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f a) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a)) -> (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) f g)
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] {f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2} {g : BiheytingHom.{u2, u1} α β _inst_1 _inst_2}, (forall (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f a) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) g a)) -> (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) f g)
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.ext BiheytingHom.extₓ'. -/
 @[ext]
 theorem ext {f g : BiheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
@@ -752,7 +752,7 @@ theorem ext {f g : BiheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (BiheytingHom.{u1, u2} α β _inst_1 _inst_2)
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α β _inst_1 _inst_2)))))) f)) -> (BiheytingHom.{u1, u2} α β _inst_1 _inst_2)
+  forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β), (Eq.{max (succ u1) (succ u2)} (α -> β) f' (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α β _inst_1 _inst_2)))))) f)) -> (BiheytingHom.{u1, u2} α β _inst_1 _inst_2)
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.copy BiheytingHom.copyₓ'. -/
 /-- Copy of a `biheyting_hom` with a new `to_fun` equal to the old one. Useful to fix definitional
 equalities. -/
@@ -769,7 +769,7 @@ protected def copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : Bihe
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (α -> β) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) (BiheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h)) f'
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h)) f'
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.coe_copy BiheytingHom.coe_copyₓ'. -/
 @[simp]
 theorem coe_copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.copy f' h) = f' :=
@@ -780,7 +780,7 @@ theorem coe_copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] (f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u1) (succ u2)} (α -> β) f' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)), Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (BiheytingHom.copy.{u1, u2} α β _inst_1 _inst_2 f f' h) f
 but is expected to have type
-  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toHasInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
+  forall {α : Type.{u2}} {β : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u2} α] [_inst_2 : BiheytingAlgebra.{u1} β] (f : BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (f' : α -> β) (h : Eq.{max (succ u2) (succ u1)} (α -> β) f' (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (Lattice.toInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (Lattice.toInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (OrderTop.toTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (BoundedOrder.toOrderTop.{u2} α (Preorder.toLE.{u2} α (PartialOrder.toPreorder.{u2} α (SemilatticeInf.toPartialOrder.{u2} α (Lattice.toSemilatticeInf.{u2} α (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)))) (OrderTop.toTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (BoundedOrder.toOrderTop.{u1} β (Preorder.toLE.{u1} β (PartialOrder.toPreorder.{u1} β (SemilatticeInf.toPartialOrder.{u1} β (Lattice.toSemilatticeInf.{u1} β (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u2} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u2} α (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} β (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u2} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u2 u1, u2, u1} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u2, u1} α β _inst_1 _inst_2)))))) f)), Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} α β _inst_1 _inst_2) (BiheytingHom.copy.{u2, u1} α β _inst_1 _inst_2 f f' h) f
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.copy_eq BiheytingHom.copy_eqₓ'. -/
 theorem copy_eq (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
   FunLike.ext' h
@@ -799,7 +799,7 @@ protected def id : BiheytingHom α α :=
 lean 3 declaration is
   forall (α : Type.{u1}) [_inst_1 : BiheytingAlgebra.{u1} α], Eq.{succ u1} (α -> α) (coeFn.{succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : BiheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (BiheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (BiheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 but is expected to have type
-  forall (α : Type.{u1}) [_inst_1 : BiheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
+  forall (α : Type.{u1}) [_inst_1 : BiheytingAlgebra.{u1} α], Eq.{succ u1} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) ᾰ) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1)) (id.{succ u1} α)
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.coe_id BiheytingHom.coe_idₓ'. -/
 @[simp]
 theorem coe_id : ⇑(BiheytingHom.id α) = id :=
@@ -812,7 +812,7 @@ variable {α}
 lean 3 declaration is
   forall {α : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} α (coeFn.{succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) (fun (_x : BiheytingHom.{u1, u1} α α _inst_1 _inst_1) => α -> α) (BiheytingHom.hasCoeToFun.{u1, u1} α α _inst_1 _inst_1) (BiheytingHom.id.{u1} α _inst_1) a) a
 but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1) a) a
+  forall {α : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u1} α] (a : α), Eq.{succ u1} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) a) (FunLike.coe.{succ u1, succ u1, succ u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => α) _x) (InfHomClass.toFunLike.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (InfTopHomClass.toInfHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (BoundedLatticeHomClass.toInfTopHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingHomClass.toBoundedLatticeHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingHomClass.toCoheytingHomClass.{u1, u1, u1} (BiheytingHom.{u1, u1} α α _inst_1 _inst_1) α α _inst_1 _inst_1 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u1} α α _inst_1 _inst_1)))))) (BiheytingHom.id.{u1} α _inst_1) a) a
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.id_apply BiheytingHom.id_applyₓ'. -/
 @[simp]
 theorem id_apply (a : α) : BiheytingHom.id α a = a :=
@@ -841,7 +841,7 @@ variable {f f₁ f₂ : BiheytingHom α β} {g g₁ g₂ : BiheytingHom β γ}
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] (f : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u2} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u3)} (α -> γ) (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (BiheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u2, succ u3} α β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (BiheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2), Eq.{max (succ u1) (succ u2)} (forall (ᾰ : α), (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) ᾰ) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g)) (Function.comp.{succ u1, succ u3, succ u2} α β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g))
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.coe_comp BiheytingHom.coe_compₓ'. -/
 @[simp]
 theorem coe_comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : ⇑(f.comp g) = f ∘ g :=
@@ -852,7 +852,7 @@ theorem coe_comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : ⇑(f.comp
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] (f : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (a : α), Eq.{succ u3} γ (coeFn.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (fun (_x : BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) => α -> γ) (BiheytingHom.hasCoeToFun.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 f g) a) (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (BiheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) f (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) g a))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g a))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] (f : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) (g : BiheytingHom.{u1, u3} α β _inst_1 _inst_2) (a : α), Eq.{succ u2} ((fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) a) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => γ) _x) (InfHomClass.toFunLike.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u1 u2, u1, u2} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) α γ _inst_1 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u2} α γ _inst_1 _inst_3)))))) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 f g) a) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) f (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (Lattice.toInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (BoundedOrder.toOrderTop.{u1} α (Preorder.toLE.{u1} α (PartialOrder.toPreorder.{u1} α (SemilatticeInf.toPartialOrder.{u1} α (Lattice.toSemilatticeInf.{u1} α (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u1} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u1} α (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u1} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u1 u3, u1, u3} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u1, u3} α β _inst_1 _inst_2)))))) g a))
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.comp_apply BiheytingHom.comp_applyₓ'. -/
 @[simp]
 theorem comp_apply (f : BiheytingHom β γ) (g : BiheytingHom α β) (a : α) : f.comp g a = f (g a) :=
@@ -897,7 +897,7 @@ theorem id_comp (f : BiheytingHom α β) : (BiheytingHom.id β).comp f = f :=
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] {f : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {g₁ : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3} {g₂ : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u1, succ u2} α β (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) (fun (_x : BiheytingHom.{u1, u2} α β _inst_1 _inst_2) => α -> β) (BiheytingHom.hasCoeToFun.{u1, u2} α β _inst_1 _inst_2) f)) -> (Iff (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) g₁ g₂))
 but is expected to have type
-  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u3} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u1} γ] {f : BiheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toHasInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toHasInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toHasInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} α β _inst_1 _inst_2)))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (BiheytingHom.{u3, u1} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
+  forall {α : Type.{u3}} {β : Type.{u2}} {γ : Type.{u1}} [_inst_1 : BiheytingAlgebra.{u3} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u1} γ] {f : BiheytingHom.{u3, u2} α β _inst_1 _inst_2} {g₁ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3} {g₂ : BiheytingHom.{u2, u1} β γ _inst_2 _inst_3}, (Function.Surjective.{succ u3, succ u2} α β (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α (fun (_x : α) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : α) => β) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (Lattice.toInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (Lattice.toInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (OrderTop.toTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (BoundedOrder.toOrderTop.{u3} α (Preorder.toLE.{u3} α (PartialOrder.toPreorder.{u3} α (SemilatticeInf.toPartialOrder.{u3} α (Lattice.toSemilatticeInf.{u3} α (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))))))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)))) (OrderTop.toTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (BoundedOrder.toOrderTop.{u2} β (Preorder.toLE.{u2} β (PartialOrder.toPreorder.{u2} β (SemilatticeInf.toPartialOrder.{u2} β (Lattice.toSemilatticeInf.{u2} β (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (GeneralizedCoheytingAlgebra.toLattice.{u3} α (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1))) (GeneralizedCoheytingAlgebra.toLattice.{u2} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2))) (CoheytingAlgebra.toBoundedOrder.{u3} α (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1)) (CoheytingAlgebra.toBoundedOrder.{u2} β (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β (BiheytingAlgebra.toCoheytingAlgebra.{u3} α _inst_1) (BiheytingAlgebra.toCoheytingAlgebra.{u2} β _inst_2) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} α β _inst_1 _inst_2) α β _inst_1 _inst_2 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} α β _inst_1 _inst_2)))))) f)) -> (Iff (Eq.{max (succ u3) (succ u1)} (BiheytingHom.{u3, u1} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₁ f) (BiheytingHom.comp.{u3, u2, u1} α β γ _inst_1 _inst_2 _inst_3 g₂ f)) (Eq.{max (succ u2) (succ u1)} (BiheytingHom.{u2, u1} β γ _inst_2 _inst_3) g₁ g₂))
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.cancel_right BiheytingHom.cancel_rightₓ'. -/
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg _⟩
@@ -907,7 +907,7 @@ theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ =
 lean 3 declaration is
   forall {α : Type.{u1}} {β : Type.{u2}} {γ : Type.{u3}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u2} β] [_inst_3 : BiheytingAlgebra.{u3} γ] {f₁ : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {f₂ : BiheytingHom.{u1, u2} α β _inst_1 _inst_2} {g : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3}, (Function.Injective.{succ u2, succ u3} β γ (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) (fun (_x : BiheytingHom.{u2, u3} β γ _inst_2 _inst_3) => β -> γ) (BiheytingHom.hasCoeToFun.{u2, u3} β γ _inst_2 _inst_3) g)) -> (Iff (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₁) (BiheytingHom.comp.{u1, u2, u3} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α β _inst_1 _inst_2) f₁ f₂))
 but is expected to have type
-  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] {f₁ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toHasInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toHasInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
+  forall {α : Type.{u1}} {β : Type.{u3}} {γ : Type.{u2}} [_inst_1 : BiheytingAlgebra.{u1} α] [_inst_2 : BiheytingAlgebra.{u3} β] [_inst_3 : BiheytingAlgebra.{u2} γ] {f₁ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {f₂ : BiheytingHom.{u1, u3} α β _inst_1 _inst_2} {g : BiheytingHom.{u3, u2} β γ _inst_2 _inst_3}, (Function.Injective.{succ u3, succ u2} β γ (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β (fun (_x : β) => (fun (x._@.Mathlib.Order.Hom.Lattice._hyg.487 : β) => γ) _x) (InfHomClass.toFunLike.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (InfTopHomClass.toInfHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (Lattice.toInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (Lattice.toInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (OrderTop.toTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (BoundedOrder.toOrderTop.{u3} β (Preorder.toLE.{u3} β (PartialOrder.toPreorder.{u3} β (SemilatticeInf.toPartialOrder.{u3} β (Lattice.toSemilatticeInf.{u3} β (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))))))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)))) (OrderTop.toTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (BoundedOrder.toOrderTop.{u2} γ (Preorder.toLE.{u2} γ (PartialOrder.toPreorder.{u2} γ (SemilatticeInf.toPartialOrder.{u2} γ (Lattice.toSemilatticeInf.{u2} γ (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))))))) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)))) (BoundedLatticeHomClass.toInfTopHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (GeneralizedCoheytingAlgebra.toLattice.{u3} β (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2))) (GeneralizedCoheytingAlgebra.toLattice.{u2} γ (CoheytingAlgebra.toGeneralizedCoheytingAlgebra.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3))) (CoheytingAlgebra.toBoundedOrder.{u3} β (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2)) (CoheytingAlgebra.toBoundedOrder.{u2} γ (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3)) (CoheytingHomClass.toBoundedLatticeHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ (BiheytingAlgebra.toCoheytingAlgebra.{u3} β _inst_2) (BiheytingAlgebra.toCoheytingAlgebra.{u2} γ _inst_3) (BiheytingHomClass.toCoheytingHomClass.{max u3 u2, u3, u2} (BiheytingHom.{u3, u2} β γ _inst_2 _inst_3) β γ _inst_2 _inst_3 (BiheytingHom.instBiheytingHomClassBiheytingHom.{u3, u2} β γ _inst_2 _inst_3)))))) g)) -> (Iff (Eq.{max (succ u1) (succ u2)} (BiheytingHom.{u1, u2} α γ _inst_1 _inst_3) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₁) (BiheytingHom.comp.{u1, u3, u2} α β γ _inst_1 _inst_2 _inst_3 g f₂)) (Eq.{max (succ u1) (succ u3)} (BiheytingHom.{u1, u3} α β _inst_1 _inst_2) f₁ f₂))
 Case conversion may be inaccurate. Consider using '#align biheyting_hom.cancel_left BiheytingHom.cancel_leftₓ'. -/
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => BiheytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩

Changes in mathlib4

mathlib3
mathlib4
style: replace '.-/' by '. -/' (#11938)

Purely automatic replacement. If this is in any way controversial; I'm happy to just close this PR.

Diff
@@ -38,9 +38,9 @@ variable {F α β γ δ : Type*}
 Heyting implication. -/
 structure HeytingHom (α β : Type*) [HeytingAlgebra α] [HeytingAlgebra β] extends
   LatticeHom α β where
-  /-- The proposition that a Heyting homomorphism preserves the bottom element.-/
+  /-- The proposition that a Heyting homomorphism preserves the bottom element. -/
   protected map_bot' : toFun ⊥ = ⊥
-  /-- The proposition that a Heyting homomorphism preserves the Heyting implication.-/
+  /-- The proposition that a Heyting homomorphism preserves the Heyting implication. -/
   protected map_himp' : ∀ a b, toFun (a ⇨ b) = toFun a ⇨ toFun b
 #align heyting_hom HeytingHom
 
@@ -48,9 +48,9 @@ structure HeytingHom (α β : Type*) [HeytingAlgebra α] [HeytingAlgebra β] ext
 preserve difference. -/
 structure CoheytingHom (α β : Type*) [CoheytingAlgebra α] [CoheytingAlgebra β] extends
   LatticeHom α β where
-  /-- The proposition that a co-Heyting homomorphism preserves the top element.-/
+  /-- The proposition that a co-Heyting homomorphism preserves the top element. -/
   protected map_top' : toFun ⊤ = ⊤
-  /-- The proposition that a co-Heyting homomorphism preserves the difference operation.-/
+  /-- The proposition that a co-Heyting homomorphism preserves the difference operation. -/
   protected map_sdiff' : ∀ a b, toFun (a \ b) = toFun a \ toFun b
 #align coheyting_hom CoheytingHom
 
@@ -58,9 +58,9 @@ structure CoheytingHom (α β : Type*) [CoheytingAlgebra α] [CoheytingAlgebra 
 preserve Heyting implication and difference. -/
 structure BiheytingHom (α β : Type*) [BiheytingAlgebra α] [BiheytingAlgebra β] extends
   LatticeHom α β where
-  /-- The proposition that a bi-Heyting homomorphism preserves the Heyting implication.-/
+  /-- The proposition that a bi-Heyting homomorphism preserves the Heyting implication. -/
   protected map_himp' : ∀ a b, toFun (a ⇨ b) = toFun a ⇨ toFun b
-  /-- The proposition that a bi-Heyting homomorphism preserves the difference operation.-/
+  /-- The proposition that a bi-Heyting homomorphism preserves the difference operation. -/
   protected map_sdiff' : ∀ a b, toFun (a \ b) = toFun a \ toFun b
 #align biheyting_hom BiheytingHom
 
@@ -69,9 +69,9 @@ structure BiheytingHom (α β : Type*) [BiheytingAlgebra α] [BiheytingAlgebra 
 You should extend this class when you extend `HeytingHom`. -/
 class HeytingHomClass (F α β : Type*) [HeytingAlgebra α] [HeytingAlgebra β] [FunLike F α β]
   extends LatticeHomClass F α β : Prop where
-  /-- The proposition that a Heyting homomorphism preserves the bottom element.-/
+  /-- The proposition that a Heyting homomorphism preserves the bottom element. -/
   map_bot (f : F) : f ⊥ = ⊥
-  /-- The proposition that a Heyting homomorphism preserves the Heyting implication.-/
+  /-- The proposition that a Heyting homomorphism preserves the Heyting implication. -/
   map_himp (f : F) : ∀ a b, f (a ⇨ b) = f a ⇨ f b
 #align heyting_hom_class HeytingHomClass
 
@@ -80,9 +80,9 @@ class HeytingHomClass (F α β : Type*) [HeytingAlgebra α] [HeytingAlgebra β]
 You should extend this class when you extend `CoheytingHom`. -/
 class CoheytingHomClass (F α β : Type*) [CoheytingAlgebra α] [CoheytingAlgebra β] [FunLike F α β]
   extends LatticeHomClass F α β : Prop where
-  /-- The proposition that a co-Heyting homomorphism preserves the top element.-/
+  /-- The proposition that a co-Heyting homomorphism preserves the top element. -/
   map_top (f : F) : f ⊤ = ⊤
-  /-- The proposition that a co-Heyting homomorphism preserves the difference operation.-/
+  /-- The proposition that a co-Heyting homomorphism preserves the difference operation. -/
   map_sdiff (f : F) : ∀ a b, f (a \ b) = f a \ f b
 #align coheyting_hom_class CoheytingHomClass
 
@@ -91,9 +91,9 @@ class CoheytingHomClass (F α β : Type*) [CoheytingAlgebra α] [CoheytingAlgebr
 You should extend this class when you extend `BiheytingHom`. -/
 class BiheytingHomClass (F α β : Type*) [BiheytingAlgebra α] [BiheytingAlgebra β] [FunLike F α β]
   extends LatticeHomClass F α β : Prop where
-  /-- The proposition that a bi-Heyting homomorphism preserves the Heyting implication.-/
+  /-- The proposition that a bi-Heyting homomorphism preserves the Heyting implication. -/
   map_himp (f : F) : ∀ a b, f (a ⇨ b) = f a ⇨ f b
-  /-- The proposition that a bi-Heyting homomorphism preserves the difference operation.-/
+  /-- The proposition that a bi-Heyting homomorphism preserves the difference operation. -/
   map_sdiff (f : F) : ∀ a b, f (a \ b) = f a \ f b
 #align biheyting_hom_class BiheytingHomClass
 
refactor(Data/FunLike): use unbundled inheritance from FunLike (#8386)

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

Zulip thread

Important changes

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

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

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

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

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

Similarly, MyEquivClass should take EquivLike as a parameter.

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

Remaining issues

Slower (failing) search

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

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

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

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

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

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

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

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

simp not firing sometimes

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

Missing instances due to unification failing

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

Workaround for issues

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

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

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

Diff
@@ -67,8 +67,8 @@ structure BiheytingHom (α β : Type*) [BiheytingAlgebra α] [BiheytingAlgebra 
 /-- `HeytingHomClass F α β` states that `F` is a type of Heyting homomorphisms.
 
 You should extend this class when you extend `HeytingHom`. -/
-class HeytingHomClass (F : Type*) (α β : outParam <| Type*) [HeytingAlgebra α]
-  [HeytingAlgebra β] extends LatticeHomClass F α β where
+class HeytingHomClass (F α β : Type*) [HeytingAlgebra α] [HeytingAlgebra β] [FunLike F α β]
+  extends LatticeHomClass F α β : Prop where
   /-- The proposition that a Heyting homomorphism preserves the bottom element.-/
   map_bot (f : F) : f ⊥ = ⊥
   /-- The proposition that a Heyting homomorphism preserves the Heyting implication.-/
@@ -78,8 +78,8 @@ class HeytingHomClass (F : Type*) (α β : outParam <| Type*) [HeytingAlgebra α
 /-- `CoheytingHomClass F α β` states that `F` is a type of co-Heyting homomorphisms.
 
 You should extend this class when you extend `CoheytingHom`. -/
-class CoheytingHomClass (F : Type*) (α β : outParam <| Type*) [CoheytingAlgebra α]
-  [CoheytingAlgebra β] extends LatticeHomClass F α β where
+class CoheytingHomClass (F α β : Type*) [CoheytingAlgebra α] [CoheytingAlgebra β] [FunLike F α β]
+  extends LatticeHomClass F α β : Prop where
   /-- The proposition that a co-Heyting homomorphism preserves the top element.-/
   map_top (f : F) : f ⊤ = ⊤
   /-- The proposition that a co-Heyting homomorphism preserves the difference operation.-/
@@ -89,8 +89,8 @@ class CoheytingHomClass (F : Type*) (α β : outParam <| Type*) [CoheytingAlgebr
 /-- `BiheytingHomClass F α β` states that `F` is a type of bi-Heyting homomorphisms.
 
 You should extend this class when you extend `BiheytingHom`. -/
-class BiheytingHomClass (F : Type*) (α β : outParam <| Type*) [BiheytingAlgebra α]
-  [BiheytingAlgebra β] extends LatticeHomClass F α β where
+class BiheytingHomClass (F α β : Type*) [BiheytingAlgebra α] [BiheytingAlgebra β] [FunLike F α β]
+  extends LatticeHomClass F α β : Prop where
   /-- The proposition that a bi-Heyting homomorphism preserves the Heyting implication.-/
   map_himp (f : F) : ∀ a b, f (a ⇨ b) = f a ⇨ f b
   /-- The proposition that a bi-Heyting homomorphism preserves the difference operation.-/
@@ -103,6 +103,10 @@ export CoheytingHomClass (map_sdiff)
 
 attribute [simp] map_himp map_sdiff
 
+section Hom
+
+variable [FunLike F α β]
+
 /- Porting note: `[HeytingAlgebra α, β]` -> `{ _ : HeytingAlgebra α, β}` as a dangerous instance fix
 similar for Coheyting & Biheyting instances -/
 -- See note [lower instance priority]
@@ -133,6 +137,12 @@ instance (priority := 100) BiheytingHomClass.toCoheytingHomClass [BiheytingAlgeb
     map_top := fun f => by rw [← @himp_self α _ ⊥, ← himp_self, map_himp] }
 #align biheyting_hom_class.to_coheyting_hom_class BiheytingHomClass.toCoheytingHomClass
 
+end Hom
+
+section Equiv
+
+variable [EquivLike F α β]
+
 -- See note [lower instance priority]
 instance (priority := 100) OrderIsoClass.toHeytingHomClass [HeytingAlgebra α]
     { _ : HeytingAlgebra β} [OrderIsoClass F α β] : HeytingHomClass F α β :=
@@ -171,11 +181,15 @@ instance (priority := 100) OrderIsoClass.toBiheytingHomClass [BiheytingAlgebra 
         simp }
 #align order_iso_class.to_biheyting_hom_class OrderIsoClass.toBiheytingHomClass
 
+end Equiv
+
+variable [FunLike F α β]
+
 -- Porting note: Revisit this issue to see if it works in Lean 4. -/
 -- See note [reducible non instances]
 /-- This can't be an instance because of typeclass loops. -/
 @[reducible]
-def BoundedLatticeHomClass.toBiheytingHomClass [BooleanAlgebra α] [BooleanAlgebra β]
+lemma BoundedLatticeHomClass.toBiheytingHomClass [BooleanAlgebra α] [BooleanAlgebra β]
     [BoundedLatticeHomClass F α β] : BiheytingHomClass F α β :=
   { ‹BoundedLatticeHomClass F α β› with
     map_himp := fun f a b => by rw [himp_eq, himp_eq, map_sup, (isCompl_compl.map _).compl_eq]
@@ -245,9 +259,11 @@ namespace HeytingHom
 
 variable [HeytingAlgebra α] [HeytingAlgebra β] [HeytingAlgebra γ] [HeytingAlgebra δ]
 
-instance instHeytingHomClass : HeytingHomClass (HeytingHom α β) α β where
+instance instFunLike : FunLike (HeytingHom α β) α β where
   coe f := f.toFun
   coe_injective' f g h := by obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := f; obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := g; congr
+
+instance instHeytingHomClass : HeytingHomClass (HeytingHom α β) α β where
   map_sup f := f.map_sup'
   map_inf f := f.map_inf'
   map_bot f := f.map_bot'
@@ -372,21 +388,16 @@ namespace CoheytingHom
 
 variable [CoheytingAlgebra α] [CoheytingAlgebra β] [CoheytingAlgebra γ] [CoheytingAlgebra δ]
 
-instance : CoheytingHomClass (CoheytingHom α β) α β where
+instance : FunLike (CoheytingHom α β) α β where
   coe f := f.toFun
   coe_injective' f g h := by obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := f; obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := g; congr
+
+instance : CoheytingHomClass (CoheytingHom α β) α β where
   map_sup f := f.map_sup'
   map_inf f := f.map_inf'
   map_top f := f.map_top'
   map_sdiff := CoheytingHom.map_sdiff'
 
--- Porting note: CoeFun undesired here in lean 4
--- /-- Helper instance for when there's too many metavariables to apply `DFunLike.CoeFun`
--- directly. -/
--- instance : CoeFun (CoheytingHom α β) fun _ => α → β :=
---   DFunLike.hasCoeToFun
-
-
 -- @[simp] -- Porting note: not in simp-nf, simp can simplify lhs. Added aux simp lemma
 theorem toFun_eq_coe {f : CoheytingHom α β} : f.toFun = (f : α → β) :=
   rfl
@@ -499,20 +510,16 @@ namespace BiheytingHom
 
 variable [BiheytingAlgebra α] [BiheytingAlgebra β] [BiheytingAlgebra γ] [BiheytingAlgebra δ]
 
-instance : BiheytingHomClass (BiheytingHom α β) α β where
+instance : FunLike (BiheytingHom α β) α β where
   coe f := f.toFun
   coe_injective' f g h := by obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := f; obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := g; congr
+
+instance : BiheytingHomClass (BiheytingHom α β) α β where
   map_sup f := f.map_sup'
   map_inf f := f.map_inf'
   map_himp f := f.map_himp'
   map_sdiff f := f.map_sdiff'
 
--- Porting note: CoeFun undesired here in lean 4
--- /-- Helper instance for when there's too many metavariables to apply `DFunLike.CoeFun`
--- directly. -/
--- instance : CoeFun (BiheytingHom α β) fun _ => α → β :=
---   DFunLike.hasCoeToFun
-
 -- @[simp] -- Porting note: not in simp-nf, simp can simplify lhs. Added aux simp lemma
 theorem toFun_eq_coe {f : BiheytingHom α β} : f.toFun = (f : α → β) :=
   rfl
chore: scope symmDiff notations (#9844)

Those notations are not scoped whereas the file is very low in the import hierarchy.

Diff
@@ -184,6 +184,8 @@ def BoundedLatticeHomClass.toBiheytingHomClass [BooleanAlgebra α] [BooleanAlgeb
 
 section HeytingAlgebra
 
+open scoped symmDiff
+
 variable [HeytingAlgebra α] [HeytingAlgebra β] [HeytingHomClass F α β] (f : F)
 
 @[simp]
@@ -199,6 +201,8 @@ end HeytingAlgebra
 
 section CoheytingAlgebra
 
+open scoped symmDiff
+
 variable [CoheytingAlgebra α] [CoheytingAlgebra β] [CoheytingHomClass F α β] (f : F)
 
 @[simp]
chore(*): rename FunLike to DFunLike (#9785)

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

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

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

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

Diff
@@ -13,7 +13,7 @@ import Mathlib.Order.Hom.Lattice
 A Heyting homomorphism between two Heyting algebras is a bounded lattice homomorphism that preserves
 Heyting implication.
 
-We use the `FunLike` design, so each type of morphisms has a companion typeclass which is meant to
+We use the `DFunLike` design, so each type of morphisms has a companion typeclass which is meant to
 be satisfied by itself and all stricter types.
 
 ## Types of morphisms
@@ -251,10 +251,10 @@ instance instHeytingHomClass : HeytingHomClass (HeytingHom α β) α β where
 
 
 -- Porting note: CoeFun undesired here in lean 4
--- /-- Helper instance for when there's too many metavariables to apply `FunLike.CoeFun`
+-- /-- Helper instance for when there's too many metavariables to apply `DFunLike.CoeFun`
 -- directly. -/
 -- instance : CoeFun (HeytingHom α β) fun _ => α → β :=
---   FunLike.hasCoeToFun
+--   DFunLike.hasCoeToFun
 
 -- @[simp] -- Porting note: not in simp-nf, simp can simplify lhs. Added aux simp lemma
 theorem toFun_eq_coe {f : HeytingHom α β} : f.toFun = ⇑f :=
@@ -267,7 +267,7 @@ theorem toFun_eq_coe_aux {f : HeytingHom α β} : (↑f.toLatticeHom) = ⇑f :=
 
 @[ext]
 theorem ext {f g : HeytingHom α β} (h : ∀ a, f a = g a) : f = g :=
-  FunLike.ext f g h
+  DFunLike.ext f g h
 #align heyting_hom.ext HeytingHom.ext
 
 /-- Copy of a `HeytingHom` with a new `toFun` equal to the old one. Useful to fix definitional
@@ -286,7 +286,7 @@ theorem coe_copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.co
 #align heyting_hom.coe_copy HeytingHom.coe_copy
 
 theorem copy_eq (f : HeytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
-  FunLike.ext' h
+  DFunLike.ext' h
 #align heyting_hom.copy_eq HeytingHom.copy_eq
 
 variable (α)
@@ -314,7 +314,7 @@ instance : Inhabited (HeytingHom α α) :=
   ⟨HeytingHom.id _⟩
 
 instance : PartialOrder (HeytingHom α β) :=
-  PartialOrder.lift _ FunLike.coe_injective
+  PartialOrder.lift _ DFunLike.coe_injective
 
 /-- Composition of `HeytingHom`s as a `HeytingHom`. -/
 def comp (f : HeytingHom β γ) (g : HeytingHom α β) : HeytingHom α γ :=
@@ -354,7 +354,7 @@ theorem id_comp (f : HeytingHom α β) : (HeytingHom.id β).comp f = f :=
 
 @[simp]
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
-  ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg (fun a ↦ comp a f)⟩
+  ⟨fun h => ext <| hf.forall.2 <| DFunLike.ext_iff.1 h, congr_arg (fun a ↦ comp a f)⟩
 #align heyting_hom.cancel_right HeytingHom.cancel_right
 
 @[simp]
@@ -377,10 +377,10 @@ instance : CoheytingHomClass (CoheytingHom α β) α β where
   map_sdiff := CoheytingHom.map_sdiff'
 
 -- Porting note: CoeFun undesired here in lean 4
--- /-- Helper instance for when there's too many metavariables to apply `FunLike.CoeFun`
+-- /-- Helper instance for when there's too many metavariables to apply `DFunLike.CoeFun`
 -- directly. -/
 -- instance : CoeFun (CoheytingHom α β) fun _ => α → β :=
---   FunLike.hasCoeToFun
+--   DFunLike.hasCoeToFun
 
 
 -- @[simp] -- Porting note: not in simp-nf, simp can simplify lhs. Added aux simp lemma
@@ -394,7 +394,7 @@ theorem toFun_eq_coe_aux {f : CoheytingHom α β} : (↑f.toLatticeHom) = ⇑f :
 
 @[ext]
 theorem ext {f g : CoheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
-  FunLike.ext f g h
+  DFunLike.ext f g h
 #align coheyting_hom.ext CoheytingHom.ext
 
 /-- Copy of a `CoheytingHom` with a new `toFun` equal to the old one. Useful to fix definitional
@@ -413,7 +413,7 @@ theorem coe_copy (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.
 #align coheyting_hom.coe_copy CoheytingHom.coe_copy
 
 theorem copy_eq (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
-  FunLike.ext' h
+  DFunLike.ext' h
 #align coheyting_hom.copy_eq CoheytingHom.copy_eq
 
 variable (α)
@@ -441,7 +441,7 @@ instance : Inhabited (CoheytingHom α α) :=
   ⟨CoheytingHom.id _⟩
 
 instance : PartialOrder (CoheytingHom α β) :=
-  PartialOrder.lift _ FunLike.coe_injective
+  PartialOrder.lift _ DFunLike.coe_injective
 
 /-- Composition of `CoheytingHom`s as a `CoheytingHom`. -/
 def comp (f : CoheytingHom β γ) (g : CoheytingHom α β) : CoheytingHom α γ :=
@@ -481,7 +481,7 @@ theorem id_comp (f : CoheytingHom α β) : (CoheytingHom.id β).comp f = f :=
 
 @[simp]
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
-  ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg (fun a ↦ comp a f)⟩
+  ⟨fun h => ext <| hf.forall.2 <| DFunLike.ext_iff.1 h, congr_arg (fun a ↦ comp a f)⟩
 #align coheyting_hom.cancel_right CoheytingHom.cancel_right
 
 @[simp]
@@ -504,10 +504,10 @@ instance : BiheytingHomClass (BiheytingHom α β) α β where
   map_sdiff f := f.map_sdiff'
 
 -- Porting note: CoeFun undesired here in lean 4
--- /-- Helper instance for when there's too many metavariables to apply `FunLike.CoeFun`
+-- /-- Helper instance for when there's too many metavariables to apply `DFunLike.CoeFun`
 -- directly. -/
 -- instance : CoeFun (BiheytingHom α β) fun _ => α → β :=
---   FunLike.hasCoeToFun
+--   DFunLike.hasCoeToFun
 
 -- @[simp] -- Porting note: not in simp-nf, simp can simplify lhs. Added aux simp lemma
 theorem toFun_eq_coe {f : BiheytingHom α β} : f.toFun = (f : α → β) :=
@@ -520,7 +520,7 @@ theorem toFun_eq_coe_aux {f : BiheytingHom α β} : (↑f.toLatticeHom) = ⇑f :
 
 @[ext]
 theorem ext {f g : BiheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
-  FunLike.ext f g h
+  DFunLike.ext f g h
 #align biheyting_hom.ext BiheytingHom.ext
 
 /-- Copy of a `BiheytingHom` with a new `toFun` equal to the old one. Useful to fix definitional
@@ -539,7 +539,7 @@ theorem coe_copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : ⇑(f.
 #align biheyting_hom.coe_copy BiheytingHom.coe_copy
 
 theorem copy_eq (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : f.copy f' h = f :=
-  FunLike.ext' h
+  DFunLike.ext' h
 #align biheyting_hom.copy_eq BiheytingHom.copy_eq
 
 variable (α)
@@ -565,7 +565,7 @@ instance : Inhabited (BiheytingHom α α) :=
   ⟨BiheytingHom.id _⟩
 
 instance : PartialOrder (BiheytingHom α β) :=
-  PartialOrder.lift _ FunLike.coe_injective
+  PartialOrder.lift _ DFunLike.coe_injective
 
 /-- Composition of `BiheytingHom`s as a `BiheytingHom`. -/
 def comp (f : BiheytingHom β γ) (g : BiheytingHom α β) : BiheytingHom α γ :=
@@ -605,7 +605,7 @@ theorem id_comp (f : BiheytingHom α β) : (BiheytingHom.id β).comp f = f :=
 
 @[simp]
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
-  ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg (fun a ↦ comp a f)⟩
+  ⟨fun h => ext <| hf.forall.2 <| DFunLike.ext_iff.1 h, congr_arg (fun a ↦ comp a f)⟩
 #align biheyting_hom.cancel_right BiheytingHom.cancel_right
 
 @[simp]
chore: @[simp] cancel_(right|left) (#6300)

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

Diff
@@ -352,10 +352,12 @@ theorem id_comp (f : HeytingHom α β) : (HeytingHom.id β).comp f = f :=
   ext fun _ => rfl
 #align heyting_hom.id_comp HeytingHom.id_comp
 
+@[simp]
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg (fun a ↦ comp a f)⟩
 #align heyting_hom.cancel_right HeytingHom.cancel_right
 
+@[simp]
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => HeytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
 #align heyting_hom.cancel_left HeytingHom.cancel_left
@@ -477,10 +479,12 @@ theorem id_comp (f : CoheytingHom α β) : (CoheytingHom.id β).comp f = f :=
   ext fun _ => rfl
 #align coheyting_hom.id_comp CoheytingHom.id_comp
 
+@[simp]
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg (fun a ↦ comp a f)⟩
 #align coheyting_hom.cancel_right CoheytingHom.cancel_right
 
+@[simp]
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => CoheytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
 #align coheyting_hom.cancel_left CoheytingHom.cancel_left
@@ -599,10 +603,12 @@ theorem id_comp (f : BiheytingHom α β) : (BiheytingHom.id β).comp f = f :=
   ext fun _ => rfl
 #align biheyting_hom.id_comp BiheytingHom.id_comp
 
+@[simp]
 theorem cancel_right (hf : Surjective f) : g₁.comp f = g₂.comp f ↔ g₁ = g₂ :=
   ⟨fun h => ext <| hf.forall.2 <| FunLike.ext_iff.1 h, congr_arg (fun a ↦ comp a f)⟩
 #align biheyting_hom.cancel_right BiheytingHom.cancel_right
 
+@[simp]
 theorem cancel_left (hg : Injective g) : g.comp f₁ = g.comp f₂ ↔ f₁ = f₂ :=
   ⟨fun h => BiheytingHom.ext fun a => hg <| by rw [← comp_apply, h, comp_apply], congr_arg _⟩
 #align biheyting_hom.cancel_left BiheytingHom.cancel_left
chore: banish Type _ and Sort _ (#6499)

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

This has nice performance benefits.

Diff
@@ -32,11 +32,11 @@ be satisfied by itself and all stricter types.
 
 open Function
 
-variable {F α β γ δ : Type _}
+variable {F α β γ δ : Type*}
 
 /-- The type of Heyting homomorphisms from `α` to `β`. Bounded lattice homomorphisms that preserve
 Heyting implication. -/
-structure HeytingHom (α β : Type _) [HeytingAlgebra α] [HeytingAlgebra β] extends
+structure HeytingHom (α β : Type*) [HeytingAlgebra α] [HeytingAlgebra β] extends
   LatticeHom α β where
   /-- The proposition that a Heyting homomorphism preserves the bottom element.-/
   protected map_bot' : toFun ⊥ = ⊥
@@ -46,7 +46,7 @@ structure HeytingHom (α β : Type _) [HeytingAlgebra α] [HeytingAlgebra β] ex
 
 /-- The type of co-Heyting homomorphisms from `α` to `β`. Bounded lattice homomorphisms that
 preserve difference. -/
-structure CoheytingHom (α β : Type _) [CoheytingAlgebra α] [CoheytingAlgebra β] extends
+structure CoheytingHom (α β : Type*) [CoheytingAlgebra α] [CoheytingAlgebra β] extends
   LatticeHom α β where
   /-- The proposition that a co-Heyting homomorphism preserves the top element.-/
   protected map_top' : toFun ⊤ = ⊤
@@ -56,7 +56,7 @@ structure CoheytingHom (α β : Type _) [CoheytingAlgebra α] [CoheytingAlgebra
 
 /-- The type of bi-Heyting homomorphisms from `α` to `β`. Bounded lattice homomorphisms that
 preserve Heyting implication and difference. -/
-structure BiheytingHom (α β : Type _) [BiheytingAlgebra α] [BiheytingAlgebra β] extends
+structure BiheytingHom (α β : Type*) [BiheytingAlgebra α] [BiheytingAlgebra β] extends
   LatticeHom α β where
   /-- The proposition that a bi-Heyting homomorphism preserves the Heyting implication.-/
   protected map_himp' : ∀ a b, toFun (a ⇨ b) = toFun a ⇨ toFun b
@@ -67,7 +67,7 @@ structure BiheytingHom (α β : Type _) [BiheytingAlgebra α] [BiheytingAlgebra
 /-- `HeytingHomClass F α β` states that `F` is a type of Heyting homomorphisms.
 
 You should extend this class when you extend `HeytingHom`. -/
-class HeytingHomClass (F : Type _) (α β : outParam <| Type _) [HeytingAlgebra α]
+class HeytingHomClass (F : Type*) (α β : outParam <| Type*) [HeytingAlgebra α]
   [HeytingAlgebra β] extends LatticeHomClass F α β where
   /-- The proposition that a Heyting homomorphism preserves the bottom element.-/
   map_bot (f : F) : f ⊥ = ⊥
@@ -78,7 +78,7 @@ class HeytingHomClass (F : Type _) (α β : outParam <| Type _) [HeytingAlgebra
 /-- `CoheytingHomClass F α β` states that `F` is a type of co-Heyting homomorphisms.
 
 You should extend this class when you extend `CoheytingHom`. -/
-class CoheytingHomClass (F : Type _) (α β : outParam <| Type _) [CoheytingAlgebra α]
+class CoheytingHomClass (F : Type*) (α β : outParam <| Type*) [CoheytingAlgebra α]
   [CoheytingAlgebra β] extends LatticeHomClass F α β where
   /-- The proposition that a co-Heyting homomorphism preserves the top element.-/
   map_top (f : F) : f ⊤ = ⊤
@@ -89,7 +89,7 @@ class CoheytingHomClass (F : Type _) (α β : outParam <| Type _) [CoheytingAlge
 /-- `BiheytingHomClass F α β` states that `F` is a type of bi-Heyting homomorphisms.
 
 You should extend this class when you extend `BiheytingHom`. -/
-class BiheytingHomClass (F : Type _) (α β : outParam <| Type _) [BiheytingAlgebra α]
+class BiheytingHomClass (F : Type*) (α β : outParam <| Type*) [BiheytingAlgebra α]
   [BiheytingAlgebra β] extends LatticeHomClass F α β where
   /-- The proposition that a bi-Heyting homomorphism preserves the Heyting implication.-/
   map_himp (f : F) : ∀ a b, f (a ⇨ b) = f a ⇨ f b
chore: script to replace headers with #align_import statements (#5979)

Open in Gitpod

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

Diff
@@ -2,14 +2,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
-
-! This file was ported from Lean 3 source module order.heyting.hom
-! leanprover-community/mathlib commit 4c19a16e4b705bf135cf9a80ac18fcc99c438514
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Order.Hom.Lattice
 
+#align_import order.heyting.hom from "leanprover-community/mathlib"@"4c19a16e4b705bf135cf9a80ac18fcc99c438514"
+
 /-!
 # Heyting algebra morphisms
 
chore: cleanup whitespace (#5988)

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

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

Diff
@@ -131,7 +131,7 @@ instance (priority := 100) BiheytingHomClass.toHeytingHomClass [BiheytingAlgebra
 
 -- See note [lower instance priority]
 instance (priority := 100) BiheytingHomClass.toCoheytingHomClass [BiheytingAlgebra α]
-    { _ : BiheytingAlgebra β}  [BiheytingHomClass F α β] : CoheytingHomClass F α β :=
+    { _ : BiheytingAlgebra β} [BiheytingHomClass F α β] : CoheytingHomClass F α β :=
   { ‹BiheytingHomClass F α β› with
     map_top := fun f => by rw [← @himp_self α _ ⊥, ← himp_self, map_himp] }
 #align biheyting_hom_class.to_coheyting_hom_class BiheytingHomClass.toCoheytingHomClass
fix: change compl precedence (#5586)

Co-authored-by: Yury G. Kudryashov <urkud@urkud.name>

Diff
@@ -190,7 +190,7 @@ section HeytingAlgebra
 variable [HeytingAlgebra α] [HeytingAlgebra β] [HeytingHomClass F α β] (f : F)
 
 @[simp]
-theorem map_compl (a : α) : f (aᶜ) = f aᶜ := by rw [← himp_bot, ← himp_bot, map_himp, map_bot]
+theorem map_compl (a : α) : f aᶜ = (f a)ᶜ := by rw [← himp_bot, ← himp_bot, map_himp, map_bot]
 #align map_compl map_compl
 
 @[simp]
feat: port Order.Category.HeytAlgCat (#5021)

Co-authored-by: Yaël Dillies <yael.dillies@gmail.com>

Diff
@@ -244,7 +244,7 @@ namespace HeytingHom
 
 variable [HeytingAlgebra α] [HeytingAlgebra β] [HeytingAlgebra γ] [HeytingAlgebra δ]
 
-instance : HeytingHomClass (HeytingHom α β) α β where
+instance instHeytingHomClass : HeytingHomClass (HeytingHom α β) α β where
   coe f := f.toFun
   coe_injective' f g h := by obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := f; obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := g; congr
   map_sup f := f.map_sup'
chore: fix many typos (#4983)

These are all doc fixes

Diff
@@ -22,14 +22,14 @@ be satisfied by itself and all stricter types.
 ## Types of morphisms
 
 * `HeytingHom`: Heyting homomorphisms.
-* `Coheytinghom`: Co-Heyting homomorphisms.
+* `CoheytingHom`: Co-Heyting homomorphisms.
 * `BiheytingHom`: Bi-Heyting homomorphisms.
 
 ## Typeclasses
 
 * `HeytingHomClass`
-* `CoheytinghomClass`
-* `BiheytinghomClass`
+* `CoheytingHomClass`
+* `BiheytingHomClass`
 -/
 
 
@@ -419,7 +419,7 @@ theorem copy_eq (f : CoheytingHom α β) (f' : α → β) (h : f' = f) : f.copy
 
 variable (α)
 
-/-- `id` as a `Coheytinghom`. -/
+/-- `id` as a `CoheytingHom`. -/
 protected def id : CoheytingHom α α :=
   { TopHom.id _ with
     toLatticeHom := LatticeHom.id _
chore: clean-up protect_proj porting notes (#4425)

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

Diff
@@ -39,35 +39,32 @@ variable {F α β γ δ : Type _}
 
 /-- The type of Heyting homomorphisms from `α` to `β`. Bounded lattice homomorphisms that preserve
 Heyting implication. -/
--- @[protect_proj] -- Porting note: Not yet implemented
 structure HeytingHom (α β : Type _) [HeytingAlgebra α] [HeytingAlgebra β] extends
   LatticeHom α β where
   /-- The proposition that a Heyting homomorphism preserves the bottom element.-/
-  map_bot' : toFun ⊥ = ⊥
+  protected map_bot' : toFun ⊥ = ⊥
   /-- The proposition that a Heyting homomorphism preserves the Heyting implication.-/
-  map_himp' : ∀ a b, toFun (a ⇨ b) = toFun a ⇨ toFun b
+  protected map_himp' : ∀ a b, toFun (a ⇨ b) = toFun a ⇨ toFun b
 #align heyting_hom HeytingHom
 
 /-- The type of co-Heyting homomorphisms from `α` to `β`. Bounded lattice homomorphisms that
 preserve difference. -/
--- @[protect_proj] -- Porting note: Not yet implemented
 structure CoheytingHom (α β : Type _) [CoheytingAlgebra α] [CoheytingAlgebra β] extends
   LatticeHom α β where
   /-- The proposition that a co-Heyting homomorphism preserves the top element.-/
-  map_top' : toFun ⊤ = ⊤
+  protected map_top' : toFun ⊤ = ⊤
   /-- The proposition that a co-Heyting homomorphism preserves the difference operation.-/
-  map_sdiff' : ∀ a b, toFun (a \ b) = toFun a \ toFun b
+  protected map_sdiff' : ∀ a b, toFun (a \ b) = toFun a \ toFun b
 #align coheyting_hom CoheytingHom
 
 /-- The type of bi-Heyting homomorphisms from `α` to `β`. Bounded lattice homomorphisms that
 preserve Heyting implication and difference. -/
--- @[protect_proj] -- Porting note: Not yet implemented
 structure BiheytingHom (α β : Type _) [BiheytingAlgebra α] [BiheytingAlgebra β] extends
   LatticeHom α β where
   /-- The proposition that a bi-Heyting homomorphism preserves the Heyting implication.-/
-  map_himp' : ∀ a b, toFun (a ⇨ b) = toFun a ⇨ toFun b
+  protected map_himp' : ∀ a b, toFun (a ⇨ b) = toFun a ⇨ toFun b
   /-- The proposition that a bi-Heyting homomorphism preserves the difference operation.-/
-  map_sdiff' : ∀ a b, toFun (a \ b) = toFun a \ toFun b
+  protected map_sdiff' : ∀ a b, toFun (a \ b) = toFun a \ toFun b
 #align biheyting_hom BiheytingHom
 
 /-- `HeytingHomClass F α β` states that `F` is a type of Heyting homomorphisms.
chore: bump to nightly-2023-04-11 (#3139)
Diff
@@ -112,35 +112,35 @@ attribute [simp] map_himp map_sdiff
 /- Porting note: `[HeytingAlgebra α, β]` -> `{ _ : HeytingAlgebra α, β}` as a dangerous instance fix
 similar for Coheyting & Biheyting instances -/
 -- See note [lower instance priority]
-instance (priority := 100) HeytingHomClass.toBoundedLatticeHomClass {_ : HeytingAlgebra α}
+instance (priority := 100) HeytingHomClass.toBoundedLatticeHomClass [HeytingAlgebra α]
     { _ : HeytingAlgebra β} [HeytingHomClass F α β] : BoundedLatticeHomClass F α β :=
   { ‹HeytingHomClass F α β› with
     map_top := fun f => by rw [← @himp_self α _ ⊥, ← himp_self, map_himp] }
 #align heyting_hom_class.to_bounded_lattice_hom_class HeytingHomClass.toBoundedLatticeHomClass
 
 -- See note [lower instance priority]
-instance (priority := 100) CoheytingHomClass.toBoundedLatticeHomClass {_ : CoheytingAlgebra α}
+instance (priority := 100) CoheytingHomClass.toBoundedLatticeHomClass [CoheytingAlgebra α]
     { _ : CoheytingAlgebra β} [CoheytingHomClass F α β] : BoundedLatticeHomClass F α β :=
   { ‹CoheytingHomClass F α β› with
     map_bot := fun f => by rw [← @sdiff_self α _ ⊤, ← sdiff_self, map_sdiff] }
 #align coheyting_hom_class.to_bounded_lattice_hom_class CoheytingHomClass.toBoundedLatticeHomClass
 
 -- See note [lower instance priority]
-instance (priority := 100) BiheytingHomClass.toHeytingHomClass {_ : BiheytingAlgebra α}
+instance (priority := 100) BiheytingHomClass.toHeytingHomClass [BiheytingAlgebra α]
     { _ : BiheytingAlgebra β} [BiheytingHomClass F α β] : HeytingHomClass F α β :=
   { ‹BiheytingHomClass F α β› with
     map_bot := fun f => by rw [← @sdiff_self α _ ⊤, ← sdiff_self, BiheytingHomClass.map_sdiff] }
 #align biheyting_hom_class.to_heyting_hom_class BiheytingHomClass.toHeytingHomClass
 
 -- See note [lower instance priority]
-instance (priority := 100) BiheytingHomClass.toCoheytingHomClass {_ : BiheytingAlgebra α}
+instance (priority := 100) BiheytingHomClass.toCoheytingHomClass [BiheytingAlgebra α]
     { _ : BiheytingAlgebra β}  [BiheytingHomClass F α β] : CoheytingHomClass F α β :=
   { ‹BiheytingHomClass F α β› with
     map_top := fun f => by rw [← @himp_self α _ ⊥, ← himp_self, map_himp] }
 #align biheyting_hom_class.to_coheyting_hom_class BiheytingHomClass.toCoheytingHomClass
 
 -- See note [lower instance priority]
-instance (priority := 100) OrderIsoClass.toHeytingHomClass {_ : HeytingAlgebra α}
+instance (priority := 100) OrderIsoClass.toHeytingHomClass [HeytingAlgebra α]
     { _ : HeytingAlgebra β} [OrderIsoClass F α β] : HeytingHomClass F α β :=
   { OrderIsoClass.toBoundedLatticeHomClass with
     map_himp := fun f a b =>
@@ -151,7 +151,7 @@ instance (priority := 100) OrderIsoClass.toHeytingHomClass {_ : HeytingAlgebra 
 #align order_iso_class.to_heyting_hom_class OrderIsoClass.toHeytingHomClass
 
 -- See note [lower instance priority]
-instance (priority := 100) OrderIsoClass.toCoheytingHomClass {_ : CoheytingAlgebra α}
+instance (priority := 100) OrderIsoClass.toCoheytingHomClass [CoheytingAlgebra α]
     { _ : CoheytingAlgebra β} [OrderIsoClass F α β] : CoheytingHomClass F α β :=
   { OrderIsoClass.toBoundedLatticeHomClass with
     map_sdiff := fun f a b =>
@@ -162,7 +162,7 @@ instance (priority := 100) OrderIsoClass.toCoheytingHomClass {_ : CoheytingAlgeb
 #align order_iso_class.to_coheyting_hom_class OrderIsoClass.toCoheytingHomClass
 
 -- See note [lower instance priority]
-instance (priority := 100) OrderIsoClass.toBiheytingHomClass {_ : BiheytingAlgebra α}
+instance (priority := 100) OrderIsoClass.toBiheytingHomClass [BiheytingAlgebra α]
     { _ : BiheytingAlgebra β} [OrderIsoClass F α β] : BiheytingHomClass F α β :=
   { OrderIsoClass.toLatticeHomClass with
     map_himp := fun f a b =>
chore: tidy various files (#2236)
Diff
@@ -81,9 +81,9 @@ class HeytingHomClass (F : Type _) (α β : outParam <| Type _) [HeytingAlgebra
   map_himp (f : F) : ∀ a b, f (a ⇨ b) = f a ⇨ f b
 #align heyting_hom_class HeytingHomClass
 
-/-- `CoheytinghomClass F α β` states that `F` is a type of co-Heyting homomorphisms.
+/-- `CoheytingHomClass F α β` states that `F` is a type of co-Heyting homomorphisms.
 
-You should extend this class when you extend `Coheytinghom`. -/
+You should extend this class when you extend `CoheytingHom`. -/
 class CoheytingHomClass (F : Type _) (α β : outParam <| Type _) [CoheytingAlgebra α]
   [CoheytingAlgebra β] extends LatticeHomClass F α β where
   /-- The proposition that a co-Heyting homomorphism preserves the top element.-/
@@ -92,7 +92,7 @@ class CoheytingHomClass (F : Type _) (α β : outParam <| Type _) [CoheytingAlge
   map_sdiff (f : F) : ∀ a b, f (a \ b) = f a \ f b
 #align coheyting_hom_class CoheytingHomClass
 
-/-- `BiheytinghomClass F α β` states that `F` is a type of bi-Heyting homomorphisms.
+/-- `BiheytingHomClass F α β` states that `F` is a type of bi-Heyting homomorphisms.
 
 You should extend this class when you extend `BiheytingHom`. -/
 class BiheytingHomClass (F : Type _) (α β : outParam <| Type _) [BiheytingAlgebra α]
@@ -144,8 +144,7 @@ instance (priority := 100) OrderIsoClass.toHeytingHomClass {_ : HeytingAlgebra 
     { _ : HeytingAlgebra β} [OrderIsoClass F α β] : HeytingHomClass F α β :=
   { OrderIsoClass.toBoundedLatticeHomClass with
     map_himp := fun f a b =>
-      eq_of_forall_le_iff fun c =>
-        by
+      eq_of_forall_le_iff fun c => by
         simp only [← map_inv_le_iff, le_himp_iff]
         rw [← OrderIsoClass.map_le_map_iff f]
         simp }
@@ -156,8 +155,7 @@ instance (priority := 100) OrderIsoClass.toCoheytingHomClass {_ : CoheytingAlgeb
     { _ : CoheytingAlgebra β} [OrderIsoClass F α β] : CoheytingHomClass F α β :=
   { OrderIsoClass.toBoundedLatticeHomClass with
     map_sdiff := fun f a b =>
-      eq_of_forall_ge_iff fun c =>
-        by
+      eq_of_forall_ge_iff fun c => by
         simp only [← le_map_inv_iff, sdiff_le_iff]
         rw [← OrderIsoClass.map_le_map_iff f]
         simp }
@@ -166,17 +164,14 @@ instance (priority := 100) OrderIsoClass.toCoheytingHomClass {_ : CoheytingAlgeb
 -- See note [lower instance priority]
 instance (priority := 100) OrderIsoClass.toBiheytingHomClass {_ : BiheytingAlgebra α}
     { _ : BiheytingAlgebra β} [OrderIsoClass F α β] : BiheytingHomClass F α β :=
-  {
-    OrderIsoClass.toLatticeHomClass with
+  { OrderIsoClass.toLatticeHomClass with
     map_himp := fun f a b =>
-      eq_of_forall_le_iff fun c =>
-        by
+      eq_of_forall_le_iff fun c => by
         simp only [← map_inv_le_iff, le_himp_iff]
         rw [← OrderIsoClass.map_le_map_iff f]
         simp
     map_sdiff := fun f a b =>
-      eq_of_forall_ge_iff fun c =>
-        by
+      eq_of_forall_ge_iff fun c => by
         simp only [← le_map_inv_iff, sdiff_le_iff]
         rw [← OrderIsoClass.map_le_map_iff f]
         simp }
@@ -188,9 +183,7 @@ instance (priority := 100) OrderIsoClass.toBiheytingHomClass {_ : BiheytingAlgeb
 @[reducible]
 def BoundedLatticeHomClass.toBiheytingHomClass [BooleanAlgebra α] [BooleanAlgebra β]
     [BoundedLatticeHomClass F α β] : BiheytingHomClass F α β :=
-  {
-    ‹BoundedLatticeHomClass F α
-        β› with
+  { ‹BoundedLatticeHomClass F α β› with
     map_himp := fun f a b => by rw [himp_eq, himp_eq, map_sup, (isCompl_compl.map _).compl_eq]
     map_sdiff := fun f a b => by rw [sdiff_eq, sdiff_eq, map_inf, (isCompl_compl.map _).compl_eq] }
 #align bounded_lattice_hom_class.to_biheyting_hom_class BoundedLatticeHomClass.toBiheytingHomClass
@@ -254,8 +247,7 @@ namespace HeytingHom
 
 variable [HeytingAlgebra α] [HeytingAlgebra β] [HeytingAlgebra γ] [HeytingAlgebra δ]
 
-instance : HeytingHomClass (HeytingHom α β) α β
-    where
+instance : HeytingHomClass (HeytingHom α β) α β where
   coe f := f.toFun
   coe_injective' f g h := by obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := f; obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := g; congr
   map_sup f := f.map_sup'
@@ -286,8 +278,7 @@ theorem ext {f g : HeytingHom α β} (h : ∀ a, f a = g a) : f = g :=
 
 /-- Copy of a `HeytingHom` with a new `toFun` equal to the old one. Useful to fix definitional
 equalities. -/
-protected def copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : HeytingHom α β
-    where
+protected def copy (f : HeytingHom α β) (f' : α → β) (h : f' = f) : HeytingHom α β where
   toFun := f'
   map_sup' := by simpa only [h] using map_sup f
   map_inf' := by simpa only [h] using map_inf f
@@ -456,7 +447,7 @@ instance : Inhabited (CoheytingHom α α) :=
 instance : PartialOrder (CoheytingHom α β) :=
   PartialOrder.lift _ FunLike.coe_injective
 
-/-- Composition of `Coheytinghom`s as a `CoheytingHom`. -/
+/-- Composition of `CoheytingHom`s as a `CoheytingHom`. -/
 def comp (f : CoheytingHom β γ) (g : CoheytingHom α β) : CoheytingHom α γ :=
   { f.toLatticeHom.comp g.toLatticeHom with
     toFun := f ∘ g
@@ -506,8 +497,7 @@ namespace BiheytingHom
 
 variable [BiheytingAlgebra α] [BiheytingAlgebra β] [BiheytingAlgebra γ] [BiheytingAlgebra δ]
 
-instance : BiheytingHomClass (BiheytingHom α β) α β
-    where
+instance : BiheytingHomClass (BiheytingHom α β) α β where
   coe f := f.toFun
   coe_injective' f g h := by obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := f; obtain ⟨⟨⟨_, _⟩, _⟩, _⟩ := g; congr
   map_sup f := f.map_sup'
@@ -537,8 +527,7 @@ theorem ext {f g : BiheytingHom α β} (h : ∀ a, f a = g a) : f = g :=
 
 /-- Copy of a `BiheytingHom` with a new `toFun` equal to the old one. Useful to fix definitional
 equalities. -/
-protected def copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : BiheytingHom α β
-    where
+protected def copy (f : BiheytingHom α β) (f' : α → β) (h : f' = f) : BiheytingHom α β where
   toFun := f'
   map_sup' := by simpa only [h] using map_sup f
   map_inf' := by simpa only [h] using map_inf f
feat: port Order.Heyting.Hom (#2077)

@[protect_proj] is currently unimplemented. Other than that, dangerous instances fixed in the standard way and not much else interesting going on here.

Dependencies 42

43 files ported (100.0%)
21760 lines ported (100.0%)

All dependencies are ported!