category_theory.idempotents.functor_extensionMathlib.CategoryTheory.Idempotents.FunctorExtension

This file has been ported!

Changes since the initial port

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

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(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
@@ -318,7 +318,7 @@ theorem whiskeringLeft_obj_preimage_app {F G : Karoubi C ⥤ D}
   by
   rw [nat_trans_eq]
   congr 2
-  exact congr_app (((whiskering_left _ _ _).obj (to_karoubi _)).image_preimage τ) P.X
+  exact congr_app (((whiskering_left _ _ _).obj (to_karoubi _)).map_preimage τ) P.X
 #align category_theory.idempotents.whiskering_left_obj_preimage_app CategoryTheory.Idempotents.whiskeringLeft_obj_preimage_app
 -/
 
Diff
@@ -251,7 +251,7 @@ section IsIdempotentComplete
 
 variable [IsIdempotentComplete D]
 
-noncomputable instance : IsEquivalence (toKaroubi D) :=
+noncomputable instance : CategoryTheory.Functor.IsEquivalence (toKaroubi D) :=
   toKaroubiIsEquivalence D
 
 #print CategoryTheory.Idempotents.karoubiUniversal₂ /-
@@ -269,7 +269,7 @@ theorem karoubiUniversal₂_functor_eq : (karoubiUniversal₂ C D).Functor = fun
 #align category_theory.idempotents.karoubi_universal₂_functor_eq CategoryTheory.Idempotents.karoubiUniversal₂_functor_eq
 -/
 
-noncomputable instance : IsEquivalence (functorExtension₂ C D) := by
+noncomputable instance : CategoryTheory.Functor.IsEquivalence (functorExtension₂ C D) := by
   rw [← karoubi_universal₂_functor_eq]; infer_instance
 
 #print CategoryTheory.Idempotents.functorExtension /-
@@ -296,13 +296,14 @@ theorem karoubiUniversal_functor_eq : (karoubiUniversal C D).Functor = functorEx
 #align category_theory.idempotents.karoubi_universal_functor_eq CategoryTheory.Idempotents.karoubiUniversal_functor_eq
 -/
 
-noncomputable instance : IsEquivalence (functorExtension C D) := by
+noncomputable instance : CategoryTheory.Functor.IsEquivalence (functorExtension C D) := by
   rw [← karoubi_universal_functor_eq]; infer_instance
 
-noncomputable instance : IsEquivalence ((whiskeringLeft C (Karoubi C) D).obj (toKaroubi C)) :=
-  IsEquivalence.cancelCompRight _
+noncomputable instance :
+    CategoryTheory.Functor.IsEquivalence ((whiskeringLeft C (Karoubi C) D).obj (toKaroubi C)) :=
+  CategoryTheory.Functor.IsEquivalence.cancelCompRight _
     ((whiskeringRight C _ _).obj (toKaroubi D) ⋙ (whiskeringRight C _ _).obj (toKaroubi D).inv)
-    (IsEquivalence.ofEquivalence
+    (CategoryTheory.Functor.IsEquivalence.ofEquivalence
       (@Equivalence.congrRight _ _ _ _ C _
         ((toKaroubi D).asEquivalence.trans (toKaroubi D).asEquivalence.symm)))
     (by change is_equivalence (karoubi_universal C D).inverse; infer_instance)
Diff
@@ -83,7 +83,7 @@ def map {F G : C ⥤ Karoubi D} (φ : F ⟶ G) : obj F ⟶ obj G
       comm := by
         have h := φ.naturality P.p
         have h' := F.congr_map P.idem
-        simp only [hom_ext, karoubi.comp_f, F.map_comp] at h h' 
+        simp only [hom_ext, karoubi.comp_f, F.map_comp] at h h'
         simp only [obj_obj_p, assoc, ← h]
         slice_rhs 1 3 => rw [h', h'] }
   naturality' P Q f := by
@@ -116,7 +116,7 @@ def functorExtension₁ : (C ⥤ Karoubi D) ⥤ Karoubi C ⥤ Karoubi D
     simp only [comp_f, functor_extension₁.map_app_f, nat_trans.comp_app, assoc]
     have h := φ.naturality P.p
     have h' := F.congr_map P.idem
-    simp only [hom_ext, comp_f, F.map_comp] at h h' 
+    simp only [hom_ext, comp_f, F.map_comp] at h h'
     slice_rhs 2 3 => rw [← h]
     slice_rhs 1 2 => rw [h']
     simp only [assoc]
Diff
@@ -123,7 +123,6 @@ def functorExtension₁ : (C ⥤ Karoubi D) ⥤ Karoubi C ⥤ Karoubi D
 #align category_theory.idempotents.functor_extension₁ CategoryTheory.Idempotents.functorExtension₁
 -/
 
-#print CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi /-
 theorem functorExtension₁_comp_whiskeringLeft_toKaroubi :
     functorExtension₁ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) = 𝟭 _ :=
   by
@@ -148,16 +147,15 @@ theorem functorExtension₁_comp_whiskeringLeft_toKaroubi :
     simp only [eq_to_hom_app, F.map_id, comp_f, eq_to_hom_f, id_eq, p_comp, eq_to_hom_refl, comp_id,
       comp_p, functor_extension₁.obj_obj_p, to_karoubi_obj_p, F.map_id X]
 #align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi
--/
 
-#print CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_iso /-
+#print CategoryTheory.Idempotents.functorExtension₁CompWhiskeringLeftToKaroubiIso /-
 /-- The natural isomorphism expressing that functors `karoubi C ⥤ karoubi D` obtained
 using `functor_extension₁` actually extends the original functors `C ⥤ karoubi D`. -/
 @[simps]
-def functorExtension₁_comp_whiskeringLeft_toKaroubi_iso :
+def functorExtension₁CompWhiskeringLeftToKaroubiIso :
     functorExtension₁ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) ≅ 𝟭 _ :=
   eqToIso (functorExtension₁_comp_whiskeringLeft_toKaroubi C D)
-#align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_iso
+#align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₁CompWhiskeringLeftToKaroubiIso
 -/
 
 #print CategoryTheory.Idempotents.KaroubiUniversal₁.counitIso /-
@@ -206,7 +204,7 @@ def karoubiUniversal₁ : C ⥤ Karoubi D ≌ Karoubi C ⥤ Karoubi D
     where
   Functor := functorExtension₁ C D
   inverse := (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C)
-  unitIso := (functorExtension₁_comp_whiskeringLeft_toKaroubi_iso C D).symm
+  unitIso := (functorExtension₁CompWhiskeringLeftToKaroubiIso C D).symm
   counitIso := KaroubiUniversal₁.counitIso C D
   functor_unitIso_comp' F := by
     ext P
@@ -216,13 +214,11 @@ def karoubiUniversal₁ : C ⥤ Karoubi D ≌ Karoubi C ⥤ Karoubi D
 #align category_theory.idempotents.karoubi_universal₁ CategoryTheory.Idempotents.karoubiUniversal₁
 -/
 
-#print CategoryTheory.Idempotents.functorExtension₁_comp /-
 theorem functorExtension₁_comp (F : C ⥤ Karoubi D) (G : D ⥤ Karoubi E) :
     (functorExtension₁ C E).obj (F ⋙ (functorExtension₁ D E).obj G) =
       (functorExtension₁ C D).obj F ⋙ (functorExtension₁ D E).obj G :=
   Functor.ext (by tidy) fun X Y f => by dsimp; simpa only [id_comp, comp_id]
 #align category_theory.idempotents.functor_extension₁_comp CategoryTheory.Idempotents.functorExtension₁_comp
--/
 
 #print CategoryTheory.Idempotents.functorExtension₂ /-
 /-- The canonical functor `(C ⥤ D) ⥤ (karoubi C ⥤ karoubi D)` -/
@@ -232,7 +228,6 @@ def functorExtension₂ : (C ⥤ D) ⥤ Karoubi C ⥤ Karoubi D :=
 #align category_theory.idempotents.functor_extension₂ CategoryTheory.Idempotents.functorExtension₂
 -/
 
-#print CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubi /-
 theorem functorExtension₂_comp_whiskeringLeft_toKaroubi :
     functorExtension₂ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) =
       (whiskeringRight C D (Karoubi D)).obj (toKaroubi D) :=
@@ -240,7 +235,6 @@ theorem functorExtension₂_comp_whiskeringLeft_toKaroubi :
   simp only [functor_extension₂, functor.assoc, functor_extension₁_comp_whiskering_left_to_karoubi,
     functor.comp_id]
 #align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubi
--/
 
 #print CategoryTheory.Idempotents.functorExtension₂CompWhiskeringLeftToKaroubiIso /-
 /-- The natural isomorphism expressing that functors `karoubi C ⥤ karoubi D` obtained
Diff
@@ -3,7 +3,7 @@ Copyright (c) 2022 Joël Riou. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Joël Riou
 -/
-import Mathbin.CategoryTheory.Idempotents.Karoubi
+import CategoryTheory.Idempotents.Karoubi
 
 #align_import category_theory.idempotents.functor_extension from "leanprover-community/mathlib"@"19cb3751e5e9b3d97adb51023949c50c13b5fdfd"
 
Diff
@@ -258,7 +258,7 @@ section IsIdempotentComplete
 variable [IsIdempotentComplete D]
 
 noncomputable instance : IsEquivalence (toKaroubi D) :=
-  toKaroubi_isEquivalence D
+  toKaroubiIsEquivalence D
 
 #print CategoryTheory.Idempotents.karoubiUniversal₂ /-
 /-- The equivalence of categories `(C ⥤ D) ≌ (karoubi C ⥤ karoubi D)` when `D`
@@ -284,7 +284,7 @@ when `D` is idempotent compltete. -/
 @[simps]
 noncomputable def functorExtension : (C ⥤ D) ⥤ Karoubi C ⥤ D :=
   functorExtension₂ C D ⋙
-    (whiskeringRight (Karoubi C) (Karoubi D) D).obj (toKaroubi_isEquivalence D).inverse
+    (whiskeringRight (Karoubi C) (Karoubi D) D).obj (toKaroubiIsEquivalence D).inverse
 #align category_theory.idempotents.functor_extension CategoryTheory.Idempotents.functorExtension
 -/
 
Diff
@@ -2,14 +2,11 @@
 Copyright (c) 2022 Joël Riou. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Joël Riou
-
-! This file was ported from Lean 3 source module category_theory.idempotents.functor_extension
-! leanprover-community/mathlib commit 19cb3751e5e9b3d97adb51023949c50c13b5fdfd
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.CategoryTheory.Idempotents.Karoubi
 
+#align_import category_theory.idempotents.functor_extension from "leanprover-community/mathlib"@"19cb3751e5e9b3d97adb51023949c50c13b5fdfd"
+
 /-!
 # Extension of functors to the idempotent completion
 
Diff
@@ -45,6 +45,7 @@ namespace Idempotents
 
 variable {C D E : Type _} [Category C] [Category D] [Category E]
 
+#print CategoryTheory.Idempotents.natTrans_eq /-
 /-- A natural transformation between functors `karoubi C ⥤ D` is determined
 by its value on objects coming from `C`. -/
 theorem natTrans_eq {F G : Karoubi C ⥤ D} (φ : F ⟶ G) (P : Karoubi C) :
@@ -57,9 +58,11 @@ theorem natTrans_eq {F G : Karoubi C ⥤ D} (φ : F ⟶ G) (P : Karoubi C) :
   congr
   apply decomp_id
 #align category_theory.idempotents.nat_trans_eq CategoryTheory.Idempotents.natTrans_eq
+-/
 
 namespace FunctorExtension₁
 
+#print CategoryTheory.Idempotents.FunctorExtension₁.obj /-
 /-- The canonical extension of a functor `C ⥤ karoubi D` to a functor
 `karoubi C ⥤ karoubi D` -/
 @[simps]
@@ -69,7 +72,9 @@ def obj (F : C ⥤ Karoubi D) : Karoubi C ⥤ Karoubi D
     ⟨(F.obj P.pt).pt, (F.map P.p).f, by simpa only [F.map_comp, hom_ext] using F.congr_map P.idem⟩
   map P Q f := ⟨(F.map f.f).f, by simpa only [F.map_comp, hom_ext] using F.congr_map f.comm⟩
 #align category_theory.idempotents.functor_extension₁.obj CategoryTheory.Idempotents.FunctorExtension₁.obj
+-/
 
+#print CategoryTheory.Idempotents.FunctorExtension₁.map /-
 /-- Extension of a natural transformation `φ` between functors
 `C ⥤ karoubi D` to a natural transformation between the
 extension of these functors to `karoubi C ⥤ karoubi D` -/
@@ -95,11 +100,13 @@ def map {F G : C ⥤ Karoubi D} (φ : F ⟶ G) : obj F ⟶ obj G
     slice_lhs 1 2 => rw [h']
     slice_rhs 1 2 => rw [h'']
 #align category_theory.idempotents.functor_extension₁.map CategoryTheory.Idempotents.FunctorExtension₁.map
+-/
 
 end FunctorExtension₁
 
 variable (C D E)
 
+#print CategoryTheory.Idempotents.functorExtension₁ /-
 /-- The canonical functor `(C ⥤ karoubi D) ⥤ (karoubi C ⥤ karoubi D)` -/
 @[simps]
 def functorExtension₁ : (C ⥤ Karoubi D) ⥤ Karoubi C ⥤ Karoubi D
@@ -117,7 +124,9 @@ def functorExtension₁ : (C ⥤ Karoubi D) ⥤ Karoubi C ⥤ Karoubi D
     slice_rhs 1 2 => rw [h']
     simp only [assoc]
 #align category_theory.idempotents.functor_extension₁ CategoryTheory.Idempotents.functorExtension₁
+-/
 
+#print CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi /-
 theorem functorExtension₁_comp_whiskeringLeft_toKaroubi :
     functorExtension₁ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) = 𝟭 _ :=
   by
@@ -142,7 +151,9 @@ theorem functorExtension₁_comp_whiskeringLeft_toKaroubi :
     simp only [eq_to_hom_app, F.map_id, comp_f, eq_to_hom_f, id_eq, p_comp, eq_to_hom_refl, comp_id,
       comp_p, functor_extension₁.obj_obj_p, to_karoubi_obj_p, F.map_id X]
 #align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi
+-/
 
+#print CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_iso /-
 /-- The natural isomorphism expressing that functors `karoubi C ⥤ karoubi D` obtained
 using `functor_extension₁` actually extends the original functors `C ⥤ karoubi D`. -/
 @[simps]
@@ -150,7 +161,9 @@ def functorExtension₁_comp_whiskeringLeft_toKaroubi_iso :
     functorExtension₁ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) ≅ 𝟭 _ :=
   eqToIso (functorExtension₁_comp_whiskeringLeft_toKaroubi C D)
 #align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_iso
+-/
 
+#print CategoryTheory.Idempotents.KaroubiUniversal₁.counitIso /-
 /-- The counit isomorphism of the equivalence `(C ⥤ karoubi D) ≌ (karoubi C ⥤ karoubi D)`. -/
 @[simps]
 def KaroubiUniversal₁.counitIso :
@@ -187,7 +200,9 @@ def KaroubiUniversal₁.counitIso :
     simpa only [nat_trans_eq φ P, comp_f, functor_extension₁.map_app_f, functor.comp_map,
       whisker_left_app, assoc, P.decomp_p, G₁.map_comp]
 #align category_theory.idempotents.karoubi_universal₁.counit_iso CategoryTheory.Idempotents.KaroubiUniversal₁.counitIso
+-/
 
+#print CategoryTheory.Idempotents.karoubiUniversal₁ /-
 /-- The equivalence of categories `(C ⥤ karoubi D) ≌ (karoubi C ⥤ karoubi D)`. -/
 @[simps]
 def karoubiUniversal₁ : C ⥤ Karoubi D ≌ Karoubi C ⥤ Karoubi D
@@ -202,19 +217,25 @@ def karoubiUniversal₁ : C ⥤ Karoubi D ≌ Karoubi C ⥤ Karoubi D
     simpa only [comp_f, eq_to_hom_app, eq_to_hom_f, eq_to_hom_refl, comp_id, hom_ext, F.map_comp,
       comp_p] using F.congr_map P.idem
 #align category_theory.idempotents.karoubi_universal₁ CategoryTheory.Idempotents.karoubiUniversal₁
+-/
 
+#print CategoryTheory.Idempotents.functorExtension₁_comp /-
 theorem functorExtension₁_comp (F : C ⥤ Karoubi D) (G : D ⥤ Karoubi E) :
     (functorExtension₁ C E).obj (F ⋙ (functorExtension₁ D E).obj G) =
       (functorExtension₁ C D).obj F ⋙ (functorExtension₁ D E).obj G :=
   Functor.ext (by tidy) fun X Y f => by dsimp; simpa only [id_comp, comp_id]
 #align category_theory.idempotents.functor_extension₁_comp CategoryTheory.Idempotents.functorExtension₁_comp
+-/
 
+#print CategoryTheory.Idempotents.functorExtension₂ /-
 /-- The canonical functor `(C ⥤ D) ⥤ (karoubi C ⥤ karoubi D)` -/
 @[simps]
 def functorExtension₂ : (C ⥤ D) ⥤ Karoubi C ⥤ Karoubi D :=
   (whiskeringRight C D (Karoubi D)).obj (toKaroubi D) ⋙ functorExtension₁ C D
 #align category_theory.idempotents.functor_extension₂ CategoryTheory.Idempotents.functorExtension₂
+-/
 
+#print CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubi /-
 theorem functorExtension₂_comp_whiskeringLeft_toKaroubi :
     functorExtension₂ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) =
       (whiskeringRight C D (Karoubi D)).obj (toKaroubi D) :=
@@ -222,7 +243,9 @@ theorem functorExtension₂_comp_whiskeringLeft_toKaroubi :
   simp only [functor_extension₂, functor.assoc, functor_extension₁_comp_whiskering_left_to_karoubi,
     functor.comp_id]
 #align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubi
+-/
 
+#print CategoryTheory.Idempotents.functorExtension₂CompWhiskeringLeftToKaroubiIso /-
 /-- The natural isomorphism expressing that functors `karoubi C ⥤ karoubi D` obtained
 using `functor_extension₂` actually extends the original functors `C ⥤ D`. -/
 @[simps]
@@ -231,6 +254,7 @@ def functorExtension₂CompWhiskeringLeftToKaroubiIso :
       (whiskeringRight C D (Karoubi D)).obj (toKaroubi D) :=
   eqToIso (functorExtension₂_comp_whiskeringLeft_toKaroubi C D)
 #align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₂CompWhiskeringLeftToKaroubiIso
+-/
 
 section IsIdempotentComplete
 
@@ -239,20 +263,25 @@ variable [IsIdempotentComplete D]
 noncomputable instance : IsEquivalence (toKaroubi D) :=
   toKaroubi_isEquivalence D
 
+#print CategoryTheory.Idempotents.karoubiUniversal₂ /-
 /-- The equivalence of categories `(C ⥤ D) ≌ (karoubi C ⥤ karoubi D)` when `D`
 is idempotent complete. -/
 @[simps]
 noncomputable def karoubiUniversal₂ : C ⥤ D ≌ Karoubi C ⥤ Karoubi D :=
   (Equivalence.congrRight (toKaroubi D).asEquivalence).trans (karoubiUniversal₁ C D)
 #align category_theory.idempotents.karoubi_universal₂ CategoryTheory.Idempotents.karoubiUniversal₂
+-/
 
+#print CategoryTheory.Idempotents.karoubiUniversal₂_functor_eq /-
 theorem karoubiUniversal₂_functor_eq : (karoubiUniversal₂ C D).Functor = functorExtension₂ C D :=
   rfl
 #align category_theory.idempotents.karoubi_universal₂_functor_eq CategoryTheory.Idempotents.karoubiUniversal₂_functor_eq
+-/
 
 noncomputable instance : IsEquivalence (functorExtension₂ C D) := by
   rw [← karoubi_universal₂_functor_eq]; infer_instance
 
+#print CategoryTheory.Idempotents.functorExtension /-
 /-- The extension of functors functor `(C ⥤ D) ⥤ (karoubi C ⥤ D)`
 when `D` is idempotent compltete. -/
 @[simps]
@@ -260,16 +289,21 @@ noncomputable def functorExtension : (C ⥤ D) ⥤ Karoubi C ⥤ D :=
   functorExtension₂ C D ⋙
     (whiskeringRight (Karoubi C) (Karoubi D) D).obj (toKaroubi_isEquivalence D).inverse
 #align category_theory.idempotents.functor_extension CategoryTheory.Idempotents.functorExtension
+-/
 
+#print CategoryTheory.Idempotents.karoubiUniversal /-
 /-- The equivalence `(C ⥤ D) ≌ (karoubi C ⥤ D)` when `D` is idempotent complete. -/
 @[simps]
 noncomputable def karoubiUniversal : C ⥤ D ≌ Karoubi C ⥤ D :=
   (karoubiUniversal₂ C D).trans (Equivalence.congrRight (toKaroubi D).asEquivalence.symm)
 #align category_theory.idempotents.karoubi_universal CategoryTheory.Idempotents.karoubiUniversal
+-/
 
+#print CategoryTheory.Idempotents.karoubiUniversal_functor_eq /-
 theorem karoubiUniversal_functor_eq : (karoubiUniversal C D).Functor = functorExtension C D :=
   rfl
 #align category_theory.idempotents.karoubi_universal_functor_eq CategoryTheory.Idempotents.karoubiUniversal_functor_eq
+-/
 
 noncomputable instance : IsEquivalence (functorExtension C D) := by
   rw [← karoubi_universal_functor_eq]; infer_instance
@@ -284,6 +318,7 @@ noncomputable instance : IsEquivalence ((whiskeringLeft C (Karoubi C) D).obj (to
 
 variable {C D}
 
+#print CategoryTheory.Idempotents.whiskeringLeft_obj_preimage_app /-
 theorem whiskeringLeft_obj_preimage_app {F G : Karoubi C ⥤ D}
     (τ : toKaroubi _ ⋙ F ⟶ toKaroubi _ ⋙ G) (P : Karoubi C) :
     (((whiskeringLeft _ _ _).obj (toKaroubi _)).preimage τ).app P =
@@ -293,6 +328,7 @@ theorem whiskeringLeft_obj_preimage_app {F G : Karoubi C ⥤ D}
   congr 2
   exact congr_app (((whiskering_left _ _ _).obj (to_karoubi _)).image_preimage τ) P.X
 #align category_theory.idempotents.whiskering_left_obj_preimage_app CategoryTheory.Idempotents.whiskeringLeft_obj_preimage_app
+-/
 
 end IsIdempotentComplete
 
Diff
@@ -81,7 +81,7 @@ def map {F G : C ⥤ Karoubi D} (φ : F ⟶ G) : obj F ⟶ obj G
       comm := by
         have h := φ.naturality P.p
         have h' := F.congr_map P.idem
-        simp only [hom_ext, karoubi.comp_f, F.map_comp] at h h'
+        simp only [hom_ext, karoubi.comp_f, F.map_comp] at h h' 
         simp only [obj_obj_p, assoc, ← h]
         slice_rhs 1 3 => rw [h', h'] }
   naturality' P Q f := by
@@ -90,7 +90,7 @@ def map {F G : C ⥤ Karoubi D} (φ : F ⟶ G) : obj F ⟶ obj G
     have h := φ.naturality f.f
     have h' := F.congr_map (comp_p f)
     have h'' := F.congr_map (p_comp f)
-    simp only [hom_ext, functor.map_comp, comp_f] at h h' h''⊢
+    simp only [hom_ext, functor.map_comp, comp_f] at h h' h'' ⊢
     slice_rhs 2 3 => rw [← h]
     slice_lhs 1 2 => rw [h']
     slice_rhs 1 2 => rw [h'']
@@ -112,7 +112,7 @@ def functorExtension₁ : (C ⥤ Karoubi D) ⥤ Karoubi C ⥤ Karoubi D
     simp only [comp_f, functor_extension₁.map_app_f, nat_trans.comp_app, assoc]
     have h := φ.naturality P.p
     have h' := F.congr_map P.idem
-    simp only [hom_ext, comp_f, F.map_comp] at h h'
+    simp only [hom_ext, comp_f, F.map_comp] at h h' 
     slice_rhs 2 3 => rw [← h]
     slice_rhs 1 2 => rw [h']
     simp only [assoc]
Diff
@@ -45,9 +45,6 @@ namespace Idempotents
 
 variable {C D E : Type _} [Category C] [Category D] [Category E]
 
-/- warning: category_theory.idempotents.nat_trans_eq -> CategoryTheory.Idempotents.natTrans_eq is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.nat_trans_eq CategoryTheory.Idempotents.natTrans_eqₓ'. -/
 /-- A natural transformation between functors `karoubi C ⥤ D` is determined
 by its value on objects coming from `C`. -/
 theorem natTrans_eq {F G : Karoubi C ⥤ D} (φ : F ⟶ G) (P : Karoubi C) :
@@ -63,12 +60,6 @@ theorem natTrans_eq {F G : Karoubi C ⥤ D} (φ : F ⟶ G) (P : Karoubi C) :
 
 namespace FunctorExtension₁
 
-/- warning: category_theory.idempotents.functor_extension₁.obj -> CategoryTheory.Idempotents.FunctorExtension₁.obj is a dubious translation:
-lean 3 declaration is
-  forall {C : Type.{u1}} {D : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) -> (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))
-but is expected to have type
-  forall {C : Type.{u1}} {D : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) -> (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁.obj CategoryTheory.Idempotents.FunctorExtension₁.objₓ'. -/
 /-- The canonical extension of a functor `C ⥤ karoubi D` to a functor
 `karoubi C ⥤ karoubi D` -/
 @[simps]
@@ -79,12 +70,6 @@ def obj (F : C ⥤ Karoubi D) : Karoubi C ⥤ Karoubi D
   map P Q f := ⟨(F.map f.f).f, by simpa only [F.map_comp, hom_ext] using F.congr_map f.comm⟩
 #align category_theory.idempotents.functor_extension₁.obj CategoryTheory.Idempotents.FunctorExtension₁.obj
 
-/- warning: category_theory.idempotents.functor_extension₁.map -> CategoryTheory.Idempotents.FunctorExtension₁.map is a dubious translation:
-lean 3 declaration is
-  forall {C : Type.{u1}} {D : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] {F : CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)} {G : CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)}, (Quiver.Hom.{succ (max u1 u4), max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max u1 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)))) F G) -> (Quiver.Hom.{succ (max (max u1 u3) u4), max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max (max u1 u3) u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max (max u1 u3) u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)))) (CategoryTheory.Idempotents.FunctorExtension₁.obj.{u1, u2, u3, u4} C D _inst_1 _inst_2 F) (CategoryTheory.Idempotents.FunctorExtension₁.obj.{u1, u2, u3, u4} C D _inst_1 _inst_2 G))
-but is expected to have type
-  forall {C : Type.{u1}} {D : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] {F : CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)} {G : CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)}, (Quiver.Hom.{max (succ u1) (succ u4), max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max u1 u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)))) F G) -> (Quiver.Hom.{max (max (succ u1) (succ u3)) (succ u4), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max (max u1 u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max (max u1 u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)))) (CategoryTheory.Idempotents.FunctorExtension₁.obj.{u1, u2, u3, u4} C D _inst_1 _inst_2 F) (CategoryTheory.Idempotents.FunctorExtension₁.obj.{u1, u2, u3, u4} C D _inst_1 _inst_2 G))
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁.map CategoryTheory.Idempotents.FunctorExtension₁.mapₓ'. -/
 /-- Extension of a natural transformation `φ` between functors
 `C ⥤ karoubi D` to a natural transformation between the
 extension of these functors to `karoubi C ⥤ karoubi D` -/
@@ -115,12 +100,6 @@ end FunctorExtension₁
 
 variable (C D E)
 
-/- warning: category_theory.idempotents.functor_extension₁ -> CategoryTheory.Idempotents.functorExtension₁ is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2 u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))
-but is expected to have type
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max (max (max (max u4 u2) u1) u4) u3, max (max (max (max u4 u2) u3 u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁ CategoryTheory.Idempotents.functorExtension₁ₓ'. -/
 /-- The canonical functor `(C ⥤ karoubi D) ⥤ (karoubi C ⥤ karoubi D)` -/
 @[simps]
 def functorExtension₁ : (C ⥤ Karoubi D) ⥤ Karoubi C ⥤ Karoubi D
@@ -139,9 +118,6 @@ def functorExtension₁ : (C ⥤ Karoubi D) ⥤ Karoubi C ⥤ Karoubi D
     simp only [assoc]
 #align category_theory.idempotents.functor_extension₁ CategoryTheory.Idempotents.functorExtension₁
 
-/- warning: category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi -> CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubiₓ'. -/
 theorem functorExtension₁_comp_whiskeringLeft_toKaroubi :
     functorExtension₁ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) = 𝟭 _ :=
   by
@@ -167,9 +143,6 @@ theorem functorExtension₁_comp_whiskeringLeft_toKaroubi :
       comp_p, functor_extension₁.obj_obj_p, to_karoubi_obj_p, F.map_id X]
 #align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi
 
-/- warning: category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso -> CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_iso is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_isoₓ'. -/
 /-- The natural isomorphism expressing that functors `karoubi C ⥤ karoubi D` obtained
 using `functor_extension₁` actually extends the original functors `C ⥤ karoubi D`. -/
 @[simps]
@@ -178,9 +151,6 @@ def functorExtension₁_comp_whiskeringLeft_toKaroubi_iso :
   eqToIso (functorExtension₁_comp_whiskeringLeft_toKaroubi C D)
 #align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_iso
 
-/- warning: category_theory.idempotents.karoubi_universal₁.counit_iso -> CategoryTheory.Idempotents.KaroubiUniversal₁.counitIso is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.karoubi_universal₁.counit_iso CategoryTheory.Idempotents.KaroubiUniversal₁.counitIsoₓ'. -/
 /-- The counit isomorphism of the equivalence `(C ⥤ karoubi D) ≌ (karoubi C ⥤ karoubi D)`. -/
 @[simps]
 def KaroubiUniversal₁.counitIso :
@@ -218,12 +188,6 @@ def KaroubiUniversal₁.counitIso :
       whisker_left_app, assoc, P.decomp_p, G₁.map_comp]
 #align category_theory.idempotents.karoubi_universal₁.counit_iso CategoryTheory.Idempotents.KaroubiUniversal₁.counitIso
 
-/- warning: category_theory.idempotents.karoubi_universal₁ -> CategoryTheory.Idempotents.karoubiUniversal₁ is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Equivalence.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2 u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))
-but is expected to have type
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Equivalence.{max u1 u4, max (max u1 u3) u4, max (max (max (max u4 u2) u1) u4) u3, max (max (max (max u4 u2) u3 u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.karoubi_universal₁ CategoryTheory.Idempotents.karoubiUniversal₁ₓ'. -/
 /-- The equivalence of categories `(C ⥤ karoubi D) ≌ (karoubi C ⥤ karoubi D)`. -/
 @[simps]
 def karoubiUniversal₁ : C ⥤ Karoubi D ≌ Karoubi C ⥤ Karoubi D
@@ -239,30 +203,18 @@ def karoubiUniversal₁ : C ⥤ Karoubi D ≌ Karoubi C ⥤ Karoubi D
       comp_p] using F.congr_map P.idem
 #align category_theory.idempotents.karoubi_universal₁ CategoryTheory.Idempotents.karoubiUniversal₁
 
-/- warning: category_theory.idempotents.functor_extension₁_comp -> CategoryTheory.Idempotents.functorExtension₁_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁_comp CategoryTheory.Idempotents.functorExtension₁_compₓ'. -/
 theorem functorExtension₁_comp (F : C ⥤ Karoubi D) (G : D ⥤ Karoubi E) :
     (functorExtension₁ C E).obj (F ⋙ (functorExtension₁ D E).obj G) =
       (functorExtension₁ C D).obj F ⋙ (functorExtension₁ D E).obj G :=
   Functor.ext (by tidy) fun X Y f => by dsimp; simpa only [id_comp, comp_id]
 #align category_theory.idempotents.functor_extension₁_comp CategoryTheory.Idempotents.functorExtension₁_comp
 
-/- warning: category_theory.idempotents.functor_extension₂ -> CategoryTheory.Idempotents.functorExtension₂ is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))
-but is expected to have type
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max (max (max u2 u1) u4) u3, max (max (max (max u4 u2) u3 u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₂ CategoryTheory.Idempotents.functorExtension₂ₓ'. -/
 /-- The canonical functor `(C ⥤ D) ⥤ (karoubi C ⥤ karoubi D)` -/
 @[simps]
 def functorExtension₂ : (C ⥤ D) ⥤ Karoubi C ⥤ Karoubi D :=
   (whiskeringRight C D (Karoubi D)).obj (toKaroubi D) ⋙ functorExtension₁ C D
 #align category_theory.idempotents.functor_extension₂ CategoryTheory.Idempotents.functorExtension₂
 
-/- warning: category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi -> CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubi is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubiₓ'. -/
 theorem functorExtension₂_comp_whiskeringLeft_toKaroubi :
     functorExtension₂ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) =
       (whiskeringRight C D (Karoubi D)).obj (toKaroubi D) :=
@@ -271,9 +223,6 @@ theorem functorExtension₂_comp_whiskeringLeft_toKaroubi :
     functor.comp_id]
 #align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubi
 
-/- warning: category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi_iso -> CategoryTheory.Idempotents.functorExtension₂CompWhiskeringLeftToKaroubiIso is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₂CompWhiskeringLeftToKaroubiIsoₓ'. -/
 /-- The natural isomorphism expressing that functors `karoubi C ⥤ karoubi D` obtained
 using `functor_extension₂` actually extends the original functors `C ⥤ D`. -/
 @[simps]
@@ -290,12 +239,6 @@ variable [IsIdempotentComplete D]
 noncomputable instance : IsEquivalence (toKaroubi D) :=
   toKaroubi_isEquivalence D
 
-/- warning: category_theory.idempotents.karoubi_universal₂ -> CategoryTheory.Idempotents.karoubiUniversal₂ is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], CategoryTheory.Equivalence.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))
-but is expected to have type
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], CategoryTheory.Equivalence.{max u1 u4, max (max u1 u3) u4, max (max (max u2 u1) u4) u3, max (max (max (max u4 u2) u3 u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.karoubi_universal₂ CategoryTheory.Idempotents.karoubiUniversal₂ₓ'. -/
 /-- The equivalence of categories `(C ⥤ D) ≌ (karoubi C ⥤ karoubi D)` when `D`
 is idempotent complete. -/
 @[simps]
@@ -303,12 +246,6 @@ noncomputable def karoubiUniversal₂ : C ⥤ D ≌ Karoubi C ⥤ Karoubi D :=
   (Equivalence.congrRight (toKaroubi D).asEquivalence).trans (karoubiUniversal₁ C D)
 #align category_theory.idempotents.karoubi_universal₂ CategoryTheory.Idempotents.karoubiUniversal₂
 
-/- warning: category_theory.idempotents.karoubi_universal₂_functor_eq -> CategoryTheory.Idempotents.karoubiUniversal₂_functor_eq is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], Eq.{succ (max (max u1 u4) (max (max u1 u3) u4) (max u3 u4 u1 u2) u3 u4 (max u1 u3) u2 u4)} (CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Equivalence.functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.karoubiUniversal₂.{u1, u2, u3, u4} C D _inst_1 _inst_2 _inst_4)) (CategoryTheory.Idempotents.functorExtension₂.{u1, u2, u3, u4} C D _inst_1 _inst_2)
-but is expected to have type
-  forall (C : Type.{u4}) (D : Type.{u3}) [_inst_1 : CategoryTheory.Category.{u2, u4} C] [_inst_2 : CategoryTheory.Category.{u1, u3} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u3, u1} D _inst_2], Eq.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1)} (CategoryTheory.Functor.{max u4 u1, max (max u4 u2) u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u4 u2, max u3 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Equivalence.functor.{max u4 u1, max (max u4 u2) u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, max u4 u2, max u3 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Idempotents.karoubiUniversal₂.{u4, u3, u2, u1} C D _inst_1 _inst_2 _inst_4)) (CategoryTheory.Idempotents.functorExtension₂.{u4, u3, u2, u1} C D _inst_1 _inst_2)
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.karoubi_universal₂_functor_eq CategoryTheory.Idempotents.karoubiUniversal₂_functor_eqₓ'. -/
 theorem karoubiUniversal₂_functor_eq : (karoubiUniversal₂ C D).Functor = functorExtension₂ C D :=
   rfl
 #align category_theory.idempotents.karoubi_universal₂_functor_eq CategoryTheory.Idempotents.karoubiUniversal₂_functor_eq
@@ -316,12 +253,6 @@ theorem karoubiUniversal₂_functor_eq : (karoubiUniversal₂ C D).Functor = fun
 noncomputable instance : IsEquivalence (functorExtension₂ C D) := by
   rw [← karoubi_universal₂_functor_eq]; infer_instance
 
-/- warning: category_theory.idempotents.functor_extension -> CategoryTheory.Idempotents.functorExtension is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2)
-but is expected to have type
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max (max (max u2 u1) u4) u3, max (max (max u2 u3 u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u3 u1, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) D _inst_2)
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension CategoryTheory.Idempotents.functorExtensionₓ'. -/
 /-- The extension of functors functor `(C ⥤ D) ⥤ (karoubi C ⥤ D)`
 when `D` is idempotent compltete. -/
 @[simps]
@@ -330,24 +261,12 @@ noncomputable def functorExtension : (C ⥤ D) ⥤ Karoubi C ⥤ D :=
     (whiskeringRight (Karoubi C) (Karoubi D) D).obj (toKaroubi_isEquivalence D).inverse
 #align category_theory.idempotents.functor_extension CategoryTheory.Idempotents.functorExtension
 
-/- warning: category_theory.idempotents.karoubi_universal -> CategoryTheory.Idempotents.karoubiUniversal is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], CategoryTheory.Equivalence.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2)
-but is expected to have type
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], CategoryTheory.Equivalence.{max u1 u4, max (max u1 u3) u4, max (max (max u2 u1) u4) u3, max (max (max u2 u3 u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u3 u1, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) D _inst_2)
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.karoubi_universal CategoryTheory.Idempotents.karoubiUniversalₓ'. -/
 /-- The equivalence `(C ⥤ D) ≌ (karoubi C ⥤ D)` when `D` is idempotent complete. -/
 @[simps]
 noncomputable def karoubiUniversal : C ⥤ D ≌ Karoubi C ⥤ D :=
   (karoubiUniversal₂ C D).trans (Equivalence.congrRight (toKaroubi D).asEquivalence.symm)
 #align category_theory.idempotents.karoubi_universal CategoryTheory.Idempotents.karoubiUniversal
 
-/- warning: category_theory.idempotents.karoubi_universal_functor_eq -> CategoryTheory.Idempotents.karoubiUniversal_functor_eq is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], Eq.{succ (max (max u1 u4) (max (max u1 u3) u4) (max u3 u4 u1 u2) u3 u4 (max u1 u3) u2)} (CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2)) (CategoryTheory.Equivalence.functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Idempotents.karoubiUniversal.{u1, u2, u3, u4} C D _inst_1 _inst_2 _inst_4)) (CategoryTheory.Idempotents.functorExtension.{u1, u2, u3, u4} C D _inst_1 _inst_2 _inst_4)
-but is expected to have type
-  forall (C : Type.{u4}) (D : Type.{u3}) [_inst_1 : CategoryTheory.Category.{u2, u4} C] [_inst_2 : CategoryTheory.Category.{u1, u3} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u3, u1} D _inst_2], Eq.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1)} (CategoryTheory.Functor.{max u4 u1, max (max u4 u2) u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, max u2 u4, u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u2, u1, max u4 u2, u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) D _inst_2)) (CategoryTheory.Equivalence.functor.{max u4 u1, max (max u4 u2) u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, max u2 u4, u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, max u4 u2, u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) D _inst_2) (CategoryTheory.Idempotents.karoubiUniversal.{u4, u3, u2, u1} C D _inst_1 _inst_2 _inst_4)) (CategoryTheory.Idempotents.functorExtension.{u4, u3, u2, u1} C D _inst_1 _inst_2 _inst_4)
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.karoubi_universal_functor_eq CategoryTheory.Idempotents.karoubiUniversal_functor_eqₓ'. -/
 theorem karoubiUniversal_functor_eq : (karoubiUniversal C D).Functor = functorExtension C D :=
   rfl
 #align category_theory.idempotents.karoubi_universal_functor_eq CategoryTheory.Idempotents.karoubiUniversal_functor_eq
@@ -365,9 +284,6 @@ noncomputable instance : IsEquivalence ((whiskeringLeft C (Karoubi C) D).obj (to
 
 variable {C D}
 
-/- warning: category_theory.idempotents.whiskering_left_obj_preimage_app -> CategoryTheory.Idempotents.whiskeringLeft_obj_preimage_app is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.whiskering_left_obj_preimage_app CategoryTheory.Idempotents.whiskeringLeft_obj_preimage_appₓ'. -/
 theorem whiskeringLeft_obj_preimage_app {F G : Karoubi C ⥤ D}
     (τ : toKaroubi _ ⋙ F ⟶ toKaroubi _ ⋙ G) (P : Karoubi C) :
     (((whiskeringLeft _ _ _).obj (toKaroubi _)).preimage τ).app P =
Diff
@@ -127,9 +127,7 @@ def functorExtension₁ : (C ⥤ Karoubi D) ⥤ Karoubi C ⥤ Karoubi D
     where
   obj := FunctorExtension₁.obj
   map F G := FunctorExtension₁.map
-  map_id' F := by
-    ext P
-    exact comp_p (F.map P.p)
+  map_id' F := by ext P; exact comp_p (F.map P.p)
   map_comp' F G H φ φ' := by
     ext P
     simp only [comp_f, functor_extension₁.map_app_f, nat_trans.comp_app, assoc]
@@ -247,9 +245,7 @@ Case conversion may be inaccurate. Consider using '#align category_theory.idempo
 theorem functorExtension₁_comp (F : C ⥤ Karoubi D) (G : D ⥤ Karoubi E) :
     (functorExtension₁ C E).obj (F ⋙ (functorExtension₁ D E).obj G) =
       (functorExtension₁ C D).obj F ⋙ (functorExtension₁ D E).obj G :=
-  Functor.ext (by tidy) fun X Y f => by
-    dsimp
-    simpa only [id_comp, comp_id]
+  Functor.ext (by tidy) fun X Y f => by dsimp; simpa only [id_comp, comp_id]
 #align category_theory.idempotents.functor_extension₁_comp CategoryTheory.Idempotents.functorExtension₁_comp
 
 /- warning: category_theory.idempotents.functor_extension₂ -> CategoryTheory.Idempotents.functorExtension₂ is a dubious translation:
@@ -317,10 +313,8 @@ theorem karoubiUniversal₂_functor_eq : (karoubiUniversal₂ C D).Functor = fun
   rfl
 #align category_theory.idempotents.karoubi_universal₂_functor_eq CategoryTheory.Idempotents.karoubiUniversal₂_functor_eq
 
-noncomputable instance : IsEquivalence (functorExtension₂ C D) :=
-  by
-  rw [← karoubi_universal₂_functor_eq]
-  infer_instance
+noncomputable instance : IsEquivalence (functorExtension₂ C D) := by
+  rw [← karoubi_universal₂_functor_eq]; infer_instance
 
 /- warning: category_theory.idempotents.functor_extension -> CategoryTheory.Idempotents.functorExtension is a dubious translation:
 lean 3 declaration is
@@ -358,10 +352,8 @@ theorem karoubiUniversal_functor_eq : (karoubiUniversal C D).Functor = functorEx
   rfl
 #align category_theory.idempotents.karoubi_universal_functor_eq CategoryTheory.Idempotents.karoubiUniversal_functor_eq
 
-noncomputable instance : IsEquivalence (functorExtension C D) :=
-  by
-  rw [← karoubi_universal_functor_eq]
-  infer_instance
+noncomputable instance : IsEquivalence (functorExtension C D) := by
+  rw [← karoubi_universal_functor_eq]; infer_instance
 
 noncomputable instance : IsEquivalence ((whiskeringLeft C (Karoubi C) D).obj (toKaroubi C)) :=
   IsEquivalence.cancelCompRight _
@@ -369,9 +361,7 @@ noncomputable instance : IsEquivalence ((whiskeringLeft C (Karoubi C) D).obj (to
     (IsEquivalence.ofEquivalence
       (@Equivalence.congrRight _ _ _ _ C _
         ((toKaroubi D).asEquivalence.trans (toKaroubi D).asEquivalence.symm)))
-    (by
-      change is_equivalence (karoubi_universal C D).inverse
-      infer_instance)
+    (by change is_equivalence (karoubi_universal C D).inverse; infer_instance)
 
 variable {C D}
 
Diff
@@ -46,10 +46,7 @@ namespace Idempotents
 variable {C D E : Type _} [Category C] [Category D] [Category E]
 
 /- warning: category_theory.idempotents.nat_trans_eq -> CategoryTheory.Idempotents.natTrans_eq is a dubious translation:
-lean 3 declaration is
-  forall {C : Type.{u1}} {D : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] {F : CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2} {G : CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2} (φ : Quiver.Hom.{succ (max (max u1 u3) u4), max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max (max u1 u3) u4, max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max (max u1 u3) u4, max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2))) F G) (P : CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1), Eq.{succ u4} (Quiver.Hom.{succ u4, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u2} D (CategoryTheory.Category.toCategoryStruct.{u4, u2} D _inst_2)) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F P) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G P)) (CategoryTheory.NatTrans.app.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F G φ P) (CategoryTheory.CategoryStruct.comp.{u4, u2} D (CategoryTheory.Category.toCategoryStruct.{u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F P) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P))) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G P) (CategoryTheory.Functor.map.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F P ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.decompId_i.{u1, u3} C _inst_1 P)) (CategoryTheory.CategoryStruct.comp.{u4, u2} D (CategoryTheory.Category.toCategoryStruct.{u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P))) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P))) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G P) (CategoryTheory.NatTrans.app.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F G φ ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P))) (CategoryTheory.Functor.map.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P)) P (CategoryTheory.Idempotents.Karoubi.decompId_p.{u1, u3} C _inst_1 P))))
-but is expected to have type
-  forall {C : Type.{u2}} {D : Type.{u1}} [_inst_1 : CategoryTheory.Category.{u4, u2} C] [_inst_2 : CategoryTheory.Category.{u3, u1} D] {F : CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2} {G : CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2} (φ : Quiver.Hom.{max (max (succ u2) (succ u4)) (succ u3), max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max (max u2 u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max (max u2 u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2))) F G) (P : CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1), Eq.{succ u3} (Quiver.Hom.{succ u3, u1} D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) P) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) P)) (CategoryTheory.NatTrans.app.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F G φ P) (CategoryTheory.CategoryStruct.comp.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) P) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)))) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) P) (Prefunctor.map.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) P (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P))) (CategoryTheory.Idempotents.Karoubi.decompId_i.{u2, u4} C _inst_1 P)) (CategoryTheory.CategoryStruct.comp.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)))) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)))) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) P) (CategoryTheory.NatTrans.app.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F G φ (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)))) (Prefunctor.map.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P))) P (CategoryTheory.Idempotents.Karoubi.decompId_p.{u2, u4} C _inst_1 P))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.nat_trans_eq CategoryTheory.Idempotents.natTrans_eqₓ'. -/
 /-- A natural transformation between functors `karoubi C ⥤ D` is determined
 by its value on objects coming from `C`. -/
@@ -145,10 +142,7 @@ def functorExtension₁ : (C ⥤ Karoubi D) ⥤ Karoubi C ⥤ Karoubi D
 #align category_theory.idempotents.functor_extension₁ CategoryTheory.Idempotents.functorExtension₁
 
 /- warning: category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi -> CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], Eq.{succ (max (max u1 u4) u3 u4 u1 u2 u4)} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max u3 u4 u1 u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max u1 u4, max (max u1 u3) u4, max u1 u4, max u3 u4 u1 u2 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u2, u3, u4} C D _inst_1 _inst_2) (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2 u4) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2 u4) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, max u2 u4, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1))) (CategoryTheory.Functor.id.{max u1 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)))
-but is expected to have type
-  forall (C : Type.{u4}) (D : Type.{u3}) [_inst_1 : CategoryTheory.Category.{u2, u4} C] [_inst_2 : CategoryTheory.Category.{u1, u3} D], Eq.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1)} (CategoryTheory.Functor.{max u4 u1, max u4 u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.comp.{max u4 u1, max (max u4 u2) u1, max u4 u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u4 u2, max u3 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₁.{u4, u3, u2, u1} C D _inst_1 _inst_2) (Prefunctor.obj.{max (succ u4) (succ u2), max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max u4 u2, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Functor.category.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)))) (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.category.{max (max u2 u4) u1, max u4 u1, max (max (max (max u2 u4) u1 u3) u2) u1, max (max (max u4 u1 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u4 u2, max (max (max u4 u3) u2) u1, max u4 u2, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Functor.category.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.category.{max (max u2 u4) u1, max u4 u1, max (max (max (max u2 u4) u1 u3) u2) u1, max (max (max u4 u1 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.whiskeringLeft.{u4, u2, max u2 u4, u2, max u1 u3, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u4, u2} C _inst_1))) (CategoryTheory.Functor.id.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubiₓ'. -/
 theorem functorExtension₁_comp_whiskeringLeft_toKaroubi :
     functorExtension₁ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) = 𝟭 _ :=
@@ -176,10 +170,7 @@ theorem functorExtension₁_comp_whiskeringLeft_toKaroubi :
 #align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi
 
 /- warning: category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso -> CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_iso is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Iso.{max (max u3 u4 u1 u2 u4) u1 u4, max (max u1 u4) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max u3 u4 u1 u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max u3 u4 u1 u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max u1 u4, max (max u1 u3) u4, max u1 u4, max u3 u4 u1 u2 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u2, u3, u4} C D _inst_1 _inst_2) (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2 u4) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2 u4) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, max u2 u4, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1))) (CategoryTheory.Functor.id.{max u1 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)))
-but is expected to have type
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Iso.{max (max (max u1 u2) u3) u4, max (max (max (max u1 u2) u3) u4) u1 u4} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max u1 u4, max (max u1 u3) u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u2, u3, u4} C D _inst_1 _inst_2) (Prefunctor.obj.{max (succ u1) (succ u3), max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max u1 u3, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3, max u1 u3} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u1 u3, max u1 u3} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)))) (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u3 u1) u4, max u1 u4, max (max (max (max u3 u1) u4 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u1 u3, max (max (max u1 u2) u3) u4, max u1 u3, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u3 u1) u4, max u1 u4, max (max (max (max u3 u1) u4 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u3 u1, u3, max u4 u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1))) (CategoryTheory.Functor.id.{max u1 u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_isoₓ'. -/
 /-- The natural isomorphism expressing that functors `karoubi C ⥤ karoubi D` obtained
 using `functor_extension₁` actually extends the original functors `C ⥤ karoubi D`. -/
@@ -190,10 +181,7 @@ def functorExtension₁_comp_whiskeringLeft_toKaroubi_iso :
 #align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_iso
 
 /- warning: category_theory.idempotents.karoubi_universal₁.counit_iso -> CategoryTheory.Idempotents.KaroubiUniversal₁.counitIso is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Iso.{max (max u3 u4 (max u1 u3) u2 u4) (max u1 u3) u4, max (max (max u1 u3) u4) u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{max (max u1 u3) u4, max (max u1 u3) u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max (max u1 u3) u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max (max u1 u3) u4, max u1 u4, max (max u1 u3) u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2 u4) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2 u4) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, max u2 u4, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u2, u3, u4} C D _inst_1 _inst_2)) (CategoryTheory.Functor.id.{max (max u1 u3) u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)))
-but is expected to have type
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Iso.{max (max (max u1 u2) u3) u4, max (max (max (max u1 u2) u3) u4) (max u1 u3) u4} (CategoryTheory.Functor.{max (max u1 u3) u4, max (max u1 u3) u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max (max u1 u3) u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max (max u1 u3) u4, max u1 u4, max (max u1 u3) u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (Prefunctor.obj.{max (succ u1) (succ u3), max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max u1 u3, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3, max u1 u3} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u1 u3, max u1 u3} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)))) (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u3 u1) u4, max u1 u4, max (max (max (max u3 u1) u4 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u1 u3, max (max (max u1 u2) u3) u4, max u1 u3, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u3 u1) u4, max u1 u4, max (max (max (max u3 u1) u4 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u3 u1, u3, max u4 u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u2, u3, u4} C D _inst_1 _inst_2)) (CategoryTheory.Functor.id.{max (max u1 u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.karoubi_universal₁.counit_iso CategoryTheory.Idempotents.KaroubiUniversal₁.counitIsoₓ'. -/
 /-- The counit isomorphism of the equivalence `(C ⥤ karoubi D) ≌ (karoubi C ⥤ karoubi D)`. -/
 @[simps]
@@ -254,10 +242,7 @@ def karoubiUniversal₁ : C ⥤ Karoubi D ≌ Karoubi C ⥤ Karoubi D
 #align category_theory.idempotents.karoubi_universal₁ CategoryTheory.Idempotents.karoubiUniversal₁
 
 /- warning: category_theory.idempotents.functor_extension₁_comp -> CategoryTheory.Idempotents.functorExtension₁_comp is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) (E : Type.{u3}) [_inst_1 : CategoryTheory.Category.{u4, u1} C] [_inst_2 : CategoryTheory.Category.{u5, u2} D] [_inst_3 : CategoryTheory.Category.{u6, u3} E] (F : CategoryTheory.Functor.{u4, u5, u1, max u2 u5} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2)) (G : CategoryTheory.Functor.{u5, u6, u2, max u3 u6} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)), Eq.{succ (max u4 u6 (max u1 u4) u3 u6)} (CategoryTheory.Functor.{u4, u6, max u1 u4, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.obj.{max u1 u6, max (max u1 u4) u6, max u4 u6 u1 u3 u6, max u4 u6 (max u1 u4) u3 u6} (CategoryTheory.Functor.{u4, u6, u1, max u3 u6} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.category.{u4, u6, u1, max u3 u6} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.{u4, u6, max u1 u4, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.category.{u4, u6, max u1 u4, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u3, u4, u6} C E _inst_1 _inst_3) (CategoryTheory.Functor.comp.{u4, u5, u6, u1, max u2 u5, max u3 u6} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3) F (CategoryTheory.Functor.obj.{max u2 u6, max (max u2 u5) u6, max u5 u6 u2 u3 u6, max u5 u6 (max u2 u5) u3 u6} (CategoryTheory.Functor.{u5, u6, u2, max u3 u6} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.category.{u5, u6, u2, max u3 u6} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.{u5, u6, max u2 u5, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.category.{u5, u6, max u2 u5, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Idempotents.functorExtension₁.{u2, u3, u5, u6} D E _inst_2 _inst_3) G))) (CategoryTheory.Functor.comp.{u4, u5, u6, max u1 u4, max u2 u5, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3) (CategoryTheory.Functor.obj.{max u1 u5, max (max u1 u4) u5, max u4 u5 u1 u2 u5, max u4 u5 (max u1 u4) u2 u5} (CategoryTheory.Functor.{u4, u5, u1, max u2 u5} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2)) (CategoryTheory.Functor.category.{u4, u5, u1, max u2 u5} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2)) (CategoryTheory.Functor.{u4, u5, max u1 u4, max u2 u5} (CategoryTheory.Idempotents.Karoubi.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2)) (CategoryTheory.Functor.category.{u4, u5, max u1 u4, max u2 u5} (CategoryTheory.Idempotents.Karoubi.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u2, u4, u5} C D _inst_1 _inst_2) F) (CategoryTheory.Functor.obj.{max u2 u6, max (max u2 u5) u6, max u5 u6 u2 u3 u6, max u5 u6 (max u2 u5) u3 u6} (CategoryTheory.Functor.{u5, u6, u2, max u3 u6} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.category.{u5, u6, u2, max u3 u6} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.{u5, u6, max u2 u5, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.category.{u5, u6, max u2 u5, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Idempotents.functorExtension₁.{u2, u3, u5, u6} D E _inst_2 _inst_3) G))
-but is expected to have type
-  forall (C : Type.{u4}) (D : Type.{u3}) (E : Type.{u1}) [_inst_1 : CategoryTheory.Category.{u6, u4} C] [_inst_2 : CategoryTheory.Category.{u5, u3} D] [_inst_3 : CategoryTheory.Category.{u2, u1} E] (F : CategoryTheory.Functor.{u6, u5, u4, max u5 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (G : CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)), Eq.{max (max (max (succ u4) (succ u1)) (succ u6)) (succ u2)} (CategoryTheory.Functor.{u6, u2, max u6 u4, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (Prefunctor.obj.{max (succ u4) (succ u2), max (max (succ u4) (succ u6)) (succ u2), max (max (max u4 u1) u6) u2, max (max (max u4 u1) u6) u2} (CategoryTheory.Functor.{u6, u2, u4, max u2 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u2, max (max (max u4 u1) u6) u2} (CategoryTheory.Functor.{u6, u2, u4, max u2 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Category.toCategoryStruct.{max u4 u2, max (max (max u4 u1) u6) u2} (CategoryTheory.Functor.{u6, u2, u4, max u2 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u6, u2, u4, max u1 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)))) (CategoryTheory.Functor.{u6, u2, max u6 u4, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.CategoryStruct.toQuiver.{max (max u4 u6) u2, max (max (max u4 u1) u6) u2} (CategoryTheory.Functor.{u6, u2, max u6 u4, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Category.toCategoryStruct.{max (max u4 u6) u2, max (max (max u4 u1) u6) u2} (CategoryTheory.Functor.{u6, u2, max u6 u4, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u6, u2, max u4 u6, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)))) (CategoryTheory.Functor.toPrefunctor.{max u4 u2, max (max u4 u6) u2, max (max (max u4 u1) u6) u2, max (max (max u4 u1) u6) u2} (CategoryTheory.Functor.{u6, u2, u4, max u2 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u6, u2, u4, max u1 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.{u6, u2, max u6 u4, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u6, u2, max u4 u6, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Idempotents.functorExtension₁.{u4, u1, u6, u2} C E _inst_1 _inst_3)) (CategoryTheory.Functor.comp.{u6, u5, u2, u4, max u3 u5, max u1 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3) F (Prefunctor.obj.{max (succ u3) (succ u2), max (max (succ u3) (succ u5)) (succ u2), max (max (max u3 u1) u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.CategoryStruct.toQuiver.{max u3 u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Category.toCategoryStruct.{max u3 u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, u3, max u1 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)))) (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.CategoryStruct.toQuiver.{max (max u3 u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Category.toCategoryStruct.{max (max u3 u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, max u3 u5, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)))) (CategoryTheory.Functor.toPrefunctor.{max u3 u2, max (max u3 u5) u2, max (max (max u3 u1) u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, u3, max u1 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, max u3 u5, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Idempotents.functorExtension₁.{u3, u1, u5, u2} D E _inst_2 _inst_3)) G))) (CategoryTheory.Functor.comp.{u6, u5, u2, max u4 u6, max u3 u5, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3) (Prefunctor.obj.{max (succ u4) (succ u5), max (max (succ u4) (succ u6)) (succ u5), max (max (max u4 u3) u6) u5, max (max (max u4 u3) u6) u5} (CategoryTheory.Functor.{u6, u5, u4, max u5 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u5, max (max (max u4 u3) u6) u5} (CategoryTheory.Functor.{u6, u5, u4, max u5 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max u4 u5, max (max (max u4 u3) u6) u5} (CategoryTheory.Functor.{u6, u5, u4, max u5 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Functor.category.{u6, u5, u4, max u3 u5} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)))) (CategoryTheory.Functor.{u6, u5, max u6 u4, max u5 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max (max u4 u6) u5, max (max (max u4 u3) u6) u5} (CategoryTheory.Functor.{u6, u5, max u6 u4, max u5 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max (max u4 u6) u5, max (max (max u4 u3) u6) u5} (CategoryTheory.Functor.{u6, u5, max u6 u4, max u5 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Functor.category.{u6, u5, max u4 u6, max u3 u5} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)))) (CategoryTheory.Functor.toPrefunctor.{max u4 u5, max (max u4 u6) u5, max (max (max u4 u3) u6) u5, max (max (max u4 u3) u6) u5} (CategoryTheory.Functor.{u6, u5, u4, max u5 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Functor.category.{u6, u5, u4, max u3 u5} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Functor.{u6, u5, max u6 u4, max u5 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Functor.category.{u6, u5, max u4 u6, max u3 u5} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₁.{u4, u3, u6, u5} C D _inst_1 _inst_2)) F) (Prefunctor.obj.{max (succ u3) (succ u2), max (max (succ u3) (succ u5)) (succ u2), max (max (max u3 u1) u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.CategoryStruct.toQuiver.{max u3 u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Category.toCategoryStruct.{max u3 u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, u3, max u1 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)))) (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.CategoryStruct.toQuiver.{max (max u3 u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Category.toCategoryStruct.{max (max u3 u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, max u3 u5, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)))) (CategoryTheory.Functor.toPrefunctor.{max u3 u2, max (max u3 u5) u2, max (max (max u3 u1) u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, u3, max u1 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, max u3 u5, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Idempotents.functorExtension₁.{u3, u1, u5, u2} D E _inst_2 _inst_3)) G))
+<too large>
 Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁_comp CategoryTheory.Idempotents.functorExtension₁_compₓ'. -/
 theorem functorExtension₁_comp (F : C ⥤ Karoubi D) (G : D ⥤ Karoubi E) :
     (functorExtension₁ C E).obj (F ⋙ (functorExtension₁ D E).obj G) =
@@ -280,10 +265,7 @@ def functorExtension₂ : (C ⥤ D) ⥤ Karoubi C ⥤ Karoubi D :=
 #align category_theory.idempotents.functor_extension₂ CategoryTheory.Idempotents.functorExtension₂
 
 /- warning: category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi -> CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubi is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], Eq.{succ (max (max u1 u4) (max u3 u4 u1 u2) u3 u4 u1 u2 u4)} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max u1 u4, max (max u1 u3) u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₂.{u1, u2, u3, u4} C D _inst_1 _inst_2) (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2 u4) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2 u4) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, max u2 u4, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1))) (CategoryTheory.Functor.obj.{max u2 u4, max (max u3 u4 u1 u2) u1 u4, max u2 u4, max (max u1 u4) (max u3 u4 u1 u2) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u4, u4, u2, max u2 u4} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u4, u4, u2, max u2 u4} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringRight.{u1, u3, u2, u4, max u2 u4, u4} C _inst_1 D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u2, u4} D _inst_2))
-but is expected to have type
-  forall (C : Type.{u4}) (D : Type.{u3}) [_inst_1 : CategoryTheory.Category.{u2, u4} C] [_inst_2 : CategoryTheory.Category.{u1, u3} D], Eq.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1)} (CategoryTheory.Functor.{max u4 u1, max u4 u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.comp.{max u4 u1, max (max u4 u2) u1, max u4 u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u4 u2, max u3 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₂.{u4, u3, u2, u1} C D _inst_1 _inst_2) (Prefunctor.obj.{max (succ u4) (succ u2), max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max u4 u2, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Functor.category.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)))) (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.category.{max (max u2 u4) u1, max u4 u1, max (max (max (max u2 u4) u1 u3) u2) u1, max (max (max u4 u1 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u4 u2, max (max (max u4 u3) u2) u1, max u4 u2, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Functor.category.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.category.{max (max u2 u4) u1, max u4 u1, max (max (max (max u2 u4) u1 u3) u2) u1, max (max (max u4 u1 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.whiskeringLeft.{u4, u2, max u2 u4, u2, max u1 u3, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u4, u2} C _inst_1))) (Prefunctor.obj.{max (succ u3) (succ u1), max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max u3 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u1, u1, u3, max u1 u3} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max u3 u1, max u3 u1} (CategoryTheory.Functor.{u1, u1, u3, max u1 u3} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max u3 u1, max u3 u1} (CategoryTheory.Functor.{u1, u1, u3, max u1 u3} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u1, u1, u3, max u1 u3} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)))) (CategoryTheory.Functor.{max u4 u1, max u4 u1, max (max (max u3 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{max u4 u1, max u4 u1, max (max (max u3 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{max u4 u1, max u4 u1, max (max (max u3 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.category.{max u4 u1, max u4 u1, max (max (max u4 u3) u2) u1, max (max (max u4 u1 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u3 u1, max (max (max u4 u3) u2) u1, max u3 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u1, u1, u3, max u1 u3} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u1, u1, u3, max u1 u3} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{max u4 u1, max u4 u1, max (max (max u3 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.category.{max u4 u1, max u4 u1, max (max (max u4 u3) u2) u1, max (max (max u4 u1 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.whiskeringRight.{u4, u2, u3, u1, max u1 u3, u1} C _inst_1 D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u3, u1} D _inst_2))
+<too large>
 Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubiₓ'. -/
 theorem functorExtension₂_comp_whiskeringLeft_toKaroubi :
     functorExtension₂ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) =
@@ -294,10 +276,7 @@ theorem functorExtension₂_comp_whiskeringLeft_toKaroubi :
 #align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubi
 
 /- warning: category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi_iso -> CategoryTheory.Idempotents.functorExtension₂CompWhiskeringLeftToKaroubiIso is a dubious translation:
-lean 3 declaration is
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Iso.{max (max u3 u4 u1 u2) u1 u4, max (max u1 u4) (max u3 u4 u1 u2) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max u1 u4, max (max u1 u3) u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₂.{u1, u2, u3, u4} C D _inst_1 _inst_2) (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2 u4) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2 u4) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, max u2 u4, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1))) (CategoryTheory.Functor.obj.{max u2 u4, max (max u3 u4 u1 u2) u1 u4, max u2 u4, max (max u1 u4) (max u3 u4 u1 u2) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u4, u4, u2, max u2 u4} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u4, u4, u2, max u2 u4} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringRight.{u1, u3, u2, u4, max u2 u4, u4} C _inst_1 D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u2, u4} D _inst_2))
-but is expected to have type
-  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Iso.{max (max (max u1 u2) u3) u4, max (max (max (max u1 u2) u3) u4) u1 u4} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max u1 u4, max (max u1 u3) u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₂.{u1, u2, u3, u4} C D _inst_1 _inst_2) (Prefunctor.obj.{max (succ u1) (succ u3), max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max u1 u3, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3, max u1 u3} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u1 u3, max u1 u3} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)))) (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u3 u1) u4, max u1 u4, max (max (max (max u3 u1) u4 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u1 u3, max (max (max u1 u2) u3) u4, max u1 u3, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u3 u1) u4, max u1 u4, max (max (max (max u3 u1) u4 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u3 u1, u3, max u4 u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1))) (Prefunctor.obj.{max (succ u2) (succ u4), max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max u2 u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max u2 u4, max u2 u4} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max u2 u4, max u2 u4} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u4, u4, u2, max u4 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)))) (CategoryTheory.Functor.{max u1 u4, max u1 u4, max (max (max u2 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max (max (max u2 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max (max (max u2 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u2 u4, max (max (max u1 u2) u3) u4, max u2 u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u4, u4, u2, max u4 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{max u1 u4, max u1 u4, max (max (max u2 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringRight.{u1, u3, u2, u4, max u4 u2, u4} C _inst_1 D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u2, u4} D _inst_2))
+<too large>
 Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₂CompWhiskeringLeftToKaroubiIsoₓ'. -/
 /-- The natural isomorphism expressing that functors `karoubi C ⥤ karoubi D` obtained
 using `functor_extension₂` actually extends the original functors `C ⥤ D`. -/
@@ -397,10 +376,7 @@ noncomputable instance : IsEquivalence ((whiskeringLeft C (Karoubi C) D).obj (to
 variable {C D}
 
 /- warning: category_theory.idempotents.whiskering_left_obj_preimage_app -> CategoryTheory.Idempotents.whiskeringLeft_obj_preimage_app is a dubious translation:
-lean 3 declaration is
-  forall {C : Type.{u1}} {D : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2] {F : CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2} {G : CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2} (τ : Quiver.Hom.{succ (max u1 u4), max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u4, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u4, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2))) (CategoryTheory.Functor.comp.{u3, u3, u4, u1, max u1 u3, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1) F) (CategoryTheory.Functor.comp.{u3, u3, u4, u1, max u1 u3, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1) G)) (P : CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1), Eq.{succ u4} (Quiver.Hom.{succ u4, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u2} D (CategoryTheory.Category.toCategoryStruct.{u4, u2} D _inst_2)) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F P) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G P)) (CategoryTheory.NatTrans.app.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F G (CategoryTheory.Functor.preimage.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) F G (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2) u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2)) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2)) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Equivalence.fullOfEquivalence.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2) u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2)) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2)) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Idempotents.Obj.CategoryTheory.isEquivalence.{u1, u2, u3, u4} C D _inst_1 _inst_2 _inst_4)) τ) P) (CategoryTheory.CategoryStruct.comp.{u4, u2} D (CategoryTheory.Category.toCategoryStruct.{u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F P) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P))) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G P) (CategoryTheory.Functor.map.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F P ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.decompId_i.{u1, u3} C _inst_1 P)) (CategoryTheory.CategoryStruct.comp.{u4, u2} D (CategoryTheory.Category.toCategoryStruct.{u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P))) (CategoryTheory.Functor.obj.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Functor.comp.{u3, u3, u4, u1, max u1 u3, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1) G) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P)) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G P) (CategoryTheory.NatTrans.app.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Functor.comp.{u3, u3, u4, u1, max u1 u3, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1) F) (CategoryTheory.Functor.comp.{u3, u3, u4, u1, max u1 u3, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1) G) τ (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P)) (CategoryTheory.Functor.map.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G (CategoryTheory.Functor.obj.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P)) P (CategoryTheory.Idempotents.Karoubi.decompId_p.{u1, u3} C _inst_1 P))))
-but is expected to have type
-  forall {C : Type.{u2}} {D : Type.{u1}} [_inst_1 : CategoryTheory.Category.{u4, u2} C] [_inst_2 : CategoryTheory.Category.{u3, u1} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u1, u3} D _inst_2] {F : CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2} {G : CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2} (τ : Quiver.Hom.{max (succ u2) (succ u3), max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u2 u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u2 u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2))) (CategoryTheory.Functor.comp.{u4, u4, u3, u2, max u4 u2, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1) F) (CategoryTheory.Functor.comp.{u4, u4, u3, u2, max u2 u4, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1) G)) (P : CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1), Eq.{succ u3} (Quiver.Hom.{succ u3, u1} D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) P) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) P)) (CategoryTheory.NatTrans.app.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F G (CategoryTheory.Functor.preimage.{max (max u3 u4) u2, max u3 u2, max (max (max u3 u1) u4) u2, max (max (max u3 u1) u4) u2} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2) F G (Prefunctor.obj.{max (succ u4) (succ u2), max (max (max (max (succ u3) (succ u1)) (succ u4)) (succ (max u4 u2))) (succ u2), max u4 u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Functor.category.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)))) (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max (max u3 u1) u4) u4 u2) u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max (max (max (max u3 u1) u4) u4 u2) u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.Functor.category.{max (max u4 u2) u3, max u2 u3, max (max (max (max u4 u2) u1) u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)))) (CategoryTheory.Functor.toPrefunctor.{max u4 u2, max (max (max (max u3 u1) u4) u4 u2) u2, max u4 u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Functor.category.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.Functor.category.{max (max u4 u2) u3, max u2 u3, max (max (max (max u4 u2) u1) u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.whiskeringLeft.{u2, u4, max u4 u2, u4, u1, u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Equivalence.fullOfEquivalence.{max (max u2 u4) u3, max u2 u3, max (max (max u2 u1) u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2) (Prefunctor.obj.{max (succ u4) (succ u2), max (max (max (max (succ u3) (succ u1)) (succ u4)) (succ (max u4 u2))) (succ u2), max u4 u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Functor.category.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)))) (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max (max u3 u1) u4) u4 u2) u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max (max (max (max u3 u1) u4) u4 u2) u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.Functor.category.{max (max u4 u2) u3, max u2 u3, max (max (max (max u4 u2) u1) u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)))) (CategoryTheory.Functor.toPrefunctor.{max u4 u2, max (max (max (max u3 u1) u4) u4 u2) u2, max u4 u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Functor.category.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.Functor.category.{max (max u4 u2) u3, max u2 u3, max (max (max (max u4 u2) u1) u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.whiskeringLeft.{u2, u4, max u4 u2, u4, u1, u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Idempotents.instIsEquivalenceFunctorKaroubiInstCategoryKaroubiCategoryFunctorCategoryObjFunctorToQuiverToCategoryStructCategoryFunctorToQuiverToCategoryStructCategoryToPrefunctorWhiskeringLeftToKaroubi.{u2, u1, u4, u3} C D _inst_1 _inst_2 _inst_4)) τ) P) (CategoryTheory.CategoryStruct.comp.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) P) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)))) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) P) (Prefunctor.map.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) P (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P))) (CategoryTheory.Idempotents.Karoubi.decompId_i.{u2, u4} C _inst_1 P)) (CategoryTheory.CategoryStruct.comp.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)))) (Prefunctor.obj.{succ u4, succ u3, u2, u1} C (CategoryTheory.CategoryStruct.toQuiver.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, u2, u1} C _inst_1 D _inst_2 (CategoryTheory.Functor.comp.{u4, u4, u3, u2, max u2 u4, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1) G)) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) P) (CategoryTheory.NatTrans.app.{u4, u3, u2, u1} C _inst_1 D _inst_2 (CategoryTheory.Functor.comp.{u4, u4, u3, u2, max u4 u2, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1) F) (CategoryTheory.Functor.comp.{u4, u4, u3, u2, max u2 u4, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1) G) τ (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (Prefunctor.map.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) (Prefunctor.obj.{succ u4, succ u4, u2, max u2 u4} C (CategoryTheory.CategoryStruct.toQuiver.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1)) (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u2, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) P (CategoryTheory.Idempotents.Karoubi.decompId_p.{u2, u4} C _inst_1 P))))
+<too large>
 Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.whiskering_left_obj_preimage_app CategoryTheory.Idempotents.whiskeringLeft_obj_preimage_appₓ'. -/
 theorem whiskeringLeft_obj_preimage_app {F G : Karoubi C ⥤ D}
     (τ : toKaroubi _ ⋙ F ⟶ toKaroubi _ ⋙ G) (P : Karoubi C) :
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Joël Riou
 
 ! This file was ported from Lean 3 source module category_theory.idempotents.functor_extension
-! leanprover-community/mathlib commit 5f68029a863bdf76029fa0f7a519e6163c14152e
+! leanprover-community/mathlib commit 19cb3751e5e9b3d97adb51023949c50c13b5fdfd
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -13,6 +13,9 @@ import Mathbin.CategoryTheory.Idempotents.Karoubi
 /-!
 # Extension of functors to the idempotent completion
 
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
 In this file, we construct an extension `functor_extension₁`
 of functors `C ⥤ karoubi D` to functors `karoubi C ⥤ karoubi D`. This results in an
 equivalence `karoubi_universal₁ C D : (C ⥤ karoubi D) ≌ (karoubi C ⥤ karoubi D)`.
Diff
@@ -42,10 +42,16 @@ namespace Idempotents
 
 variable {C D E : Type _} [Category C] [Category D] [Category E]
 
+/- warning: category_theory.idempotents.nat_trans_eq -> CategoryTheory.Idempotents.natTrans_eq is a dubious translation:
+lean 3 declaration is
+  forall {C : Type.{u1}} {D : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] {F : CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2} {G : CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2} (φ : Quiver.Hom.{succ (max (max u1 u3) u4), max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max (max u1 u3) u4, max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max (max u1 u3) u4, max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2))) F G) (P : CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1), Eq.{succ u4} (Quiver.Hom.{succ u4, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u2} D (CategoryTheory.Category.toCategoryStruct.{u4, u2} D _inst_2)) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F P) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G P)) (CategoryTheory.NatTrans.app.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F G φ P) (CategoryTheory.CategoryStruct.comp.{u4, u2} D (CategoryTheory.Category.toCategoryStruct.{u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F P) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P))) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G P) (CategoryTheory.Functor.map.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F P ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.decompId_i.{u1, u3} C _inst_1 P)) (CategoryTheory.CategoryStruct.comp.{u4, u2} D (CategoryTheory.Category.toCategoryStruct.{u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P))) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P))) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G P) (CategoryTheory.NatTrans.app.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F G φ ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P))) (CategoryTheory.Functor.map.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P)) P (CategoryTheory.Idempotents.Karoubi.decompId_p.{u1, u3} C _inst_1 P))))
+but is expected to have type
+  forall {C : Type.{u2}} {D : Type.{u1}} [_inst_1 : CategoryTheory.Category.{u4, u2} C] [_inst_2 : CategoryTheory.Category.{u3, u1} D] {F : CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2} {G : CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2} (φ : Quiver.Hom.{max (max (succ u2) (succ u4)) (succ u3), max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max (max u2 u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max (max u2 u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2))) F G) (P : CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1), Eq.{succ u3} (Quiver.Hom.{succ u3, u1} D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) P) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) P)) (CategoryTheory.NatTrans.app.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F G φ P) (CategoryTheory.CategoryStruct.comp.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) P) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)))) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) P) (Prefunctor.map.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) P (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P))) (CategoryTheory.Idempotents.Karoubi.decompId_i.{u2, u4} C _inst_1 P)) (CategoryTheory.CategoryStruct.comp.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)))) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)))) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) P) (CategoryTheory.NatTrans.app.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F G φ (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)))) (Prefunctor.map.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P))) P (CategoryTheory.Idempotents.Karoubi.decompId_p.{u2, u4} C _inst_1 P))))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.nat_trans_eq CategoryTheory.Idempotents.natTrans_eqₓ'. -/
 /-- A natural transformation between functors `karoubi C ⥤ D` is determined
 by its value on objects coming from `C`. -/
-theorem nat_trans_eq {F G : Karoubi C ⥤ D} (φ : F ⟶ G) (P : Karoubi C) :
-    φ.app P = F.map (decompIdI P) ≫ φ.app P.pt ≫ G.map (decompIdP P) :=
+theorem natTrans_eq {F G : Karoubi C ⥤ D} (φ : F ⟶ G) (P : Karoubi C) :
+    φ.app P = F.map (decompId_i P) ≫ φ.app P.pt ≫ G.map (decompId_p P) :=
   by
   rw [← φ.naturality, ← assoc, ← F.map_comp]
   conv =>
@@ -53,10 +59,16 @@ theorem nat_trans_eq {F G : Karoubi C ⥤ D} (φ : F ⟶ G) (P : Karoubi C) :
     rw [← id_comp (φ.app P), ← F.map_id]
   congr
   apply decomp_id
-#align category_theory.idempotents.nat_trans_eq CategoryTheory.Idempotents.nat_trans_eq
+#align category_theory.idempotents.nat_trans_eq CategoryTheory.Idempotents.natTrans_eq
 
 namespace FunctorExtension₁
 
+/- warning: category_theory.idempotents.functor_extension₁.obj -> CategoryTheory.Idempotents.FunctorExtension₁.obj is a dubious translation:
+lean 3 declaration is
+  forall {C : Type.{u1}} {D : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) -> (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))
+but is expected to have type
+  forall {C : Type.{u1}} {D : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) -> (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁.obj CategoryTheory.Idempotents.FunctorExtension₁.objₓ'. -/
 /-- The canonical extension of a functor `C ⥤ karoubi D` to a functor
 `karoubi C ⥤ karoubi D` -/
 @[simps]
@@ -67,6 +79,12 @@ def obj (F : C ⥤ Karoubi D) : Karoubi C ⥤ Karoubi D
   map P Q f := ⟨(F.map f.f).f, by simpa only [F.map_comp, hom_ext] using F.congr_map f.comm⟩
 #align category_theory.idempotents.functor_extension₁.obj CategoryTheory.Idempotents.FunctorExtension₁.obj
 
+/- warning: category_theory.idempotents.functor_extension₁.map -> CategoryTheory.Idempotents.FunctorExtension₁.map is a dubious translation:
+lean 3 declaration is
+  forall {C : Type.{u1}} {D : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] {F : CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)} {G : CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)}, (Quiver.Hom.{succ (max u1 u4), max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max u1 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)))) F G) -> (Quiver.Hom.{succ (max (max u1 u3) u4), max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max (max u1 u3) u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max (max u1 u3) u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)))) (CategoryTheory.Idempotents.FunctorExtension₁.obj.{u1, u2, u3, u4} C D _inst_1 _inst_2 F) (CategoryTheory.Idempotents.FunctorExtension₁.obj.{u1, u2, u3, u4} C D _inst_1 _inst_2 G))
+but is expected to have type
+  forall {C : Type.{u1}} {D : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] {F : CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)} {G : CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)}, (Quiver.Hom.{max (succ u1) (succ u4), max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max u1 u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)))) F G) -> (Quiver.Hom.{max (max (succ u1) (succ u3)) (succ u4), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max (max u1 u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max (max u1 u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)))) (CategoryTheory.Idempotents.FunctorExtension₁.obj.{u1, u2, u3, u4} C D _inst_1 _inst_2 F) (CategoryTheory.Idempotents.FunctorExtension₁.obj.{u1, u2, u3, u4} C D _inst_1 _inst_2 G))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁.map CategoryTheory.Idempotents.FunctorExtension₁.mapₓ'. -/
 /-- Extension of a natural transformation `φ` between functors
 `C ⥤ karoubi D` to a natural transformation between the
 extension of these functors to `karoubi C ⥤ karoubi D` -/
@@ -97,6 +115,12 @@ end FunctorExtension₁
 
 variable (C D E)
 
+/- warning: category_theory.idempotents.functor_extension₁ -> CategoryTheory.Idempotents.functorExtension₁ is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2 u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))
+but is expected to have type
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max (max (max (max u4 u2) u1) u4) u3, max (max (max (max u4 u2) u3 u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁ CategoryTheory.Idempotents.functorExtension₁ₓ'. -/
 /-- The canonical functor `(C ⥤ karoubi D) ⥤ (karoubi C ⥤ karoubi D)` -/
 @[simps]
 def functorExtension₁ : (C ⥤ Karoubi D) ⥤ Karoubi C ⥤ Karoubi D
@@ -117,6 +141,12 @@ def functorExtension₁ : (C ⥤ Karoubi D) ⥤ Karoubi C ⥤ Karoubi D
     simp only [assoc]
 #align category_theory.idempotents.functor_extension₁ CategoryTheory.Idempotents.functorExtension₁
 
+/- warning: category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi -> CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], Eq.{succ (max (max u1 u4) u3 u4 u1 u2 u4)} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max u3 u4 u1 u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max u1 u4, max (max u1 u3) u4, max u1 u4, max u3 u4 u1 u2 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u2, u3, u4} C D _inst_1 _inst_2) (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2 u4) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2 u4) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, max u2 u4, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1))) (CategoryTheory.Functor.id.{max u1 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)))
+but is expected to have type
+  forall (C : Type.{u4}) (D : Type.{u3}) [_inst_1 : CategoryTheory.Category.{u2, u4} C] [_inst_2 : CategoryTheory.Category.{u1, u3} D], Eq.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1)} (CategoryTheory.Functor.{max u4 u1, max u4 u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.comp.{max u4 u1, max (max u4 u2) u1, max u4 u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u4 u2, max u3 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₁.{u4, u3, u2, u1} C D _inst_1 _inst_2) (Prefunctor.obj.{max (succ u4) (succ u2), max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max u4 u2, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Functor.category.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)))) (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.category.{max (max u2 u4) u1, max u4 u1, max (max (max (max u2 u4) u1 u3) u2) u1, max (max (max u4 u1 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u4 u2, max (max (max u4 u3) u2) u1, max u4 u2, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Functor.category.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.category.{max (max u2 u4) u1, max u4 u1, max (max (max (max u2 u4) u1 u3) u2) u1, max (max (max u4 u1 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.whiskeringLeft.{u4, u2, max u2 u4, u2, max u1 u3, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u4, u2} C _inst_1))) (CategoryTheory.Functor.id.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubiₓ'. -/
 theorem functorExtension₁_comp_whiskeringLeft_toKaroubi :
     functorExtension₁ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) = 𝟭 _ :=
   by
@@ -142,14 +172,26 @@ theorem functorExtension₁_comp_whiskeringLeft_toKaroubi :
       comp_p, functor_extension₁.obj_obj_p, to_karoubi_obj_p, F.map_id X]
 #align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi
 
+/- warning: category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso -> CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_iso is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Iso.{max (max u3 u4 u1 u2 u4) u1 u4, max (max u1 u4) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max u3 u4 u1 u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max u3 u4 u1 u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max u1 u4, max (max u1 u3) u4, max u1 u4, max u3 u4 u1 u2 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u2, u3, u4} C D _inst_1 _inst_2) (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2 u4) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2 u4) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, max u2 u4, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1))) (CategoryTheory.Functor.id.{max u1 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)))
+but is expected to have type
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Iso.{max (max (max u1 u2) u3) u4, max (max (max (max u1 u2) u3) u4) u1 u4} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max u1 u4, max (max u1 u3) u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u2, u3, u4} C D _inst_1 _inst_2) (Prefunctor.obj.{max (succ u1) (succ u3), max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max u1 u3, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3, max u1 u3} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u1 u3, max u1 u3} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)))) (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u3 u1) u4, max u1 u4, max (max (max (max u3 u1) u4 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u1 u3, max (max (max u1 u2) u3) u4, max u1 u3, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u3 u1) u4, max u1 u4, max (max (max (max u3 u1) u4 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u3 u1, u3, max u4 u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1))) (CategoryTheory.Functor.id.{max u1 u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_isoₓ'. -/
 /-- The natural isomorphism expressing that functors `karoubi C ⥤ karoubi D` obtained
 using `functor_extension₁` actually extends the original functors `C ⥤ karoubi D`. -/
 @[simps]
-def functorExtension₁CompWhiskeringLeftToKaroubiIso :
+def functorExtension₁_comp_whiskeringLeft_toKaroubi_iso :
     functorExtension₁ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) ≅ 𝟭 _ :=
   eqToIso (functorExtension₁_comp_whiskeringLeft_toKaroubi C D)
-#align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₁CompWhiskeringLeftToKaroubiIso
-
+#align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_iso
+
+/- warning: category_theory.idempotents.karoubi_universal₁.counit_iso -> CategoryTheory.Idempotents.KaroubiUniversal₁.counitIso is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Iso.{max (max u3 u4 (max u1 u3) u2 u4) (max u1 u3) u4, max (max (max u1 u3) u4) u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{max (max u1 u3) u4, max (max u1 u3) u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max (max u1 u3) u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max (max u1 u3) u4, max u1 u4, max (max u1 u3) u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2 u4) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2 u4) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, max u2 u4, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u2, u3, u4} C D _inst_1 _inst_2)) (CategoryTheory.Functor.id.{max (max u1 u3) u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)))
+but is expected to have type
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Iso.{max (max (max u1 u2) u3) u4, max (max (max (max u1 u2) u3) u4) (max u1 u3) u4} (CategoryTheory.Functor.{max (max u1 u3) u4, max (max u1 u3) u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max (max u1 u3) u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max (max u1 u3) u4, max u1 u4, max (max u1 u3) u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (Prefunctor.obj.{max (succ u1) (succ u3), max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max u1 u3, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3, max u1 u3} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u1 u3, max u1 u3} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)))) (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u3 u1) u4, max u1 u4, max (max (max (max u3 u1) u4 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u1 u3, max (max (max u1 u2) u3) u4, max u1 u3, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u3 u1) u4, max u1 u4, max (max (max (max u3 u1) u4 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u3 u1, u3, max u4 u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u2, u3, u4} C D _inst_1 _inst_2)) (CategoryTheory.Functor.id.{max (max u1 u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.karoubi_universal₁.counit_iso CategoryTheory.Idempotents.KaroubiUniversal₁.counitIsoₓ'. -/
 /-- The counit isomorphism of the equivalence `(C ⥤ karoubi D) ≌ (karoubi C ⥤ karoubi D)`. -/
 @[simps]
 def KaroubiUniversal₁.counitIso :
@@ -158,7 +200,7 @@ def KaroubiUniversal₁.counitIso :
     (fun G =>
       { Hom :=
           { app := fun P =>
-              { f := (G.map (decompIdP P)).f
+              { f := (G.map (decompId_p P)).f
                 comm := by
                   simpa only [hom_ext, G.map_comp, G.map_id] using
                     G.congr_map
@@ -167,7 +209,7 @@ def KaroubiUniversal₁.counitIso :
               simpa only [hom_ext, G.map_comp] using (G.congr_map (decomp_id_p_naturality f)).symm }
         inv :=
           { app := fun P =>
-              { f := (G.map (decompIdI P)).f
+              { f := (G.map (decompId_i P)).f
                 comm := by
                   simpa only [hom_ext, G.map_comp, G.map_id] using
                     G.congr_map
@@ -187,13 +229,19 @@ def KaroubiUniversal₁.counitIso :
       whisker_left_app, assoc, P.decomp_p, G₁.map_comp]
 #align category_theory.idempotents.karoubi_universal₁.counit_iso CategoryTheory.Idempotents.KaroubiUniversal₁.counitIso
 
+/- warning: category_theory.idempotents.karoubi_universal₁ -> CategoryTheory.Idempotents.karoubiUniversal₁ is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Equivalence.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2 u4, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))
+but is expected to have type
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Equivalence.{max u1 u4, max (max u1 u3) u4, max (max (max (max u4 u2) u1) u4) u3, max (max (max (max u4 u2) u3 u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.karoubi_universal₁ CategoryTheory.Idempotents.karoubiUniversal₁ₓ'. -/
 /-- The equivalence of categories `(C ⥤ karoubi D) ≌ (karoubi C ⥤ karoubi D)`. -/
 @[simps]
 def karoubiUniversal₁ : C ⥤ Karoubi D ≌ Karoubi C ⥤ Karoubi D
     where
   Functor := functorExtension₁ C D
   inverse := (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C)
-  unitIso := (functorExtension₁CompWhiskeringLeftToKaroubiIso C D).symm
+  unitIso := (functorExtension₁_comp_whiskeringLeft_toKaroubi_iso C D).symm
   counitIso := KaroubiUniversal₁.counitIso C D
   functor_unitIso_comp' F := by
     ext P
@@ -202,6 +250,12 @@ def karoubiUniversal₁ : C ⥤ Karoubi D ≌ Karoubi C ⥤ Karoubi D
       comp_p] using F.congr_map P.idem
 #align category_theory.idempotents.karoubi_universal₁ CategoryTheory.Idempotents.karoubiUniversal₁
 
+/- warning: category_theory.idempotents.functor_extension₁_comp -> CategoryTheory.Idempotents.functorExtension₁_comp is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) (E : Type.{u3}) [_inst_1 : CategoryTheory.Category.{u4, u1} C] [_inst_2 : CategoryTheory.Category.{u5, u2} D] [_inst_3 : CategoryTheory.Category.{u6, u3} E] (F : CategoryTheory.Functor.{u4, u5, u1, max u2 u5} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2)) (G : CategoryTheory.Functor.{u5, u6, u2, max u3 u6} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)), Eq.{succ (max u4 u6 (max u1 u4) u3 u6)} (CategoryTheory.Functor.{u4, u6, max u1 u4, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.obj.{max u1 u6, max (max u1 u4) u6, max u4 u6 u1 u3 u6, max u4 u6 (max u1 u4) u3 u6} (CategoryTheory.Functor.{u4, u6, u1, max u3 u6} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.category.{u4, u6, u1, max u3 u6} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.{u4, u6, max u1 u4, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.category.{u4, u6, max u1 u4, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u3, u4, u6} C E _inst_1 _inst_3) (CategoryTheory.Functor.comp.{u4, u5, u6, u1, max u2 u5, max u3 u6} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3) F (CategoryTheory.Functor.obj.{max u2 u6, max (max u2 u5) u6, max u5 u6 u2 u3 u6, max u5 u6 (max u2 u5) u3 u6} (CategoryTheory.Functor.{u5, u6, u2, max u3 u6} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.category.{u5, u6, u2, max u3 u6} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.{u5, u6, max u2 u5, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.category.{u5, u6, max u2 u5, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Idempotents.functorExtension₁.{u2, u3, u5, u6} D E _inst_2 _inst_3) G))) (CategoryTheory.Functor.comp.{u4, u5, u6, max u1 u4, max u2 u5, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3) (CategoryTheory.Functor.obj.{max u1 u5, max (max u1 u4) u5, max u4 u5 u1 u2 u5, max u4 u5 (max u1 u4) u2 u5} (CategoryTheory.Functor.{u4, u5, u1, max u2 u5} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2)) (CategoryTheory.Functor.category.{u4, u5, u1, max u2 u5} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2)) (CategoryTheory.Functor.{u4, u5, max u1 u4, max u2 u5} (CategoryTheory.Idempotents.Karoubi.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2)) (CategoryTheory.Functor.category.{u4, u5, max u1 u4, max u2 u5} (CategoryTheory.Idempotents.Karoubi.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₁.{u1, u2, u4, u5} C D _inst_1 _inst_2) F) (CategoryTheory.Functor.obj.{max u2 u6, max (max u2 u5) u6, max u5 u6 u2 u3 u6, max u5 u6 (max u2 u5) u3 u6} (CategoryTheory.Functor.{u5, u6, u2, max u3 u6} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.category.{u5, u6, u2, max u3 u6} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.{u5, u6, max u2 u5, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Functor.category.{u5, u6, max u2 u5, max u3 u6} (CategoryTheory.Idempotents.Karoubi.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u3, u6} E _inst_3) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u3, u6} E _inst_3)) (CategoryTheory.Idempotents.functorExtension₁.{u2, u3, u5, u6} D E _inst_2 _inst_3) G))
+but is expected to have type
+  forall (C : Type.{u4}) (D : Type.{u3}) (E : Type.{u1}) [_inst_1 : CategoryTheory.Category.{u6, u4} C] [_inst_2 : CategoryTheory.Category.{u5, u3} D] [_inst_3 : CategoryTheory.Category.{u2, u1} E] (F : CategoryTheory.Functor.{u6, u5, u4, max u5 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (G : CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)), Eq.{max (max (max (succ u4) (succ u1)) (succ u6)) (succ u2)} (CategoryTheory.Functor.{u6, u2, max u6 u4, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (Prefunctor.obj.{max (succ u4) (succ u2), max (max (succ u4) (succ u6)) (succ u2), max (max (max u4 u1) u6) u2, max (max (max u4 u1) u6) u2} (CategoryTheory.Functor.{u6, u2, u4, max u2 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u2, max (max (max u4 u1) u6) u2} (CategoryTheory.Functor.{u6, u2, u4, max u2 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Category.toCategoryStruct.{max u4 u2, max (max (max u4 u1) u6) u2} (CategoryTheory.Functor.{u6, u2, u4, max u2 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u6, u2, u4, max u1 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)))) (CategoryTheory.Functor.{u6, u2, max u6 u4, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.CategoryStruct.toQuiver.{max (max u4 u6) u2, max (max (max u4 u1) u6) u2} (CategoryTheory.Functor.{u6, u2, max u6 u4, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Category.toCategoryStruct.{max (max u4 u6) u2, max (max (max u4 u1) u6) u2} (CategoryTheory.Functor.{u6, u2, max u6 u4, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u6, u2, max u4 u6, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)))) (CategoryTheory.Functor.toPrefunctor.{max u4 u2, max (max u4 u6) u2, max (max (max u4 u1) u6) u2, max (max (max u4 u1) u6) u2} (CategoryTheory.Functor.{u6, u2, u4, max u2 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u6, u2, u4, max u1 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.{u6, u2, max u6 u4, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u6, u2, max u4 u6, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Idempotents.functorExtension₁.{u4, u1, u6, u2} C E _inst_1 _inst_3)) (CategoryTheory.Functor.comp.{u6, u5, u2, u4, max u3 u5, max u1 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3) F (Prefunctor.obj.{max (succ u3) (succ u2), max (max (succ u3) (succ u5)) (succ u2), max (max (max u3 u1) u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.CategoryStruct.toQuiver.{max u3 u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Category.toCategoryStruct.{max u3 u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, u3, max u1 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)))) (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.CategoryStruct.toQuiver.{max (max u3 u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Category.toCategoryStruct.{max (max u3 u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, max u3 u5, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)))) (CategoryTheory.Functor.toPrefunctor.{max u3 u2, max (max u3 u5) u2, max (max (max u3 u1) u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, u3, max u1 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, max u3 u5, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Idempotents.functorExtension₁.{u3, u1, u5, u2} D E _inst_2 _inst_3)) G))) (CategoryTheory.Functor.comp.{u6, u5, u2, max u4 u6, max u3 u5, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3) (Prefunctor.obj.{max (succ u4) (succ u5), max (max (succ u4) (succ u6)) (succ u5), max (max (max u4 u3) u6) u5, max (max (max u4 u3) u6) u5} (CategoryTheory.Functor.{u6, u5, u4, max u5 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u5, max (max (max u4 u3) u6) u5} (CategoryTheory.Functor.{u6, u5, u4, max u5 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max u4 u5, max (max (max u4 u3) u6) u5} (CategoryTheory.Functor.{u6, u5, u4, max u5 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Functor.category.{u6, u5, u4, max u3 u5} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)))) (CategoryTheory.Functor.{u6, u5, max u6 u4, max u5 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max (max u4 u6) u5, max (max (max u4 u3) u6) u5} (CategoryTheory.Functor.{u6, u5, max u6 u4, max u5 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max (max u4 u6) u5, max (max (max u4 u3) u6) u5} (CategoryTheory.Functor.{u6, u5, max u6 u4, max u5 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Functor.category.{u6, u5, max u4 u6, max u3 u5} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)))) (CategoryTheory.Functor.toPrefunctor.{max u4 u5, max (max u4 u6) u5, max (max (max u4 u3) u6) u5, max (max (max u4 u3) u6) u5} (CategoryTheory.Functor.{u6, u5, u4, max u5 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Functor.category.{u6, u5, u4, max u3 u5} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Functor.{u6, u5, max u6 u4, max u5 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Functor.category.{u6, u5, max u4 u6, max u3 u5} (CategoryTheory.Idempotents.Karoubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u6} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₁.{u4, u3, u6, u5} C D _inst_1 _inst_2)) F) (Prefunctor.obj.{max (succ u3) (succ u2), max (max (succ u3) (succ u5)) (succ u2), max (max (max u3 u1) u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.CategoryStruct.toQuiver.{max u3 u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Category.toCategoryStruct.{max u3 u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, u3, max u1 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)))) (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.CategoryStruct.toQuiver.{max (max u3 u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Category.toCategoryStruct.{max (max u3 u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, max u3 u5, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)))) (CategoryTheory.Functor.toPrefunctor.{max u3 u2, max (max u3 u5) u2, max (max (max u3 u1) u5) u2, max (max (max u3 u1) u5) u2} (CategoryTheory.Functor.{u5, u2, u3, max u2 u1} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, u3, max u1 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.{u5, u2, max u5 u3, max u2 u1} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Functor.category.{u5, u2, max u3 u5, max u1 u2} (CategoryTheory.Idempotents.Karoubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u5} D _inst_2) (CategoryTheory.Idempotents.Karoubi.{u1, u2} E _inst_3) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u2} E _inst_3)) (CategoryTheory.Idempotents.functorExtension₁.{u3, u1, u5, u2} D E _inst_2 _inst_3)) G))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₁_comp CategoryTheory.Idempotents.functorExtension₁_compₓ'. -/
 theorem functorExtension₁_comp (F : C ⥤ Karoubi D) (G : D ⥤ Karoubi E) :
     (functorExtension₁ C E).obj (F ⋙ (functorExtension₁ D E).obj G) =
       (functorExtension₁ C D).obj F ⋙ (functorExtension₁ D E).obj G :=
@@ -210,12 +264,24 @@ theorem functorExtension₁_comp (F : C ⥤ Karoubi D) (G : D ⥤ Karoubi E) :
     simpa only [id_comp, comp_id]
 #align category_theory.idempotents.functor_extension₁_comp CategoryTheory.Idempotents.functorExtension₁_comp
 
+/- warning: category_theory.idempotents.functor_extension₂ -> CategoryTheory.Idempotents.functorExtension₂ is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))
+but is expected to have type
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max (max (max u2 u1) u4) u3, max (max (max (max u4 u2) u3 u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₂ CategoryTheory.Idempotents.functorExtension₂ₓ'. -/
 /-- The canonical functor `(C ⥤ D) ⥤ (karoubi C ⥤ karoubi D)` -/
 @[simps]
 def functorExtension₂ : (C ⥤ D) ⥤ Karoubi C ⥤ Karoubi D :=
   (whiskeringRight C D (Karoubi D)).obj (toKaroubi D) ⋙ functorExtension₁ C D
 #align category_theory.idempotents.functor_extension₂ CategoryTheory.Idempotents.functorExtension₂
 
+/- warning: category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi -> CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubi is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], Eq.{succ (max (max u1 u4) (max u3 u4 u1 u2) u3 u4 u1 u2 u4)} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max u1 u4, max (max u1 u3) u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₂.{u1, u2, u3, u4} C D _inst_1 _inst_2) (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2 u4) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2 u4) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, max u2 u4, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1))) (CategoryTheory.Functor.obj.{max u2 u4, max (max u3 u4 u1 u2) u1 u4, max u2 u4, max (max u1 u4) (max u3 u4 u1 u2) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u4, u4, u2, max u2 u4} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u4, u4, u2, max u2 u4} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringRight.{u1, u3, u2, u4, max u2 u4, u4} C _inst_1 D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u2, u4} D _inst_2))
+but is expected to have type
+  forall (C : Type.{u4}) (D : Type.{u3}) [_inst_1 : CategoryTheory.Category.{u2, u4} C] [_inst_2 : CategoryTheory.Category.{u1, u3} D], Eq.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1)} (CategoryTheory.Functor.{max u4 u1, max u4 u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.comp.{max u4 u1, max (max u4 u2) u1, max u4 u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u4 u2, max u3 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₂.{u4, u3, u2, u1} C D _inst_1 _inst_2) (Prefunctor.obj.{max (succ u4) (succ u2), max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max u4 u2, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Functor.category.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)))) (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.category.{max (max u2 u4) u1, max u4 u1, max (max (max (max u2 u4) u1 u3) u2) u1, max (max (max u4 u1 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u4 u2, max (max (max u4 u3) u2) u1, max u4 u2, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Functor.category.{u2, u2, u4, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1)) (CategoryTheory.Functor.{max (max u2 u4) u1, max u4 u1, max (max (max (max u1 u3) u2 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.category.{max (max u2 u4) u1, max u4 u1, max (max (max (max u2 u4) u1 u3) u2) u1, max (max (max u4 u1 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.whiskeringLeft.{u4, u2, max u2 u4, u2, max u1 u3, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u4, u2} C _inst_1))) (Prefunctor.obj.{max (succ u3) (succ u1), max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max u3 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u1, u1, u3, max u1 u3} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max u3 u1, max u3 u1} (CategoryTheory.Functor.{u1, u1, u3, max u1 u3} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max u3 u1, max u3 u1} (CategoryTheory.Functor.{u1, u1, u3, max u1 u3} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u1, u1, u3, max u1 u3} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)))) (CategoryTheory.Functor.{max u4 u1, max u4 u1, max (max (max u3 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{max u4 u1, max u4 u1, max (max (max u3 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{max u4 u1, max u4 u1, max (max (max u3 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.category.{max u4 u1, max u4 u1, max (max (max u4 u3) u2) u1, max (max (max u4 u1 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u3 u1, max (max (max u4 u3) u2) u1, max u3 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u1, u1, u3, max u1 u3} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u1, u1, u3, max u1 u3} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.{max u4 u1, max u4 u1, max (max (max u3 u4) u1) u2, max (max (max (max u1 u3) u4) u1) u2} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Functor.category.{max u4 u1, max u4 u1, max (max (max u4 u3) u2) u1, max (max (max u4 u1 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.whiskeringRight.{u4, u2, u3, u1, max u1 u3, u1} C _inst_1 D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u3, u1} D _inst_2))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubiₓ'. -/
 theorem functorExtension₂_comp_whiskeringLeft_toKaroubi :
     functorExtension₂ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) =
       (whiskeringRight C D (Karoubi D)).obj (toKaroubi D) :=
@@ -224,6 +290,12 @@ theorem functorExtension₂_comp_whiskeringLeft_toKaroubi :
     functor.comp_id]
 #align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubi
 
+/- warning: category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi_iso -> CategoryTheory.Idempotents.functorExtension₂CompWhiskeringLeftToKaroubiIso is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Iso.{max (max u3 u4 u1 u2) u1 u4, max (max u1 u4) (max u3 u4 u1 u2) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max u1 u4, max (max u1 u3) u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₂.{u1, u2, u3, u4} C D _inst_1 _inst_2) (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2 u4) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2 u4) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2 u4, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, max u2 u4, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1))) (CategoryTheory.Functor.obj.{max u2 u4, max (max u3 u4 u1 u2) u1 u4, max u2 u4, max (max u1 u4) (max u3 u4 u1 u2) u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u4, u4, u2, max u2 u4} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u4, u4, u2, max u2 u4} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max u3 u4 u1 u2, max u3 u4 u1 u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringRight.{u1, u3, u2, u4, max u2 u4, u4} C _inst_1 D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u2, u4} D _inst_2))
+but is expected to have type
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D], CategoryTheory.Iso.{max (max (max u1 u2) u3) u4, max (max (max (max u1 u2) u3) u4) u1 u4} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.comp.{max u1 u4, max (max u1 u3) u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.functorExtension₂.{u1, u2, u3, u4} C D _inst_1 _inst_2) (Prefunctor.obj.{max (succ u1) (succ u3), max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max u1 u3, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3, max u1 u3} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u1 u3, max u1 u3} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)))) (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u3 u1) u4, max u1 u4, max (max (max (max u3 u1) u4 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u1 u3, max (max (max u1 u2) u3) u4, max u1 u3, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u3 u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u3 u1) u4, max u1 u4, max (max (max (max u4 u2) u3 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max (max u3 u1) u4, max u1 u4, max (max (max (max u3 u1) u4 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringLeft.{u1, u3, max u3 u1, u3, max u4 u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1))) (Prefunctor.obj.{max (succ u2) (succ u4), max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max u2 u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max u2 u4, max u2 u4} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max u2 u4, max u2 u4} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u4, u4, u2, max u4 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)))) (CategoryTheory.Functor.{max u1 u4, max u1 u4, max (max (max u2 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max (max (max u2 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Category.toCategoryStruct.{max (max (max u1 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{max u1 u4, max u1 u4, max (max (max u2 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))))) (CategoryTheory.Functor.toPrefunctor.{max u2 u4, max (max (max u1 u2) u3) u4, max u2 u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u4, u4, u2, max u4 u2} D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.{max u1 u4, max u1 u4, max (max (max u2 u1) u4) u3, max (max (max (max u4 u2) u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Functor.category.{max u1 u4, max u1 u4, max (max (max u1 u2) u3) u4, max (max (max u1 u4 u2) u3) u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.whiskeringRight.{u1, u3, u2, u4, max u4 u2, u4} C _inst_1 D _inst_2 (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))) (CategoryTheory.Idempotents.toKaroubi.{u2, u4} D _inst_2))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₂CompWhiskeringLeftToKaroubiIsoₓ'. -/
 /-- The natural isomorphism expressing that functors `karoubi C ⥤ karoubi D` obtained
 using `functor_extension₂` actually extends the original functors `C ⥤ D`. -/
 @[simps]
@@ -238,8 +310,14 @@ section IsIdempotentComplete
 variable [IsIdempotentComplete D]
 
 noncomputable instance : IsEquivalence (toKaroubi D) :=
-  toKaroubiIsEquivalence D
-
+  toKaroubi_isEquivalence D
+
+/- warning: category_theory.idempotents.karoubi_universal₂ -> CategoryTheory.Idempotents.karoubiUniversal₂ is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], CategoryTheory.Equivalence.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))
+but is expected to have type
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], CategoryTheory.Equivalence.{max u1 u4, max (max u1 u3) u4, max (max (max u2 u1) u4) u3, max (max (max (max u4 u2) u3 u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u3 u1, max u4 u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} D _inst_2))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.karoubi_universal₂ CategoryTheory.Idempotents.karoubiUniversal₂ₓ'. -/
 /-- The equivalence of categories `(C ⥤ D) ≌ (karoubi C ⥤ karoubi D)` when `D`
 is idempotent complete. -/
 @[simps]
@@ -247,6 +325,12 @@ noncomputable def karoubiUniversal₂ : C ⥤ D ≌ Karoubi C ⥤ Karoubi D :=
   (Equivalence.congrRight (toKaroubi D).asEquivalence).trans (karoubiUniversal₁ C D)
 #align category_theory.idempotents.karoubi_universal₂ CategoryTheory.Idempotents.karoubiUniversal₂
 
+/- warning: category_theory.idempotents.karoubi_universal₂_functor_eq -> CategoryTheory.Idempotents.karoubiUniversal₂_functor_eq is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], Eq.{succ (max (max u1 u4) (max (max u1 u3) u4) (max u3 u4 u1 u2) u3 u4 (max u1 u3) u2 u4)} (CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2))) (CategoryTheory.Equivalence.functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2 u4} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u2, u4} D _inst_2) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u2, u4} D _inst_2)) (CategoryTheory.Idempotents.karoubiUniversal₂.{u1, u2, u3, u4} C D _inst_1 _inst_2 _inst_4)) (CategoryTheory.Idempotents.functorExtension₂.{u1, u2, u3, u4} C D _inst_1 _inst_2)
+but is expected to have type
+  forall (C : Type.{u4}) (D : Type.{u3}) [_inst_1 : CategoryTheory.Category.{u2, u4} C] [_inst_2 : CategoryTheory.Category.{u1, u3} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u3, u1} D _inst_2], Eq.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1)} (CategoryTheory.Functor.{max u4 u1, max (max u4 u2) u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, max u4 u2, max u3 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2))) (CategoryTheory.Equivalence.functor.{max u4 u1, max (max u4 u2) u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, max u2 u4, max u1 u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, max u4 u2, max u3 u1} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.{u3, u1} D _inst_2) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u3, u1} D _inst_2)) (CategoryTheory.Idempotents.karoubiUniversal₂.{u4, u3, u2, u1} C D _inst_1 _inst_2 _inst_4)) (CategoryTheory.Idempotents.functorExtension₂.{u4, u3, u2, u1} C D _inst_1 _inst_2)
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.karoubi_universal₂_functor_eq CategoryTheory.Idempotents.karoubiUniversal₂_functor_eqₓ'. -/
 theorem karoubiUniversal₂_functor_eq : (karoubiUniversal₂ C D).Functor = functorExtension₂ C D :=
   rfl
 #align category_theory.idempotents.karoubi_universal₂_functor_eq CategoryTheory.Idempotents.karoubiUniversal₂_functor_eq
@@ -256,20 +340,38 @@ noncomputable instance : IsEquivalence (functorExtension₂ C D) :=
   rw [← karoubi_universal₂_functor_eq]
   infer_instance
 
+/- warning: category_theory.idempotents.functor_extension -> CategoryTheory.Idempotents.functorExtension is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2)
+but is expected to have type
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max (max (max u2 u1) u4) u3, max (max (max u2 u3 u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u3 u1, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) D _inst_2)
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.functor_extension CategoryTheory.Idempotents.functorExtensionₓ'. -/
 /-- The extension of functors functor `(C ⥤ D) ⥤ (karoubi C ⥤ D)`
 when `D` is idempotent compltete. -/
 @[simps]
 noncomputable def functorExtension : (C ⥤ D) ⥤ Karoubi C ⥤ D :=
   functorExtension₂ C D ⋙
-    (whiskeringRight (Karoubi C) (Karoubi D) D).obj (toKaroubiIsEquivalence D).inverse
+    (whiskeringRight (Karoubi C) (Karoubi D) D).obj (toKaroubi_isEquivalence D).inverse
 #align category_theory.idempotents.functor_extension CategoryTheory.Idempotents.functorExtension
 
+/- warning: category_theory.idempotents.karoubi_universal -> CategoryTheory.Idempotents.karoubiUniversal is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], CategoryTheory.Equivalence.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2)
+but is expected to have type
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], CategoryTheory.Equivalence.{max u1 u4, max (max u1 u3) u4, max (max (max u2 u1) u4) u3, max (max (max u2 u3 u1) u4) u3} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u3 u1, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u1, u3} C _inst_1) D _inst_2)
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.karoubi_universal CategoryTheory.Idempotents.karoubiUniversalₓ'. -/
 /-- The equivalence `(C ⥤ D) ≌ (karoubi C ⥤ D)` when `D` is idempotent complete. -/
 @[simps]
 noncomputable def karoubiUniversal : C ⥤ D ≌ Karoubi C ⥤ D :=
   (karoubiUniversal₂ C D).trans (Equivalence.congrRight (toKaroubi D).asEquivalence.symm)
 #align category_theory.idempotents.karoubi_universal CategoryTheory.Idempotents.karoubiUniversal
 
+/- warning: category_theory.idempotents.karoubi_universal_functor_eq -> CategoryTheory.Idempotents.karoubiUniversal_functor_eq is a dubious translation:
+lean 3 declaration is
+  forall (C : Type.{u1}) (D : Type.{u2}) [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2], Eq.{succ (max (max u1 u4) (max (max u1 u3) u4) (max u3 u4 u1 u2) u3 u4 (max u1 u3) u2)} (CategoryTheory.Functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2)) (CategoryTheory.Equivalence.functor.{max u1 u4, max (max u1 u3) u4, max u3 u4 u1 u2, max u3 u4 (max u1 u3) u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Idempotents.karoubiUniversal.{u1, u2, u3, u4} C D _inst_1 _inst_2 _inst_4)) (CategoryTheory.Idempotents.functorExtension.{u1, u2, u3, u4} C D _inst_1 _inst_2 _inst_4)
+but is expected to have type
+  forall (C : Type.{u4}) (D : Type.{u3}) [_inst_1 : CategoryTheory.Category.{u2, u4} C] [_inst_2 : CategoryTheory.Category.{u1, u3} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u3, u1} D _inst_2], Eq.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1)} (CategoryTheory.Functor.{max u4 u1, max (max u4 u2) u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, max u2 u4, u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u2, u1, max u4 u2, u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) D _inst_2)) (CategoryTheory.Equivalence.functor.{max u4 u1, max (max u4 u2) u1, max (max (max u4 u3) u2) u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.{u2, u1, max u2 u4, u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u2, u1, u4, u3} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u2, u1, max u4 u2, u3} (CategoryTheory.Idempotents.Karoubi.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u4, u2} C _inst_1) D _inst_2) (CategoryTheory.Idempotents.karoubiUniversal.{u4, u3, u2, u1} C D _inst_1 _inst_2 _inst_4)) (CategoryTheory.Idempotents.functorExtension.{u4, u3, u2, u1} C D _inst_1 _inst_2 _inst_4)
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.karoubi_universal_functor_eq CategoryTheory.Idempotents.karoubiUniversal_functor_eqₓ'. -/
 theorem karoubiUniversal_functor_eq : (karoubiUniversal C D).Functor = functorExtension C D :=
   rfl
 #align category_theory.idempotents.karoubi_universal_functor_eq CategoryTheory.Idempotents.karoubiUniversal_functor_eq
@@ -291,10 +393,16 @@ noncomputable instance : IsEquivalence ((whiskeringLeft C (Karoubi C) D).obj (to
 
 variable {C D}
 
+/- warning: category_theory.idempotents.whiskering_left_obj_preimage_app -> CategoryTheory.Idempotents.whiskeringLeft_obj_preimage_app is a dubious translation:
+lean 3 declaration is
+  forall {C : Type.{u1}} {D : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u3, u1} C] [_inst_2 : CategoryTheory.Category.{u4, u2} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u2, u4} D _inst_2] {F : CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2} {G : CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2} (τ : Quiver.Hom.{succ (max u1 u4), max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u4, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u4, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2))) (CategoryTheory.Functor.comp.{u3, u3, u4, u1, max u1 u3, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1) F) (CategoryTheory.Functor.comp.{u3, u3, u4, u1, max u1 u3, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1) G)) (P : CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1), Eq.{succ u4} (Quiver.Hom.{succ u4, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u2} D (CategoryTheory.Category.toCategoryStruct.{u4, u2} D _inst_2)) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F P) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G P)) (CategoryTheory.NatTrans.app.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F G (CategoryTheory.Functor.preimage.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) F G (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2) u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2)) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2)) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Equivalence.fullOfEquivalence.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.obj.{max u1 u3, max (max u3 u4 (max u1 u3) u2) u1 u4, max u1 u3, max (max (max u1 u3) u4) (max u1 u4) (max u3 u4 (max u1 u3) u2) u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.category.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1)) (CategoryTheory.Functor.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2)) (CategoryTheory.Functor.category.{max (max u1 u3) u4, max u1 u4, max u3 u4 (max u1 u3) u2, max u3 u4 u1 u2} (CategoryTheory.Functor.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u3, u4, u1, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u4, u1, u2} C _inst_1 D _inst_2)) (CategoryTheory.whiskeringLeft.{u1, u3, max u1 u3, u3, u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1)) (CategoryTheory.Idempotents.Obj.CategoryTheory.isEquivalence.{u1, u2, u3, u4} C D _inst_1 _inst_2 _inst_4)) τ) P) (CategoryTheory.CategoryStruct.comp.{u4, u2} D (CategoryTheory.Category.toCategoryStruct.{u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F P) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P))) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G P) (CategoryTheory.Functor.map.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F P ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.decompId_i.{u1, u3} C _inst_1 P)) (CategoryTheory.CategoryStruct.comp.{u4, u2} D (CategoryTheory.Category.toCategoryStruct.{u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 F ((fun (a : Type.{u1}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{succ u1, max (succ u1) (succ u3)} a b] => self.0) C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (HasLiftT.mk.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CoeTCₓ.coe.{succ u1, max (succ u1) (succ u3)} C (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.coe.{u1, u3} C _inst_1))) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P))) (CategoryTheory.Functor.obj.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Functor.comp.{u3, u3, u4, u1, max u1 u3, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1) G) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P)) (CategoryTheory.Functor.obj.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G P) (CategoryTheory.NatTrans.app.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Functor.comp.{u3, u3, u4, u1, max u1 u3, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1) F) (CategoryTheory.Functor.comp.{u3, u3, u4, u1, max u1 u3, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1) G) τ (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P)) (CategoryTheory.Functor.map.{u3, u4, max u1 u3, u2} (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) D _inst_2 G (CategoryTheory.Functor.obj.{u3, u3, u1, max u1 u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.CategoryTheory.category.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.toKaroubi.{u1, u3} C _inst_1) (CategoryTheory.Idempotents.Karoubi.x.{u1, u3} C _inst_1 P)) P (CategoryTheory.Idempotents.Karoubi.decompId_p.{u1, u3} C _inst_1 P))))
+but is expected to have type
+  forall {C : Type.{u2}} {D : Type.{u1}} [_inst_1 : CategoryTheory.Category.{u4, u2} C] [_inst_2 : CategoryTheory.Category.{u3, u1} D] [_inst_4 : CategoryTheory.IsIdempotentComplete.{u1, u3} D _inst_2] {F : CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2} {G : CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2} (τ : Quiver.Hom.{max (succ u2) (succ u3), max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u2 u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u2 u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2))) (CategoryTheory.Functor.comp.{u4, u4, u3, u2, max u4 u2, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1) F) (CategoryTheory.Functor.comp.{u4, u4, u3, u2, max u2 u4, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1) G)) (P : CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1), Eq.{succ u3} (Quiver.Hom.{succ u3, u1} D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) P) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) P)) (CategoryTheory.NatTrans.app.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F G (CategoryTheory.Functor.preimage.{max (max u3 u4) u2, max u3 u2, max (max (max u3 u1) u4) u2, max (max (max u3 u1) u4) u2} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2) F G (Prefunctor.obj.{max (succ u4) (succ u2), max (max (max (max (succ u3) (succ u1)) (succ u4)) (succ (max u4 u2))) (succ u2), max u4 u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Functor.category.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)))) (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max (max u3 u1) u4) u4 u2) u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max (max (max (max u3 u1) u4) u4 u2) u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.Functor.category.{max (max u4 u2) u3, max u2 u3, max (max (max (max u4 u2) u1) u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)))) (CategoryTheory.Functor.toPrefunctor.{max u4 u2, max (max (max (max u3 u1) u4) u4 u2) u2, max u4 u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Functor.category.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.Functor.category.{max (max u4 u2) u3, max u2 u3, max (max (max (max u4 u2) u1) u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.whiskeringLeft.{u2, u4, max u4 u2, u4, u1, u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Equivalence.fullOfEquivalence.{max (max u2 u4) u3, max u2 u3, max (max (max u2 u1) u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2) (Prefunctor.obj.{max (succ u4) (succ u2), max (max (max (max (succ u3) (succ u1)) (succ u4)) (succ (max u4 u2))) (succ u2), max u4 u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Category.toCategoryStruct.{max u4 u2, max u4 u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Functor.category.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)))) (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.CategoryStruct.toQuiver.{max (max (max (max u3 u1) u4) u4 u2) u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.Category.toCategoryStruct.{max (max (max (max u3 u1) u4) u4 u2) u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.Functor.category.{max (max u4 u2) u3, max u2 u3, max (max (max (max u4 u2) u1) u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)))) (CategoryTheory.Functor.toPrefunctor.{max u4 u2, max (max (max (max u3 u1) u4) u4 u2) u2, max u4 u2, max (max (max (max (max u3 u1) u4) u4 u2) u4) u2} (CategoryTheory.Functor.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Functor.category.{u4, u4, u2, max u4 u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Functor.{max (max u4 u2) u3, max u2 u3, max (max (max u1 u4 u2) u3) u4, max (max (max u1 u2) u3) u4} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.Functor.category.{max (max u4 u2) u3, max u2 u3, max (max (max (max u4 u2) u1) u4) u3, max (max (max u2 u1) u4) u3} (CategoryTheory.Functor.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.category.{u4, u3, max u4 u2, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2) (CategoryTheory.Functor.{u4, u3, u2, u1} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u4, u3, u2, u1} C _inst_1 D _inst_2)) (CategoryTheory.whiskeringLeft.{u2, u4, max u4 u2, u4, u1, u3} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2)) (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Idempotents.instIsEquivalenceFunctorKaroubiInstCategoryKaroubiCategoryFunctorCategoryObjFunctorToQuiverToCategoryStructCategoryFunctorToQuiverToCategoryStructCategoryToPrefunctorWhiskeringLeftToKaroubi.{u2, u1, u4, u3} C D _inst_1 _inst_2 _inst_4)) τ) P) (CategoryTheory.CategoryStruct.comp.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) P) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)))) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) P) (Prefunctor.map.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) P (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P))) (CategoryTheory.Idempotents.Karoubi.decompId_i.{u2, u4} C _inst_1 P)) (CategoryTheory.CategoryStruct.comp.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 F) (CategoryTheory.Idempotents.Karoubi.mk.{u2, u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P) (CategoryTheory.CategoryStruct.id.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (CategoryTheory.Idempotents.Karoubi.coe.proof_1.{u4, u2} C _inst_1 (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)))) (Prefunctor.obj.{succ u4, succ u3, u2, u1} C (CategoryTheory.CategoryStruct.toQuiver.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, u2, u1} C _inst_1 D _inst_2 (CategoryTheory.Functor.comp.{u4, u4, u3, u2, max u2 u4, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1) G)) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (Prefunctor.obj.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) P) (CategoryTheory.NatTrans.app.{u4, u3, u2, u1} C _inst_1 D _inst_2 (CategoryTheory.Functor.comp.{u4, u4, u3, u2, max u4 u2, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1) F) (CategoryTheory.Functor.comp.{u4, u4, u3, u2, max u2 u4, u1} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1) G) τ (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) (Prefunctor.map.{succ u4, succ u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) D (CategoryTheory.CategoryStruct.toQuiver.{u3, u1} D (CategoryTheory.Category.toCategoryStruct.{u3, u1} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u4, u3, max u2 u4, u1} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) D _inst_2 G) (Prefunctor.obj.{succ u4, succ u4, u2, max u2 u4} C (CategoryTheory.CategoryStruct.toQuiver.{u4, u2} C (CategoryTheory.Category.toCategoryStruct.{u4, u2} C _inst_1)) (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.CategoryStruct.toQuiver.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Category.toCategoryStruct.{u4, max u2 u4} (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1))) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u2, max u2 u4} C _inst_1 (CategoryTheory.Idempotents.Karoubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.Karoubi.instCategoryKaroubi.{u2, u4} C _inst_1) (CategoryTheory.Idempotents.toKaroubi.{u2, u4} C _inst_1)) (CategoryTheory.Idempotents.Karoubi.X.{u2, u4} C _inst_1 P)) P (CategoryTheory.Idempotents.Karoubi.decompId_p.{u2, u4} C _inst_1 P))))
+Case conversion may be inaccurate. Consider using '#align category_theory.idempotents.whiskering_left_obj_preimage_app CategoryTheory.Idempotents.whiskeringLeft_obj_preimage_appₓ'. -/
 theorem whiskeringLeft_obj_preimage_app {F G : Karoubi C ⥤ D}
     (τ : toKaroubi _ ⋙ F ⟶ toKaroubi _ ⋙ G) (P : Karoubi C) :
     (((whiskeringLeft _ _ _).obj (toKaroubi _)).preimage τ).app P =
-      F.map P.decompIdI ≫ τ.app P.pt ≫ G.map P.decompIdP :=
+      F.map P.decompId_i ≫ τ.app P.pt ≫ G.map P.decompId_p :=
   by
   rw [nat_trans_eq]
   congr 2
Diff
@@ -45,7 +45,7 @@ variable {C D E : Type _} [Category C] [Category D] [Category E]
 /-- A natural transformation between functors `karoubi C ⥤ D` is determined
 by its value on objects coming from `C`. -/
 theorem nat_trans_eq {F G : Karoubi C ⥤ D} (φ : F ⟶ G) (P : Karoubi C) :
-    φ.app P = F.map (decompIdI P) ≫ φ.app P.x ≫ G.map (decompIdP P) :=
+    φ.app P = F.map (decompIdI P) ≫ φ.app P.pt ≫ G.map (decompIdP P) :=
   by
   rw [← φ.naturality, ← assoc, ← F.map_comp]
   conv =>
@@ -63,7 +63,7 @@ namespace FunctorExtension₁
 def obj (F : C ⥤ Karoubi D) : Karoubi C ⥤ Karoubi D
     where
   obj P :=
-    ⟨(F.obj P.x).x, (F.map P.p).f, by simpa only [F.map_comp, hom_ext] using F.congr_map P.idem⟩
+    ⟨(F.obj P.pt).pt, (F.map P.p).f, by simpa only [F.map_comp, hom_ext] using F.congr_map P.idem⟩
   map P Q f := ⟨(F.map f.f).f, by simpa only [F.map_comp, hom_ext] using F.congr_map f.comm⟩
 #align category_theory.idempotents.functor_extension₁.obj CategoryTheory.Idempotents.FunctorExtension₁.obj
 
@@ -74,7 +74,7 @@ extension of these functors to `karoubi C ⥤ karoubi D` -/
 def map {F G : C ⥤ Karoubi D} (φ : F ⟶ G) : obj F ⟶ obj G
     where
   app P :=
-    { f := (F.map P.p).f ≫ (φ.app P.x).f
+    { f := (F.map P.p).f ≫ (φ.app P.pt).f
       comm := by
         have h := φ.naturality P.p
         have h' := F.congr_map P.idem
@@ -294,7 +294,7 @@ variable {C D}
 theorem whiskeringLeft_obj_preimage_app {F G : Karoubi C ⥤ D}
     (τ : toKaroubi _ ⋙ F ⟶ toKaroubi _ ⋙ G) (P : Karoubi C) :
     (((whiskeringLeft _ _ _).obj (toKaroubi _)).preimage τ).app P =
-      F.map P.decompIdI ≫ τ.app P.x ≫ G.map P.decompIdP :=
+      F.map P.decompIdI ≫ τ.app P.pt ≫ G.map P.decompIdP :=
   by
   rw [nat_trans_eq]
   congr 2

Changes in mathlib4

mathlib3
mathlib4
chore(CategoryTheory): make Functor.Full a Prop (#12449)

Before this PR, Functor.Full contained the data of the preimage of maps by a full functor F. This PR makes Functor.Full a proposition. This is to prevent any diamond to appear.

The lemma Functor.image_preimage is also renamed Functor.map_preimage.

Co-authored-by: Joël Riou <37772949+joelriou@users.noreply.github.com>

Diff
@@ -262,7 +262,7 @@ theorem whiskeringLeft_obj_preimage_app {F G : Karoubi C ⥤ D}
       F.map P.decompId_i ≫ τ.app P.X ≫ G.map P.decompId_p := by
   rw [natTrans_eq]
   congr 2
-  rw [← congr_app (((whiskeringLeft _ _ _).obj (toKaroubi _)).image_preimage τ) P.X]
+  rw [← congr_app (((whiskeringLeft _ _ _).obj (toKaroubi _)).map_preimage τ) P.X]
   dsimp
   congr
 #align category_theory.idempotents.whiskering_left_obj_preimage_app CategoryTheory.Idempotents.whiskeringLeft_obj_preimage_app
chore(CategoryTheory): move Full, Faithful, EssSurj, IsEquivalence and ReflectsIsomorphisms to the Functor namespace (#11985)

These notions on functors are now Functor.Full, Functor.Faithful, Functor.EssSurj, Functor.IsEquivalence, Functor.ReflectsIsomorphisms. Deprecated aliases are introduced for the previous names.

Diff
@@ -197,7 +197,7 @@ section IsIdempotentComplete
 
 variable [IsIdempotentComplete D]
 
-noncomputable instance : IsEquivalence (toKaroubi D) :=
+noncomputable instance : (toKaroubi D).IsEquivalence :=
   toKaroubiIsEquivalence D
 
 /-- The equivalence of categories `(C ⥤ D) ≌ (Karoubi C ⥤ Karoubi D)` when `D`
@@ -211,7 +211,7 @@ theorem karoubiUniversal₂_functor_eq : (karoubiUniversal₂ C D).functor = fun
   rfl
 #align category_theory.idempotents.karoubi_universal₂_functor_eq CategoryTheory.Idempotents.karoubiUniversal₂_functor_eq
 
-noncomputable instance : IsEquivalence (functorExtension₂ C D) := by
+noncomputable instance : (functorExtension₂ C D).IsEquivalence := by
   rw [← karoubiUniversal₂_functor_eq]
   infer_instance
 
@@ -233,7 +233,7 @@ theorem karoubiUniversal_functor_eq : (karoubiUniversal C D).functor = functorEx
   rfl
 #align category_theory.idempotents.karoubi_universal_functor_eq CategoryTheory.Idempotents.karoubiUniversal_functor_eq
 
-noncomputable instance : IsEquivalence (functorExtension C D) := by
+noncomputable instance : (functorExtension C D).IsEquivalence := by
   rw [← karoubiUniversal_functor_eq]
   infer_instance
 
@@ -245,10 +245,10 @@ lemma isEquivalence_whiskeringLeft_obj_toKaroubi_aux :
       (karoubiUniversal C D).inverse := by
   rfl
 
-noncomputable instance : IsEquivalence ((whiskeringLeft C (Karoubi C) D).obj (toKaroubi C)) :=
-  IsEquivalence.cancelCompRight _
+noncomputable instance : ((whiskeringLeft C (Karoubi C) D).obj (toKaroubi C)).IsEquivalence :=
+  Functor.IsEquivalence.cancelCompRight _
   ((whiskeringRight C _ _).obj (toKaroubi D) ⋙ (whiskeringRight C _ _).obj (toKaroubi D).inv)
-  (IsEquivalence.ofEquivalence <| (toKaroubi D).asEquivalence.congrRight.trans
+  (Functor.IsEquivalence.ofEquivalence <| (toKaroubi D).asEquivalence.congrRight.trans
     (toKaroubi D).asEquivalence.symm.congrRight)
   (by
     rw [isEquivalence_whiskeringLeft_obj_toKaroubi_aux]
style: homogenise porting notes (#11145)

Homogenises porting notes via capitalisation and addition of whitespace.

It makes the following changes:

  • converts "--porting note" into "-- Porting note";
  • converts "porting note" into "Porting note".
Diff
@@ -237,7 +237,7 @@ noncomputable instance : IsEquivalence (functorExtension C D) := by
   rw [← karoubiUniversal_functor_eq]
   infer_instance
 
--- porting note: added to avoid a timeout in the following definition
+-- Porting note: added to avoid a timeout in the following definition
 lemma isEquivalence_whiskeringLeft_obj_toKaroubi_aux :
     ((whiskeringLeft C (Karoubi C) D).obj (toKaroubi C) ⋙
       (whiskeringRight C D (Karoubi D)).obj (toKaroubi D) ⋙
refactor(CategoryTheory/Idempotents): replacing equalities of functors by isomorphisms (#8562)

In the context of idempotent completion of categories and the Dold-Kan equivalence, constructing some isomorphisms was very slow in Lean 3 but has been much faster in Lean 4, while using equalities of functors in Lean 3 was fast, but in Lean 4 it became very slow. In this PR, we switch to using mostly isomorphisms of functors: this also became necessary in order to make the refactor #8531 possible.

Diff
@@ -20,23 +20,14 @@ when `D` is idempotent complete, we get equivalences
 `karoubiUniversal₂ C D : C ⥤ D ≌ Karoubi C ⥤ Karoubi D`
 and `karoubiUniversal C D : C ⥤ D ≌ Karoubi C ⥤ D`.
 
-We occasionally state and use equalities of functors because it is
-sometimes convenient to use rewrites when proving properties of
-functors obtained using the constructions in this file. Users are
-encouraged to use the corresponding natural isomorphism
-whenever possible.
-
 -/
 
-
-open CategoryTheory.Category
-
-open CategoryTheory.Idempotents.Karoubi
-
 namespace CategoryTheory
 
 namespace Idempotents
 
+open Category Karoubi
+
 variable {C D E : Type*} [Category C] [Category D] [Category E]
 
 /-- A natural transformation between functors `Karoubi C ⥤ D` is determined
@@ -44,9 +35,7 @@ by its value on objects coming from `C`. -/
 theorem natTrans_eq {F G : Karoubi C ⥤ D} (φ : F ⟶ G) (P : Karoubi C) :
     φ.app P = F.map (decompId_i P) ≫ φ.app P.X ≫ G.map (decompId_p P) := by
   rw [← φ.naturality, ← assoc, ← F.map_comp]
-  conv =>
-    lhs
-    rw [← id_comp (φ.app P), ← F.map_id]
+  conv_lhs => rw [← id_comp (φ.app P), ← F.map_id]
   congr
   apply decompId
 #align category_theory.idempotents.nat_trans_eq CategoryTheory.Idempotents.natTrans_eq
@@ -110,28 +99,19 @@ def functorExtension₁ : (C ⥤ Karoubi D) ⥤ Karoubi C ⥤ Karoubi D where
     simp only [assoc]
 #align category_theory.idempotents.functor_extension₁ CategoryTheory.Idempotents.functorExtension₁
 
-theorem functorExtension₁_comp_whiskeringLeft_toKaroubi :
-    functorExtension₁ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) =
-      𝟭 _ := by
-  refine' Functor.ext _ _
-  · intro F
-    refine' Functor.ext _ _
-    · intro X
-      ext
-      · simp
-      · simp
-    · aesop_cat
-  · intro F G φ
-    aesop_cat
-#align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi
-
 /-- The natural isomorphism expressing that functors `Karoubi C ⥤ Karoubi D` obtained
 using `functorExtension₁` actually extends the original functors `C ⥤ Karoubi D`. -/
 @[simps!]
-def functorExtension₁_comp_whiskeringLeft_toKaroubi_iso :
+def functorExtension₁CompWhiskeringLeftToKaroubiIso :
     functorExtension₁ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) ≅ 𝟭 _ :=
-  eqToIso (functorExtension₁_comp_whiskeringLeft_toKaroubi C D)
-#align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₁_comp_whiskeringLeft_toKaroubi_iso
+  NatIso.ofComponents
+    (fun F => NatIso.ofComponents
+      (fun X =>
+        { hom := { f := (F.obj X).p }
+          inv := { f := (F.obj X).p } })
+      (fun {X Y} f => by aesop_cat))
+    (by aesop_cat)
+#align category_theory.idempotents.functor_extension₁_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₁CompWhiskeringLeftToKaroubiIso
 
 /-- The counit isomorphism of the equivalence `(C ⥤ Karoubi D) ≌ (Karoubi C ⥤ Karoubi D)`. -/
 @[simps!]
@@ -177,26 +157,20 @@ def KaroubiUniversal₁.counitIso :
 def karoubiUniversal₁ : C ⥤ Karoubi D ≌ Karoubi C ⥤ Karoubi D where
   functor := functorExtension₁ C D
   inverse := (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C)
-  unitIso := (functorExtension₁_comp_whiskeringLeft_toKaroubi_iso C D).symm
+  unitIso := (functorExtension₁CompWhiskeringLeftToKaroubiIso C D).symm
   counitIso := KaroubiUniversal₁.counitIso C D
   functor_unitIso_comp F := by
     ext P
-    dsimp [FunctorExtension₁.map, KaroubiUniversal₁.counitIso]
-    simp only [eqToHom_app, Functor.id_obj, Functor.comp_obj, functorExtension₁_obj,
-      whiskeringLeft_obj_obj, eqToHom_f, FunctorExtension₁.obj_obj_X, toKaroubi_obj_X,
-      eqToHom_refl, comp_id, comp_p, ←comp_f, ← F.map_comp, P.idem]
+    dsimp
+    rw [comp_p, ← comp_f, ← F.map_comp, P.idem]
 #align category_theory.idempotents.karoubi_universal₁ CategoryTheory.Idempotents.karoubiUniversal₁
 
-theorem functorExtension₁_comp (F : C ⥤ Karoubi D) (G : D ⥤ Karoubi E) :
-    (functorExtension₁ C E).obj (F ⋙ (functorExtension₁ D E).obj G) =
-      (functorExtension₁ C D).obj F ⋙ (functorExtension₁ D E).obj G := by
-  refine' Functor.ext _ _
-  · aesop_cat
-  · intro X Y f
-    ext
-    simp only [eqToHom_refl, id_comp, comp_id]
-    rfl
-#align category_theory.idempotents.functor_extension₁_comp CategoryTheory.Idempotents.functorExtension₁_comp
+/-- Compatibility isomorphisms of `functorExtension₁` with respect to the
+composition of functors. -/
+def functorExtension₁Comp (F : C ⥤ Karoubi D) (G : D ⥤ Karoubi E) :
+    (functorExtension₁ C E).obj (F ⋙ (functorExtension₁ D E).obj G) ≅
+      (functorExtension₁ C D).obj F ⋙ (functorExtension₁ D E).obj G :=
+  Iso.refl _
 
 /-- The canonical functor `(C ⥤ D) ⥤ (Karoubi C ⥤ Karoubi D)` -/
 @[simps!]
@@ -204,20 +178,19 @@ def functorExtension₂ : (C ⥤ D) ⥤ Karoubi C ⥤ Karoubi D :=
   (whiskeringRight C D (Karoubi D)).obj (toKaroubi D) ⋙ functorExtension₁ C D
 #align category_theory.idempotents.functor_extension₂ CategoryTheory.Idempotents.functorExtension₂
 
-theorem functorExtension₂_comp_whiskeringLeft_toKaroubi :
-    functorExtension₂ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) =
-      (whiskeringRight C D (Karoubi D)).obj (toKaroubi D) := by
-  simp only [functorExtension₂, Functor.assoc, functorExtension₁_comp_whiskeringLeft_toKaroubi,
-    Functor.comp_id]
-#align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi CategoryTheory.Idempotents.functorExtension₂_comp_whiskeringLeft_toKaroubi
-
 /-- The natural isomorphism expressing that functors `Karoubi C ⥤ Karoubi D` obtained
 using `functorExtension₂` actually extends the original functors `C ⥤ D`. -/
 @[simps!]
 def functorExtension₂CompWhiskeringLeftToKaroubiIso :
     functorExtension₂ C D ⋙ (whiskeringLeft C (Karoubi C) (Karoubi D)).obj (toKaroubi C) ≅
       (whiskeringRight C D (Karoubi D)).obj (toKaroubi D) :=
-  eqToIso (functorExtension₂_comp_whiskeringLeft_toKaroubi C D)
+  NatIso.ofComponents
+    (fun F => NatIso.ofComponents
+      (fun X =>
+        { hom := { f := 𝟙 _ }
+          inv := { f := 𝟙 _ } })
+      (by aesop_cat))
+    (by aesop_cat)
 #align category_theory.idempotents.functor_extension₂_comp_whiskering_left_to_karoubi_iso CategoryTheory.Idempotents.functorExtension₂CompWhiskeringLeftToKaroubiIso
 
 section IsIdempotentComplete
feat: forward port of Mathlib.AlgebraicTopology.DoldKan.Equivalence (#6444)

In this PR (which is a forward port of https://github.com/leanprover-community/mathlib/pull/17926), the Dold-Kan equivalence between simplicial objects and chain complexes in abelian categories is constructed.

Co-authored-by: Joël Riou <37772949+joelriou@users.noreply.github.com>

Diff
@@ -225,7 +225,7 @@ section IsIdempotentComplete
 variable [IsIdempotentComplete D]
 
 noncomputable instance : IsEquivalence (toKaroubi D) :=
-  toKaroubi_isEquivalence D
+  toKaroubiIsEquivalence D
 
 /-- The equivalence of categories `(C ⥤ D) ≌ (Karoubi C ⥤ Karoubi D)` when `D`
 is idempotent complete. -/
@@ -247,7 +247,7 @@ when `D` is idempotent complete. -/
 @[simps!]
 noncomputable def functorExtension : (C ⥤ D) ⥤ Karoubi C ⥤ D :=
   functorExtension₂ C D ⋙
-    (whiskeringRight (Karoubi C) (Karoubi D) D).obj (toKaroubi_isEquivalence D).inverse
+    (whiskeringRight (Karoubi C) (Karoubi D) D).obj (toKaroubiIsEquivalence D).inverse
 #align category_theory.idempotents.functor_extension CategoryTheory.Idempotents.functorExtension
 
 /-- The equivalence `(C ⥤ D) ≌ (Karoubi C ⥤ D)` when `D` is idempotent complete. -/
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
@@ -37,7 +37,7 @@ namespace CategoryTheory
 
 namespace Idempotents
 
-variable {C D E : Type _} [Category C] [Category D] [Category E]
+variable {C D E : Type*} [Category C] [Category D] [Category E]
 
 /-- A natural transformation between functors `Karoubi C ⥤ D` is determined
 by its value on objects coming from `C`. -/
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 Joël Riou. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Joël Riou
-
-! This file was ported from Lean 3 source module category_theory.idempotents.functor_extension
-! leanprover-community/mathlib commit 5f68029a863bdf76029fa0f7a519e6163c14152e
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.CategoryTheory.Idempotents.Karoubi
 
+#align_import category_theory.idempotents.functor_extension from "leanprover-community/mathlib"@"5f68029a863bdf76029fa0f7a519e6163c14152e"
+
 /-!
 # Extension of functors to the idempotent completion
 
chore: fix focusing dots (#5708)

This PR is the result of running

find . -type f -name "*.lean" -exec sed -i -E 's/^( +)\. /\1· /' {} \;
find . -type f -name "*.lean" -exec sed -i -E 'N;s/^( +·)\n +(.*)$/\1 \2/;P;D' {} \;

which firstly replaces . focusing dots with · and secondly removes isolated instances of such dots, unifying them with the following line. A new rule is placed in the style linter to verify this.

Diff
@@ -121,8 +121,8 @@ theorem functorExtension₁_comp_whiskeringLeft_toKaroubi :
     refine' Functor.ext _ _
     · intro X
       ext
-      . simp
-      . simp
+      · simp
+      · simp
     · aesop_cat
   · intro F G φ
     aesop_cat
@@ -194,8 +194,8 @@ theorem functorExtension₁_comp (F : C ⥤ Karoubi D) (G : D ⥤ Karoubi E) :
     (functorExtension₁ C E).obj (F ⋙ (functorExtension₁ D E).obj G) =
       (functorExtension₁ C D).obj F ⋙ (functorExtension₁ D E).obj G := by
   refine' Functor.ext _ _
-  . aesop_cat
-  . intro X Y f
+  · aesop_cat
+  · intro X Y f
     ext
     simp only [eqToHom_refl, id_comp, comp_id]
     rfl
chore: clean up spacing around at and goals (#5387)

Changes are of the form

  • some_tactic at h⊢ -> some_tactic at h ⊢
  • some_tactic at h -> some_tactic at h
Diff
@@ -84,7 +84,7 @@ def map {F G : C ⥤ Karoubi D} (φ : F ⟶ G) : obj F ⟶ obj G where
     have h := φ.naturality f.f
     have h' := F.congr_map (comp_p f)
     have h'' := F.congr_map (p_comp f)
-    simp only [hom_ext_iff, Functor.map_comp, comp_f] at h h' h''⊢
+    simp only [hom_ext_iff, Functor.map_comp, comp_f] at h h' h'' ⊢
     slice_rhs 2 3 => rw [← h]
     slice_lhs 1 2 => rw [h']
     slice_rhs 1 2 => rw [h'']
chore: reenable eta, bump to nightly 2023-05-16 (#3414)

Now that leanprover/lean4#2210 has been merged, this PR:

  • removes all the set_option synthInstance.etaExperiment true commands (and some etaExperiment% term elaborators)
  • removes many but not quite all set_option maxHeartbeats commands
  • makes various other changes required to cope with leanprover/lean4#2210.

Co-authored-by: Scott Morrison <scott.morrison@anu.edu.au> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Matthew Ballard <matt@mrb.email>

Diff
@@ -259,7 +259,6 @@ noncomputable def karoubiUniversal : C ⥤ D ≌ Karoubi C ⥤ D :=
   (karoubiUniversal₂ C D).trans (Equivalence.congrRight (toKaroubi D).asEquivalence.symm)
 #align category_theory.idempotents.karoubi_universal CategoryTheory.Idempotents.karoubiUniversal
 
-set_option maxHeartbeats 400000 in
 theorem karoubiUniversal_functor_eq : (karoubiUniversal C D).functor = functorExtension C D :=
   rfl
 #align category_theory.idempotents.karoubi_universal_functor_eq CategoryTheory.Idempotents.karoubiUniversal_functor_eq
chore: Upgrade reassoc's simplification skills (#3531)

See zulip discussion

The only lemmas added to reassoc's simplification set are:

Functor.id_obj, Functor.id_map, Functor.comp_obj, Functor.comp_map

all of which are definitional equalities.

Diff
@@ -278,13 +278,12 @@ lemma isEquivalence_whiskeringLeft_obj_toKaroubi_aux :
 
 noncomputable instance : IsEquivalence ((whiskeringLeft C (Karoubi C) D).obj (toKaroubi C)) :=
   IsEquivalence.cancelCompRight _
-    ((whiskeringRight C _ _).obj (toKaroubi D) ⋙ (whiskeringRight C _ _).obj (toKaroubi D).inv)
-    (IsEquivalence.ofEquivalence
-      (@Equivalence.congrRight _ _ _ _ C _
-        ((toKaroubi D).asEquivalence.trans (toKaroubi D).asEquivalence.symm)))
-    (by
-      rw [isEquivalence_whiskeringLeft_obj_toKaroubi_aux]
-      infer_instance)
+  ((whiskeringRight C _ _).obj (toKaroubi D) ⋙ (whiskeringRight C _ _).obj (toKaroubi D).inv)
+  (IsEquivalence.ofEquivalence <| (toKaroubi D).asEquivalence.congrRight.trans
+    (toKaroubi D).asEquivalence.symm.congrRight)
+  (by
+    rw [isEquivalence_whiskeringLeft_obj_toKaroubi_aux]
+    infer_instance)
 
 variable {C D}
 
feat: port CategoryTheory.Idempotents.FunctorExtension (#3300)

Co-authored-by: Jeremy Tan Jie Rui <reddeloostw@gmail.com>

Dependencies 3 + 316

317 files ported (99.1%)
126028 lines ported (99.2%)
Show graph

The unported dependencies are