category_theory.closed.monoidal
⟷
Mathlib.CategoryTheory.Closed.Monoidal
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
The monoidal closed structure on Rep k G
defines an internal hom of representations; we show this agrees with representation.lin_hom
. Moreover, the maps defining the hom-set bijection come from the tensor-hom adjunction for $k$-modules.
@@ -264,6 +264,32 @@ def of_equiv (F : monoidal_functor C D) [is_equivalence F.to_functor] [h : monoi
exact adjunction.left_adjoint_of_nat_iso i,
end } }
+/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
+monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lemma describes the
+resulting currying map `Hom(X ⊗ Y, Z) → Hom(Y, (X ⟶[C] Z))`. (`X ⟶[C] Z` is defined to be
+`F⁻¹(F(X) ⟶[D] F(Z))`, so currying in `C` is given by essentially conjugating currying in
+`D` by `F.`) -/
+lemma of_equiv_curry_def (F : monoidal_functor C D) [is_equivalence F.to_functor]
+ [h : monoidal_closed D] {X Y Z : C} (f : X ⊗ Y ⟶ Z) :
+ @monoidal_closed.curry _ _ _ _ _ _ ((monoidal_closed.of_equiv F).1 _) f =
+ (F.1.1.adjunction.hom_equiv Y ((ihom _).obj _)) (monoidal_closed.curry
+ (F.1.1.inv.adjunction.hom_equiv (F.1.1.obj X ⊗ F.1.1.obj Y) Z
+ ((comp_inv_iso (F.comm_tensor_left X)).hom.app Y ≫ f))) := rfl
+
+/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
+monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lemma describes the
+resulting uncurrying map `Hom(Y, (X ⟶[C] Z)) → Hom(X ⊗ Y ⟶ Z)`. (`X ⟶[C] Z` is
+defined to be `F⁻¹(F(X) ⟶[D] F(Z))`, so uncurrying in `C` is given by essentially conjugating
+uncurrying in `D` by `F.`) -/
+lemma of_equiv_uncurry_def
+ (F : monoidal_functor C D) [is_equivalence F.to_functor] [h : monoidal_closed D] {X Y Z : C}
+ (f : Y ⟶ (@ihom _ _ _ X $ (monoidal_closed.of_equiv F).1 X).obj Z) :
+ @monoidal_closed.uncurry _ _ _ _ _ _ ((monoidal_closed.of_equiv F).1 _) f =
+ (comp_inv_iso (F.comm_tensor_left X)).inv.app Y ≫ (F.1.1.inv.adjunction.hom_equiv
+ (F.1.1.obj X ⊗ F.1.1.obj Y) Z).symm (monoidal_closed.uncurry
+ ((F.1.1.adjunction.hom_equiv Y ((ihom (F.1.1.obj X)).obj (F.1.1.obj Z))).symm f)) :=
+rfl
+
end of_equiv
end monoidal_closed
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(first ported)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -403,8 +403,8 @@ variable {D : Type u₂} [Category.{v₂} D] [MonoidalCategory.{v₂} D]
#print CategoryTheory.MonoidalClosed.ofEquiv /-
/-- Transport the property of being monoidal closed across a monoidal equivalence of categories -/
-noncomputable def ofEquiv (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
- [h : MonoidalClosed D] : MonoidalClosed C
+noncomputable def ofEquiv (F : MonoidalFunctor C D)
+ [CategoryTheory.Functor.IsEquivalence F.toFunctor] [h : MonoidalClosed D] : MonoidalClosed C
where closed' X :=
{
isAdj := by
@@ -423,8 +423,9 @@ monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lem
resulting currying map `Hom(X ⊗ Y, Z) → Hom(Y, (X ⟶[C] Z))`. (`X ⟶[C] Z` is defined to be
`F⁻¹(F(X) ⟶[D] F(Z))`, so currying in `C` is given by essentially conjugating currying in
`D` by `F.`) -/
-theorem ofEquiv_curry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
- [h : MonoidalClosed D] {X Y Z : C} (f : X ⊗ Y ⟶ Z) :
+theorem ofEquiv_curry_def (F : MonoidalFunctor C D)
+ [CategoryTheory.Functor.IsEquivalence F.toFunctor] [h : MonoidalClosed D] {X Y Z : C}
+ (f : X ⊗ Y ⟶ Z) :
@MonoidalClosed.curry _ _ _ _ _ _ ((MonoidalClosed.ofEquiv F).1 _) f =
(F.1.1.Adjunction.homEquiv Y ((ihom _).obj _))
(MonoidalClosed.curry
@@ -441,8 +442,8 @@ monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lem
resulting uncurrying map `Hom(Y, (X ⟶[C] Z)) → Hom(X ⊗ Y ⟶ Z)`. (`X ⟶[C] Z` is
defined to be `F⁻¹(F(X) ⟶[D] F(Z))`, so uncurrying in `C` is given by essentially conjugating
uncurrying in `D` by `F.`) -/
-theorem ofEquiv_uncurry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
- [h : MonoidalClosed D] {X Y Z : C}
+theorem ofEquiv_uncurry_def (F : MonoidalFunctor C D)
+ [CategoryTheory.Functor.IsEquivalence F.toFunctor] [h : MonoidalClosed D] {X Y Z : C}
(f : Y ⟶ (@ihom _ _ _ X <| (MonoidalClosed.ofEquiv F).1 X).obj Z) :
@MonoidalClosed.uncurry _ _ _ _ _ _ ((MonoidalClosed.ofEquiv F).1 _) f =
(CategoryTheory.Iso.compInvIso (F.commTensorLeft X)).inv.app Y ≫
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -429,7 +429,7 @@ theorem ofEquiv_curry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
(F.1.1.Adjunction.homEquiv Y ((ihom _).obj _))
(MonoidalClosed.curry
(F.1.1.inv.Adjunction.homEquiv (F.1.1.obj X ⊗ F.1.1.obj Y) Z
- ((compInvIso (F.commTensorLeft X)).Hom.app Y ≫ f))) :=
+ ((CategoryTheory.Iso.compInvIso (F.commTensorLeft X)).Hom.app Y ≫ f))) :=
rfl
#align category_theory.monoidal_closed.of_equiv_curry_def CategoryTheory.MonoidalClosed.ofEquiv_curry_def
-/
@@ -445,7 +445,7 @@ theorem ofEquiv_uncurry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor
[h : MonoidalClosed D] {X Y Z : C}
(f : Y ⟶ (@ihom _ _ _ X <| (MonoidalClosed.ofEquiv F).1 X).obj Z) :
@MonoidalClosed.uncurry _ _ _ _ _ _ ((MonoidalClosed.ofEquiv F).1 _) f =
- (compInvIso (F.commTensorLeft X)).inv.app Y ≫
+ (CategoryTheory.Iso.compInvIso (F.commTensorLeft X)).inv.app Y ≫
(F.1.1.inv.Adjunction.homEquiv (F.1.1.obj X ⊗ F.1.1.obj Y) Z).symm
(MonoidalClosed.uncurry
((F.1.1.Adjunction.homEquiv Y ((ihom (F.1.1.obj X)).obj (F.1.1.obj Z))).symm f)) :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,10 +3,10 @@ Copyright (c) 2020 Scott Morrison. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison, Bhavik Mehta
-/
-import Mathbin.CategoryTheory.Monoidal.Functor
-import Mathbin.CategoryTheory.Adjunction.Limits
-import Mathbin.CategoryTheory.Adjunction.Mates
-import Mathbin.CategoryTheory.Functor.InvIsos
+import CategoryTheory.Monoidal.Functor
+import CategoryTheory.Adjunction.Limits
+import CategoryTheory.Adjunction.Mates
+import CategoryTheory.Functor.InvIsos
#align_import category_theory.closed.monoidal from "leanprover-community/mathlib"@"0caf3701139ef2e69c215717665361cda205a90b"
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,17 +2,14 @@
Copyright (c) 2020 Scott Morrison. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison, Bhavik Mehta
-
-! This file was ported from Lean 3 source module category_theory.closed.monoidal
-! leanprover-community/mathlib commit 0caf3701139ef2e69c215717665361cda205a90b
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.CategoryTheory.Monoidal.Functor
import Mathbin.CategoryTheory.Adjunction.Limits
import Mathbin.CategoryTheory.Adjunction.Mates
import Mathbin.CategoryTheory.Functor.InvIsos
+#align_import category_theory.closed.monoidal from "leanprover-community/mathlib"@"0caf3701139ef2e69c215717665361cda205a90b"
+
/-!
# Closed monoidal categories
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -139,34 +139,41 @@ theorem ihom_adjunction_unit : (ihom.adjunction A).Unit = coev A :=
-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.ihom.ev_naturality /-
@[simp, reassoc]
theorem ev_naturality {X Y : C} (f : X ⟶ Y) :
(𝟙 A ⊗ (ihom A).map f) ≫ (ev A).app Y = (ev A).app X ≫ f :=
(ev A).naturality f
#align category_theory.ihom.ev_naturality CategoryTheory.ihom.ev_naturality
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.ihom.coev_naturality /-
@[simp, reassoc]
theorem coev_naturality {X Y : C} (f : X ⟶ Y) :
f ≫ (coev A).app Y = (coev A).app X ≫ (ihom A).map (𝟙 A ⊗ f) :=
(coev A).naturality f
#align category_theory.ihom.coev_naturality CategoryTheory.ihom.coev_naturality
+-/
--- mathport name: ihom
notation A " ⟶[" C "] " B:10 => (@ihom C _ _ A _).obj B
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.ihom.ev_coev /-
@[simp, reassoc]
theorem ev_coev : (𝟙 A ⊗ (coev A).app B) ≫ (ev A).app (A ⊗ B) = 𝟙 (A ⊗ B) :=
Adjunction.left_triangle_components (ihom.adjunction A)
#align category_theory.ihom.ev_coev CategoryTheory.ihom.ev_coev
+-/
+#print CategoryTheory.ihom.coev_ev /-
@[simp, reassoc]
theorem coev_ev : (coev A).app (A ⟶[C] B) ≫ (ihom A).map ((ev A).app B) = 𝟙 (A ⟶[C] B) :=
Adjunction.right_triangle_components (ihom.adjunction A)
#align category_theory.ihom.coev_ev CategoryTheory.ihom.coev_ev
+-/
end Ihom
@@ -181,55 +188,71 @@ variable {A}
namespace MonoidalClosed
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.curry /-
/-- Currying in a monoidal closed category. -/
def curry : (A ⊗ Y ⟶ X) → (Y ⟶ A ⟶[C] X) :=
(ihom.adjunction A).homEquiv _ _
#align category_theory.monoidal_closed.curry CategoryTheory.MonoidalClosed.curry
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.uncurry /-
/-- Uncurrying in a monoidal closed category. -/
def uncurry : (Y ⟶ A ⟶[C] X) → (A ⊗ Y ⟶ X) :=
((ihom.adjunction A).homEquiv _ _).symm
#align category_theory.monoidal_closed.uncurry CategoryTheory.MonoidalClosed.uncurry
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.homEquiv_apply_eq /-
@[simp]
theorem homEquiv_apply_eq (f : A ⊗ Y ⟶ X) : (ihom.adjunction A).homEquiv _ _ f = curry f :=
rfl
#align category_theory.monoidal_closed.hom_equiv_apply_eq CategoryTheory.MonoidalClosed.homEquiv_apply_eq
+-/
+#print CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eq /-
@[simp]
theorem homEquiv_symm_apply_eq (f : Y ⟶ A ⟶[C] X) :
((ihom.adjunction A).homEquiv _ _).symm f = uncurry f :=
rfl
#align category_theory.monoidal_closed.hom_equiv_symm_apply_eq CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eq
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.curry_natural_left /-
@[reassoc]
theorem curry_natural_left (f : X ⟶ X') (g : A ⊗ X' ⟶ Y) : curry ((𝟙 _ ⊗ f) ≫ g) = f ≫ curry g :=
Adjunction.homEquiv_naturality_left _ _ _
#align category_theory.monoidal_closed.curry_natural_left CategoryTheory.MonoidalClosed.curry_natural_left
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.curry_natural_right /-
@[reassoc]
theorem curry_natural_right (f : A ⊗ X ⟶ Y) (g : Y ⟶ Y') :
curry (f ≫ g) = curry f ≫ (ihom _).map g :=
Adjunction.homEquiv_naturality_right _ _ _
#align category_theory.monoidal_closed.curry_natural_right CategoryTheory.MonoidalClosed.curry_natural_right
+-/
+#print CategoryTheory.MonoidalClosed.uncurry_natural_right /-
@[reassoc]
theorem uncurry_natural_right (f : X ⟶ A ⟶[C] Y) (g : Y ⟶ Y') :
uncurry (f ≫ (ihom _).map g) = uncurry f ≫ g :=
Adjunction.homEquiv_naturality_right_symm _ _ _
#align category_theory.monoidal_closed.uncurry_natural_right CategoryTheory.MonoidalClosed.uncurry_natural_right
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.uncurry_natural_left /-
@[reassoc]
theorem uncurry_natural_left (f : X ⟶ X') (g : X' ⟶ A ⟶[C] Y) :
uncurry (f ≫ g) = (𝟙 _ ⊗ f) ≫ uncurry g :=
Adjunction.homEquiv_naturality_left_symm _ _ _
#align category_theory.monoidal_closed.uncurry_natural_left CategoryTheory.MonoidalClosed.uncurry_natural_left
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
#print CategoryTheory.MonoidalClosed.uncurry_curry /-
@@ -239,52 +262,70 @@ theorem uncurry_curry (f : A ⊗ X ⟶ Y) : uncurry (curry f) = f :=
#align category_theory.monoidal_closed.uncurry_curry CategoryTheory.MonoidalClosed.uncurry_curry
-/
+#print CategoryTheory.MonoidalClosed.curry_uncurry /-
@[simp]
theorem curry_uncurry (f : X ⟶ A ⟶[C] Y) : curry (uncurry f) = f :=
(Closed.isAdj.adj.homEquiv _ _).right_inv f
#align category_theory.monoidal_closed.curry_uncurry CategoryTheory.MonoidalClosed.curry_uncurry
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.curry_eq_iff /-
theorem curry_eq_iff (f : A ⊗ Y ⟶ X) (g : Y ⟶ A ⟶[C] X) : curry f = g ↔ f = uncurry g :=
Adjunction.homEquiv_apply_eq _ f g
#align category_theory.monoidal_closed.curry_eq_iff CategoryTheory.MonoidalClosed.curry_eq_iff
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.eq_curry_iff /-
theorem eq_curry_iff (f : A ⊗ Y ⟶ X) (g : Y ⟶ A ⟶[C] X) : g = curry f ↔ uncurry g = f :=
Adjunction.eq_homEquiv_apply _ f g
#align category_theory.monoidal_closed.eq_curry_iff CategoryTheory.MonoidalClosed.eq_curry_iff
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.uncurry_eq /-
-- I don't think these two should be simp.
theorem uncurry_eq (g : Y ⟶ A ⟶[C] X) : uncurry g = (𝟙 A ⊗ g) ≫ (ihom.ev A).app X :=
Adjunction.homEquiv_counit _
#align category_theory.monoidal_closed.uncurry_eq CategoryTheory.MonoidalClosed.uncurry_eq
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.curry_eq /-
theorem curry_eq (g : A ⊗ Y ⟶ X) : curry g = (ihom.coev A).app Y ≫ (ihom A).map g :=
Adjunction.homEquiv_unit _
#align category_theory.monoidal_closed.curry_eq CategoryTheory.MonoidalClosed.curry_eq
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.curry_injective /-
theorem curry_injective : Function.Injective (curry : (A ⊗ Y ⟶ X) → (Y ⟶ A ⟶[C] X)) :=
(Closed.isAdj.adj.homEquiv _ _).Injective
#align category_theory.monoidal_closed.curry_injective CategoryTheory.MonoidalClosed.curry_injective
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.uncurry_injective /-
theorem uncurry_injective : Function.Injective (uncurry : (Y ⟶ A ⟶[C] X) → (A ⊗ Y ⟶ X)) :=
(Closed.isAdj.adj.homEquiv _ _).symm.Injective
#align category_theory.monoidal_closed.uncurry_injective CategoryTheory.MonoidalClosed.uncurry_injective
+-/
variable (A X)
+#print CategoryTheory.MonoidalClosed.uncurry_id_eq_ev /-
theorem uncurry_id_eq_ev : uncurry (𝟙 (A ⟶[C] X)) = (ihom.ev A).app X := by
rw [uncurry_eq, tensor_id, id_comp]
#align category_theory.monoidal_closed.uncurry_id_eq_ev CategoryTheory.MonoidalClosed.uncurry_id_eq_ev
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.curry_id_eq_coev /-
theorem curry_id_eq_coev : curry (𝟙 _) = (ihom.coev A).app X := by
rw [curry_eq, (ihom A).map_id (A ⊗ _)]; apply comp_id
#align category_theory.monoidal_closed.curry_id_eq_coev CategoryTheory.MonoidalClosed.curry_id_eq_coev
+-/
section Pre
@@ -299,26 +340,32 @@ def pre (f : B ⟶ A) : ihom A ⟶ ihom B :=
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.id_tensor_pre_app_comp_ev /-
@[simp, reassoc]
theorem id_tensor_pre_app_comp_ev (f : B ⟶ A) (X : C) :
(𝟙 B ⊗ (pre f).app X) ≫ (ihom.ev B).app X = (f ⊗ 𝟙 (A ⟶[C] X)) ≫ (ihom.ev A).app X :=
transferNatTransSelf_counit _ _ ((tensoringLeft C).map f) X
#align category_theory.monoidal_closed.id_tensor_pre_app_comp_ev CategoryTheory.MonoidalClosed.id_tensor_pre_app_comp_ev
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.uncurry_pre /-
@[simp]
theorem uncurry_pre (f : B ⟶ A) (X : C) :
MonoidalClosed.uncurry ((pre f).app X) = (f ⊗ 𝟙 _) ≫ (ihom.ev A).app X := by
rw [uncurry_eq, id_tensor_pre_app_comp_ev]
#align category_theory.monoidal_closed.uncurry_pre CategoryTheory.MonoidalClosed.uncurry_pre
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.coev_app_comp_pre_app /-
@[simp, reassoc]
theorem coev_app_comp_pre_app (f : B ⟶ A) :
(ihom.coev A).app X ≫ (pre f).app (A ⊗ X) = (ihom.coev B).app X ≫ (ihom B).map (f ⊗ 𝟙 _) :=
unit_transferNatTransSelf _ _ ((tensoringLeft C).map f) X
#align category_theory.monoidal_closed.coev_app_comp_pre_app CategoryTheory.MonoidalClosed.coev_app_comp_pre_app
+-/
#print CategoryTheory.MonoidalClosed.pre_id /-
@[simp]
@@ -335,9 +382,11 @@ theorem pre_map {A₁ A₂ A₃ : C} [Closed A₁] [Closed A₂] [Closed A₃] (
#align category_theory.monoidal_closed.pre_map CategoryTheory.MonoidalClosed.pre_map
-/
+#print CategoryTheory.MonoidalClosed.pre_comm_ihom_map /-
theorem pre_comm_ihom_map {W X Y Z : C} [Closed W] [Closed X] (f : W ⟶ X) (g : Y ⟶ Z) :
(pre f).app Y ≫ (ihom W).map g = (ihom X).map g ≫ (pre f).app Z := by simp
#align category_theory.monoidal_closed.pre_comm_ihom_map CategoryTheory.MonoidalClosed.pre_comm_ihom_map
+-/
end Pre
@@ -371,6 +420,7 @@ noncomputable def ofEquiv (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.ofEquiv_curry_def /-
/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lemma describes the
resulting currying map `Hom(X ⊗ Y, Z) → Hom(Y, (X ⟶[C] Z))`. (`X ⟶[C] Z` is defined to be
@@ -385,8 +435,10 @@ theorem ofEquiv_curry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
((compInvIso (F.commTensorLeft X)).Hom.app Y ≫ f))) :=
rfl
#align category_theory.monoidal_closed.of_equiv_curry_def CategoryTheory.MonoidalClosed.ofEquiv_curry_def
+-/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.ofEquiv_uncurry_def /-
/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lemma describes the
resulting uncurrying map `Hom(Y, (X ⟶[C] Z)) → Hom(X ⊗ Y ⟶ Z)`. (`X ⟶[C] Z` is
@@ -402,6 +454,7 @@ theorem ofEquiv_uncurry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor
((F.1.1.Adjunction.homEquiv Y ((ihom (F.1.1.obj X)).obj (F.1.1.obj Z))).symm f)) :=
rfl
#align category_theory.monoidal_closed.of_equiv_uncurry_def CategoryTheory.MonoidalClosed.ofEquiv_uncurry_def
+-/
end OfEquiv
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -138,12 +138,6 @@ theorem ihom_adjunction_unit : (ihom.adjunction A).Unit = coev A :=
#align category_theory.ihom.ihom_adjunction_unit CategoryTheory.ihom.ihom_adjunction_unit
-/
-/- warning: category_theory.ihom.ev_naturality -> CategoryTheory.ihom.ev_naturality is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] {X : C} {Y : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) Y) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X Y f)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) Y) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) f)
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] {X : C} {Y : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) Y) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X Y f)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A))) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) Y (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) f)
-Case conversion may be inaccurate. Consider using '#align category_theory.ihom.ev_naturality CategoryTheory.ihom.ev_naturalityₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp, reassoc]
theorem ev_naturality {X Y : C} (f : X ⟶ Y) :
@@ -151,12 +145,6 @@ theorem ev_naturality {X Y : C} (f : X ⟶ Y) :
(ev A).naturality f
#align category_theory.ihom.ev_naturality CategoryTheory.ihom.ev_naturality
-/- warning: category_theory.ihom.coev_naturality -> CategoryTheory.ihom.coev_naturality is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] {X : C} {Y : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) f (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X Y (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f)))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] {X : C} {Y : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) Y) f (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X Y (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f)))
-Case conversion may be inaccurate. Consider using '#align category_theory.ihom.coev_naturality CategoryTheory.ihom.coev_naturalityₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp, reassoc]
theorem coev_naturality {X Y : C} (f : X ⟶ Y) :
@@ -167,12 +155,6 @@ theorem coev_naturality {X Y : C} (f : X ⟶ Y) :
-- mathport name: ihom
notation A " ⟶[" C "] " B:10 => (@ihom C _ _ A _).obj B
-/- warning: category_theory.ihom.ev_coev -> CategoryTheory.ihom.ev_coev is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (B : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) B)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) B))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) B)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) B)) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) B) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A B))) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A B))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (B : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A B))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A B)) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) B) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A B))) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A B))
-Case conversion may be inaccurate. Consider using '#align category_theory.ihom.ev_coev CategoryTheory.ihom.ev_coevₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@@ -181,9 +163,6 @@ theorem ev_coev : (𝟙 A ⊗ (coev A).app B) ≫ (ev A).app (A ⊗ B) = 𝟙 (A
Adjunction.left_triangle_components (ihom.adjunction A)
#align category_theory.ihom.ev_coev CategoryTheory.ihom.ev_coev
-/- warning: category_theory.ihom.coev_ev -> CategoryTheory.ihom.coev_ev is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.ihom.coev_ev CategoryTheory.ihom.coev_evₓ'. -/
@[simp, reassoc]
theorem coev_ev : (coev A).app (A ⟶[C] B) ≫ (ihom A).map ((ev A).app B) = 𝟙 (A ⟶[C] B) :=
Adjunction.right_triangle_components (ihom.adjunction A)
@@ -201,54 +180,30 @@ variable {A}
-- Wrap these in a namespace so we don't clash with the core versions.
namespace MonoidalClosed
-/- warning: category_theory.monoidal_closed.curry -> CategoryTheory.MonoidalClosed.curry is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry CategoryTheory.MonoidalClosed.curryₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/-- Currying in a monoidal closed category. -/
def curry : (A ⊗ Y ⟶ X) → (Y ⟶ A ⟶[C] X) :=
(ihom.adjunction A).homEquiv _ _
#align category_theory.monoidal_closed.curry CategoryTheory.MonoidalClosed.curry
-/- warning: category_theory.monoidal_closed.uncurry -> CategoryTheory.MonoidalClosed.uncurry is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X)
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X)
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry CategoryTheory.MonoidalClosed.uncurryₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/-- Uncurrying in a monoidal closed category. -/
def uncurry : (Y ⟶ A ⟶[C] X) → (A ⊗ Y ⟶ X) :=
((ihom.adjunction A).homEquiv _ _).symm
#align category_theory.monoidal_closed.uncurry CategoryTheory.MonoidalClosed.uncurry
-/- warning: category_theory.monoidal_closed.hom_equiv_apply_eq -> CategoryTheory.MonoidalClosed.homEquiv_apply_eq is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.hom_equiv_apply_eq CategoryTheory.MonoidalClosed.homEquiv_apply_eqₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp]
theorem homEquiv_apply_eq (f : A ⊗ Y ⟶ X) : (ihom.adjunction A).homEquiv _ _ f = curry f :=
rfl
#align category_theory.monoidal_closed.hom_equiv_apply_eq CategoryTheory.MonoidalClosed.homEquiv_apply_eq
-/- warning: category_theory.monoidal_closed.hom_equiv_symm_apply_eq -> CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eq is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.hom_equiv_symm_apply_eq CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eqₓ'. -/
@[simp]
theorem homEquiv_symm_apply_eq (f : Y ⟶ A ⟶[C] X) :
((ihom.adjunction A).homEquiv _ _).symm f = uncurry f :=
rfl
#align category_theory.monoidal_closed.hom_equiv_symm_apply_eq CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eq
-/- warning: category_theory.monoidal_closed.curry_natural_left -> CategoryTheory.MonoidalClosed.curry_natural_left is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {X' : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X X') (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X') Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X') Y (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X X' (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f) g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X X' (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) f (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X' _inst_3 g))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {X' : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X X') (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X') Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X') Y (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X X' (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f) g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X X' (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) f (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X' _inst_3 g))
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_natural_left CategoryTheory.MonoidalClosed.curry_natural_leftₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[reassoc]
@@ -256,12 +211,6 @@ theorem curry_natural_left (f : X ⟶ X') (g : A ⊗ X' ⟶ Y) : curry ((𝟙 _
Adjunction.homEquiv_naturality_left _ _ _
#align category_theory.monoidal_closed.curry_natural_left CategoryTheory.MonoidalClosed.curry_natural_left
-/- warning: category_theory.monoidal_closed.curry_natural_right -> CategoryTheory.MonoidalClosed.curry_natural_right is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} {Y' : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Y'), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y')) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y' X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y Y' f g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y') (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y Y' g))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} {Y' : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Y'), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y')) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y' X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y Y' f g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y') (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y Y' g))
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_natural_right CategoryTheory.MonoidalClosed.curry_natural_rightₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[reassoc]
theorem curry_natural_right (f : A ⊗ X ⟶ Y) (g : Y ⟶ Y') :
@@ -269,24 +218,12 @@ theorem curry_natural_right (f : A ⊗ X ⟶ Y) (g : Y ⟶ Y') :
Adjunction.homEquiv_naturality_right _ _ _
#align category_theory.monoidal_closed.curry_natural_right CategoryTheory.MonoidalClosed.curry_natural_right
-/- warning: category_theory.monoidal_closed.uncurry_natural_right -> CategoryTheory.MonoidalClosed.uncurry_natural_right is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} {Y' : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Y'), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y') (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y' X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y') f (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y Y' g))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y Y' (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f) g)
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} {Y' : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Y'), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y') (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y' X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y') f (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y Y' g))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y Y' (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f) g)
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_natural_right CategoryTheory.MonoidalClosed.uncurry_natural_rightₓ'. -/
@[reassoc]
theorem uncurry_natural_right (f : X ⟶ A ⟶[C] Y) (g : Y ⟶ Y') :
uncurry (f ≫ (ihom _).map g) = uncurry f ≫ g :=
Adjunction.homEquiv_naturality_right_symm _ _ _
#align category_theory.monoidal_closed.uncurry_natural_right CategoryTheory.MonoidalClosed.uncurry_natural_right
-/- warning: category_theory.monoidal_closed.uncurry_natural_left -> CategoryTheory.MonoidalClosed.uncurry_natural_left is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {X' : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X X') (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X' (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X X' (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) f g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X') Y (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X X' (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X' _inst_3 g))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {X' : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X X') (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X' (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X X' (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) f g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X') Y (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X X' (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X' _inst_3 g))
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_natural_left CategoryTheory.MonoidalClosed.uncurry_natural_leftₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[reassoc]
theorem uncurry_natural_left (f : X ⟶ X') (g : X' ⟶ A ⟶[C] Y) :
@@ -302,79 +239,37 @@ theorem uncurry_curry (f : A ⊗ X ⟶ Y) : uncurry (curry f) = f :=
#align category_theory.monoidal_closed.uncurry_curry CategoryTheory.MonoidalClosed.uncurry_curry
-/
-/- warning: category_theory.monoidal_closed.curry_uncurry -> CategoryTheory.MonoidalClosed.curry_uncurry is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f)) f
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f)) f
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_uncurry CategoryTheory.MonoidalClosed.curry_uncurryₓ'. -/
@[simp]
theorem curry_uncurry (f : X ⟶ A ⟶[C] Y) : curry (uncurry f) = f :=
(Closed.isAdj.adj.homEquiv _ _).right_inv f
#align category_theory.monoidal_closed.curry_uncurry CategoryTheory.MonoidalClosed.curry_uncurry
-/- warning: category_theory.monoidal_closed.curry_eq_iff -> CategoryTheory.MonoidalClosed.curry_eq_iff is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)), Iff (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f) g) (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) f (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)), Iff (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f) g) (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) f (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g))
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_eq_iff CategoryTheory.MonoidalClosed.curry_eq_iffₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
theorem curry_eq_iff (f : A ⊗ Y ⟶ X) (g : Y ⟶ A ⟶[C] X) : curry f = g ↔ f = uncurry g :=
Adjunction.homEquiv_apply_eq _ f g
#align category_theory.monoidal_closed.curry_eq_iff CategoryTheory.MonoidalClosed.curry_eq_iff
-/- warning: category_theory.monoidal_closed.eq_curry_iff -> CategoryTheory.MonoidalClosed.eq_curry_iff is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)), Iff (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) g (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)) (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g) f)
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)), Iff (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) g (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)) (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g) f)
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.eq_curry_iff CategoryTheory.MonoidalClosed.eq_curry_iffₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
theorem eq_curry_iff (f : A ⊗ Y ⟶ X) (g : Y ⟶ A ⟶[C] X) : g = curry f ↔ uncurry g = f :=
Adjunction.eq_homEquiv_apply _ f g
#align category_theory.monoidal_closed.eq_curry_iff CategoryTheory.MonoidalClosed.eq_curry_iff
-/- warning: category_theory.monoidal_closed.uncurry_eq -> CategoryTheory.MonoidalClosed.uncurry_eq is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) X (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) g) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) g) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_eq CategoryTheory.MonoidalClosed.uncurry_eqₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
-- I don't think these two should be simp.
theorem uncurry_eq (g : Y ⟶ A ⟶[C] X) : uncurry g = (𝟙 A ⊗ g) ≫ (ihom.ev A).app X :=
Adjunction.homEquiv_counit _
#align category_theory.monoidal_closed.uncurry_eq CategoryTheory.MonoidalClosed.uncurry_eq
-/- warning: category_theory.monoidal_closed.curry_eq -> CategoryTheory.MonoidalClosed.curry_eq is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X g))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X g))
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_eq CategoryTheory.MonoidalClosed.curry_eqₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
theorem curry_eq (g : A ⊗ Y ⟶ X) : curry g = (ihom.coev A).app Y ≫ (ihom A).map g :=
Adjunction.homEquiv_unit _
#align category_theory.monoidal_closed.curry_eq CategoryTheory.MonoidalClosed.curry_eq
-/- warning: category_theory.monoidal_closed.curry_injective -> CategoryTheory.MonoidalClosed.curry_injective is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Function.Injective.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3)
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Function.Injective.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3)
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_injective CategoryTheory.MonoidalClosed.curry_injectiveₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
theorem curry_injective : Function.Injective (curry : (A ⊗ Y ⟶ X) → (Y ⟶ A ⟶[C] X)) :=
(Closed.isAdj.adj.homEquiv _ _).Injective
#align category_theory.monoidal_closed.curry_injective CategoryTheory.MonoidalClosed.curry_injective
-/- warning: category_theory.monoidal_closed.uncurry_injective -> CategoryTheory.MonoidalClosed.uncurry_injective is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Function.Injective.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3)
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Function.Injective.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3)
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_injective CategoryTheory.MonoidalClosed.uncurry_injectiveₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
theorem uncurry_injective : Function.Injective (uncurry : (Y ⟶ A ⟶[C] X) → (A ⊗ Y ⟶ X)) :=
(Closed.isAdj.adj.homEquiv _ _).symm.Injective
@@ -382,22 +277,10 @@ theorem uncurry_injective : Function.Injective (uncurry : (Y ⟶ A ⟶[C] X) →
variable (A X)
-/- warning: category_theory.monoidal_closed.uncurry_id_eq_ev -> CategoryTheory.MonoidalClosed.uncurry_id_eq_ev is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (X : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) _inst_3 (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (X : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) _inst_3 (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_id_eq_ev CategoryTheory.MonoidalClosed.uncurry_id_eq_evₓ'. -/
theorem uncurry_id_eq_ev : uncurry (𝟙 (A ⟶[C] X)) = (ihom.ev A).app X := by
rw [uncurry_eq, tensor_id, id_comp]
#align category_theory.monoidal_closed.uncurry_id_eq_ev CategoryTheory.MonoidalClosed.uncurry_id_eq_ev
-/- warning: category_theory.monoidal_closed.curry_id_eq_coev -> CategoryTheory.MonoidalClosed.curry_id_eq_coev is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (X : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X)))) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) _inst_3 (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X)))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (X : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X)))) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) _inst_3 (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X)))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_id_eq_coev CategoryTheory.MonoidalClosed.curry_id_eq_coevₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
theorem curry_id_eq_coev : curry (𝟙 _) = (ihom.coev A).app X := by
rw [curry_eq, (ihom A).map_id (A ⊗ _)]; apply comp_id
@@ -414,9 +297,6 @@ def pre (f : B ⟶ A) : ihom A ⟶ ihom B :=
#align category_theory.monoidal_closed.pre CategoryTheory.MonoidalClosed.pre
-/
-/- warning: category_theory.monoidal_closed.id_tensor_pre_app_comp_ev -> CategoryTheory.MonoidalClosed.id_tensor_pre_app_comp_ev is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.id_tensor_pre_app_comp_ev CategoryTheory.MonoidalClosed.id_tensor_pre_app_comp_evₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp, reassoc]
@@ -425,12 +305,6 @@ theorem id_tensor_pre_app_comp_ev (f : B ⟶ A) (X : C) :
transferNatTransSelf_counit _ _ ((tensoringLeft C).map f) X
#align category_theory.monoidal_closed.id_tensor_pre_app_comp_ev CategoryTheory.MonoidalClosed.id_tensor_pre_app_comp_ev
-/- warning: category_theory.monoidal_closed.uncurry_pre -> CategoryTheory.MonoidalClosed.uncurry_pre is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {B : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] [_inst_4 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 B] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) B A) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 B X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) _inst_4 (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 A B _inst_3 _inst_4 f) X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) X (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) f (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {B : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] [_inst_4 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 B] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) B A) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 B X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) _inst_4 (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 A B _inst_3 _inst_4 f) X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) f (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_pre CategoryTheory.MonoidalClosed.uncurry_preₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp]
theorem uncurry_pre (f : B ⟶ A) (X : C) :
@@ -438,9 +312,6 @@ theorem uncurry_pre (f : B ⟶ A) (X : C) :
rw [uncurry_eq, id_tensor_pre_app_comp_ev]
#align category_theory.monoidal_closed.uncurry_pre CategoryTheory.MonoidalClosed.uncurry_pre
-/- warning: category_theory.monoidal_closed.coev_app_comp_pre_app -> CategoryTheory.MonoidalClosed.coev_app_comp_pre_app is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.coev_app_comp_pre_app CategoryTheory.MonoidalClosed.coev_app_comp_pre_appₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp, reassoc]
@@ -464,12 +335,6 @@ theorem pre_map {A₁ A₂ A₃ : C} [Closed A₁] [Closed A₂] [Closed A₃] (
#align category_theory.monoidal_closed.pre_map CategoryTheory.MonoidalClosed.pre_map
-/
-/- warning: category_theory.monoidal_closed.pre_comm_ihom_map -> CategoryTheory.MonoidalClosed.pre_comm_ihom_map is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {W : C} {X : C} {Y : C} {Z : C} [_inst_5 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 W] [_inst_6 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 X] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) W X) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Z), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) Z)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) Z) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 X W _inst_6 _inst_5 f) Y) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) Y Z g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) Z) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) Z) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) Y Z g) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 X W _inst_6 _inst_5 f) Z))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {W : C} {X : C} {Y : C} {Z : C} [_inst_5 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 W] [_inst_6 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 X] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) W X) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Z), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5)) Z)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5)) Z) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 X W _inst_6 _inst_5 f) Y) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5)) Y Z g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6)) Z) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5)) Z) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6)) Y Z g) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 X W _inst_6 _inst_5 f) Z))
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.pre_comm_ihom_map CategoryTheory.MonoidalClosed.pre_comm_ihom_mapₓ'. -/
theorem pre_comm_ihom_map {W X Y Z : C} [Closed W] [Closed X] (f : W ⟶ X) (g : Y ⟶ Z) :
(pre f).app Y ≫ (ihom W).map g = (ihom X).map g ≫ (pre f).app Z := by simp
#align category_theory.monoidal_closed.pre_comm_ihom_map CategoryTheory.MonoidalClosed.pre_comm_ihom_map
@@ -504,9 +369,6 @@ noncomputable def ofEquiv (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
#align category_theory.monoidal_closed.of_equiv CategoryTheory.MonoidalClosed.ofEquiv
-/
-/- warning: category_theory.monoidal_closed.of_equiv_curry_def -> CategoryTheory.MonoidalClosed.ofEquiv_curry_def is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.of_equiv_curry_def CategoryTheory.MonoidalClosed.ofEquiv_curry_defₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
@@ -524,9 +386,6 @@ theorem ofEquiv_curry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
rfl
#align category_theory.monoidal_closed.of_equiv_curry_def CategoryTheory.MonoidalClosed.ofEquiv_curry_def
-/- warning: category_theory.monoidal_closed.of_equiv_uncurry_def -> CategoryTheory.MonoidalClosed.ofEquiv_uncurry_def is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.of_equiv_uncurry_def CategoryTheory.MonoidalClosed.ofEquiv_uncurry_defₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lemma describes the
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -84,9 +84,7 @@ def unitClosed : Closed (𝟙_ C)
invFun := fun a => (leftUnitor X).Hom ≫ a
left_inv := by tidy
right_inv := by tidy }
- homEquiv_naturality_left_symm := fun X' X Y f g =>
- by
- dsimp
+ homEquiv_naturality_left_symm := fun X' X Y f g => by dsimp;
rw [left_unitor_naturality_assoc] } }
#align category_theory.unit_closed CategoryTheory.unitClosed
-/
@@ -401,10 +399,8 @@ but is expected to have type
forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (X : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X)))) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) _inst_3 (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X)))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_id_eq_coev CategoryTheory.MonoidalClosed.curry_id_eq_coevₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
-theorem curry_id_eq_coev : curry (𝟙 _) = (ihom.coev A).app X :=
- by
- rw [curry_eq, (ihom A).map_id (A ⊗ _)]
- apply comp_id
+theorem curry_id_eq_coev : curry (𝟙 _) = (ihom.coev A).app X := by
+ rw [curry_eq, (ihom A).map_id (A ⊗ _)]; apply comp_id
#align category_theory.monoidal_closed.curry_id_eq_coev CategoryTheory.MonoidalClosed.curry_id_eq_coev
section Pre
@@ -455,10 +451,7 @@ theorem coev_app_comp_pre_app (f : B ⟶ A) :
#print CategoryTheory.MonoidalClosed.pre_id /-
@[simp]
-theorem pre_id (A : C) [Closed A] : pre (𝟙 A) = 𝟙 _ :=
- by
- simp only [pre, Functor.map_id]
- dsimp
+theorem pre_id (A : C) [Closed A] : pre (𝟙 A) = 𝟙 _ := by simp only [pre, Functor.map_id]; dsimp;
simp
#align category_theory.monoidal_closed.pre_id CategoryTheory.MonoidalClosed.pre_id
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -184,10 +184,7 @@ theorem ev_coev : (𝟙 A ⊗ (coev A).app B) ≫ (ev A).app (A ⊗ B) = 𝟙 (A
#align category_theory.ihom.ev_coev CategoryTheory.ihom.ev_coev
/- warning: category_theory.ihom.coev_ev -> CategoryTheory.ihom.coev_ev is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (B : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) B))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) B)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) B) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) B))) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) B))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (B : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) B))) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B))
+<too large>
Case conversion may be inaccurate. Consider using '#align category_theory.ihom.coev_ev CategoryTheory.ihom.coev_evₓ'. -/
@[simp, reassoc]
theorem coev_ev : (coev A).app (A ⟶[C] B) ≫ (ihom A).map ((ev A).app B) = 𝟙 (A ⟶[C] B) :=
@@ -231,10 +228,7 @@ def uncurry : (Y ⟶ A ⟶[C] X) → (A ⊗ Y ⟶ X) :=
#align category_theory.monoidal_closed.uncurry CategoryTheory.MonoidalClosed.uncurry
/- warning: category_theory.monoidal_closed.hom_equiv_apply_eq -> CategoryTheory.MonoidalClosed.homEquiv_apply_eq is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (coeFn.{succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (fun (_x : Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) => (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (Equiv.hasCoeToFun.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X) f) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X), Eq.{succ u1} ((fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) f) (FunLike.coe.{succ u1, succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X) f) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
+<too large>
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.hom_equiv_apply_eq CategoryTheory.MonoidalClosed.homEquiv_apply_eqₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp]
@@ -243,10 +237,7 @@ theorem homEquiv_apply_eq (f : A ⊗ Y ⟶ X) : (ihom.adjunction A).homEquiv _ _
#align category_theory.monoidal_closed.hom_equiv_apply_eq CategoryTheory.MonoidalClosed.homEquiv_apply_eq
/- warning: category_theory.monoidal_closed.hom_equiv_symm_apply_eq -> CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eq is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (coeFn.{succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X)) (fun (_x : Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X)) => (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X)) (Equiv.hasCoeToFun.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X)) (Equiv.symm.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X)) f) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)), Eq.{succ u1} ((fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) f) (FunLike.coe.{succ u1, succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X)) (Equiv.symm.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X)) f) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
+<too large>
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.hom_equiv_symm_apply_eq CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eqₓ'. -/
@[simp]
theorem homEquiv_symm_apply_eq (f : Y ⟶ A ⟶[C] X) :
@@ -428,10 +419,7 @@ def pre (f : B ⟶ A) : ihom A ⟶ ihom B :=
-/
/- warning: category_theory.monoidal_closed.id_tensor_pre_app_comp_ev -> CategoryTheory.MonoidalClosed.id_tensor_pre_app_comp_ev is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {B : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] [_inst_4 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 B] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) B A) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) X)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) X) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) B) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 A B _inst_3 _inst_4 f) X)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 B _inst_4) X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) f (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {B : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] [_inst_4 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 B] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) B A) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) X) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) B) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 A B _inst_3 _inst_4 f) X)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 B _inst_4) X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) f (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
+<too large>
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.id_tensor_pre_app_comp_ev CategoryTheory.MonoidalClosed.id_tensor_pre_app_comp_evₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@@ -455,10 +443,7 @@ theorem uncurry_pre (f : B ⟶ A) (X : C) :
#align category_theory.monoidal_closed.uncurry_pre CategoryTheory.MonoidalClosed.uncurry_pre
/- warning: category_theory.monoidal_closed.coev_app_comp_pre_app -> CategoryTheory.MonoidalClosed.coev_app_comp_pre_app is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {B : C} (X : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] [_inst_4 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 B] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) B A), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) X))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) X)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 A B _inst_3 _inst_4 f) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) X)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 B _inst_4) X) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B A X X f (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X))))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {B : C} (X : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] [_inst_4 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 B] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) B A), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 A B _inst_3 _inst_4 f) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4))) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 B _inst_4) X) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B)) X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B A X X f (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X))))
+<too large>
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.coev_app_comp_pre_app CategoryTheory.MonoidalClosed.coev_app_comp_pre_appₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@@ -527,10 +512,7 @@ noncomputable def ofEquiv (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
-/
/- warning: category_theory.monoidal_closed.of_equiv_curry_def -> CategoryTheory.MonoidalClosed.ofEquiv_curry_def is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed'.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X)) Z)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed'.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (coeFn.{max 1 (max (succ u4) (succ u1)) (succ u1) (succ u4), max (succ u4) (succ u1)} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))))) (fun (_x : Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))))) => (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))))) (Equiv.hasCoeToFun.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (CategoryTheory.MonoidalClosed.curry.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X)) (coeFn.{max 1 (max (succ u1) (succ u4)) (succ u4) (succ u1), max (succ u1) (succ u4)} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (fun (_x : Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) => (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) -> (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (Equiv.hasCoeToFun.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) Z) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Iso.hom.{max u2 u1, max u1 u2} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) f))))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X))) Z)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (fun (_x : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)))) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (CategoryTheory.MonoidalClosed.curry.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) => Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) Z) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X)) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Iso.hom.{max u2 u1, max u2 u1} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) f))))
+<too large>
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.of_equiv_curry_def CategoryTheory.MonoidalClosed.ofEquiv_curry_defₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@@ -550,10 +532,7 @@ theorem ofEquiv_curry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
#align category_theory.monoidal_closed.of_equiv_curry_def CategoryTheory.MonoidalClosed.ofEquiv_curry_def
/- warning: category_theory.monoidal_closed.of_equiv_uncurry_def -> CategoryTheory.MonoidalClosed.ofEquiv_uncurry_def is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed'.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X)) Z)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed'.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Iso.inv.{max u2 u1, max u1 u2} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) (coeFn.{max 1 (max (succ u4) (succ u1)) (succ u1) (succ u4), max (succ u4) (succ u1)} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z)) (fun (_x : Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z)) => (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z)) (Equiv.hasCoeToFun.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z)) (Equiv.symm.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) Z)) (CategoryTheory.MonoidalClosed.uncurry.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X)) (coeFn.{max 1 (max (succ u1) (succ u4)) (succ u4) (succ u1), max (succ u1) (succ u4)} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (fun (_x : Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) => (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) -> (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Equiv.hasCoeToFun.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Equiv.symm.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) f))))
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X))) Z)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Iso.inv.{max u2 u1, max u2 u1} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z)) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (fun (_x : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z)) (Equiv.symm.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) Z)) (CategoryTheory.MonoidalClosed.uncurry.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) => Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z))) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Equiv.symm.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) f))))
+<too large>
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.of_equiv_uncurry_def CategoryTheory.MonoidalClosed.ofEquiv_uncurry_defₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
mathlib commit https://github.com/leanprover-community/mathlib/commit/75e7fca56381d056096ce5d05e938f63a6567828
@@ -147,7 +147,7 @@ but is expected to have type
forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] {X : C} {Y : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) Y) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X Y f)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A))) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) Y (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) f)
Case conversion may be inaccurate. Consider using '#align category_theory.ihom.ev_naturality CategoryTheory.ihom.ev_naturalityₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
-@[simp, reassoc.1]
+@[simp, reassoc]
theorem ev_naturality {X Y : C} (f : X ⟶ Y) :
(𝟙 A ⊗ (ihom A).map f) ≫ (ev A).app Y = (ev A).app X ≫ f :=
(ev A).naturality f
@@ -160,7 +160,7 @@ but is expected to have type
forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] {X : C} {Y : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) Y) f (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X Y (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f)))
Case conversion may be inaccurate. Consider using '#align category_theory.ihom.coev_naturality CategoryTheory.ihom.coev_naturalityₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
-@[simp, reassoc.1]
+@[simp, reassoc]
theorem coev_naturality {X Y : C} (f : X ⟶ Y) :
f ≫ (coev A).app Y = (coev A).app X ≫ (ihom A).map (𝟙 A ⊗ f) :=
(coev A).naturality f
@@ -178,7 +178,7 @@ Case conversion may be inaccurate. Consider using '#align category_theory.ihom.e
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
-@[simp, reassoc.1]
+@[simp, reassoc]
theorem ev_coev : (𝟙 A ⊗ (coev A).app B) ≫ (ev A).app (A ⊗ B) = 𝟙 (A ⊗ B) :=
Adjunction.left_triangle_components (ihom.adjunction A)
#align category_theory.ihom.ev_coev CategoryTheory.ihom.ev_coev
@@ -189,7 +189,7 @@ lean 3 declaration is
but is expected to have type
forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (B : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) B))) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B))
Case conversion may be inaccurate. Consider using '#align category_theory.ihom.coev_ev CategoryTheory.ihom.coev_evₓ'. -/
-@[simp, reassoc.1]
+@[simp, reassoc]
theorem coev_ev : (coev A).app (A ⟶[C] B) ≫ (ihom A).map ((ev A).app B) = 𝟙 (A ⟶[C] B) :=
Adjunction.right_triangle_components (ihom.adjunction A)
#align category_theory.ihom.coev_ev CategoryTheory.ihom.coev_ev
@@ -262,7 +262,7 @@ but is expected to have type
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_natural_left CategoryTheory.MonoidalClosed.curry_natural_leftₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
-@[reassoc.1]
+@[reassoc]
theorem curry_natural_left (f : X ⟶ X') (g : A ⊗ X' ⟶ Y) : curry ((𝟙 _ ⊗ f) ≫ g) = f ≫ curry g :=
Adjunction.homEquiv_naturality_left _ _ _
#align category_theory.monoidal_closed.curry_natural_left CategoryTheory.MonoidalClosed.curry_natural_left
@@ -274,7 +274,7 @@ but is expected to have type
forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} {Y' : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Y'), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y')) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y' X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y Y' f g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y') (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y Y' g))
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_natural_right CategoryTheory.MonoidalClosed.curry_natural_rightₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
-@[reassoc.1]
+@[reassoc]
theorem curry_natural_right (f : A ⊗ X ⟶ Y) (g : Y ⟶ Y') :
curry (f ≫ g) = curry f ≫ (ihom _).map g :=
Adjunction.homEquiv_naturality_right _ _ _
@@ -286,7 +286,7 @@ lean 3 declaration is
but is expected to have type
forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} {Y' : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Y'), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y') (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y' X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y') f (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y Y' g))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y Y' (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f) g)
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_natural_right CategoryTheory.MonoidalClosed.uncurry_natural_rightₓ'. -/
-@[reassoc.1]
+@[reassoc]
theorem uncurry_natural_right (f : X ⟶ A ⟶[C] Y) (g : Y ⟶ Y') :
uncurry (f ≫ (ihom _).map g) = uncurry f ≫ g :=
Adjunction.homEquiv_naturality_right_symm _ _ _
@@ -299,7 +299,7 @@ but is expected to have type
forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {X' : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X X') (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X' (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X X' (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) f g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X') Y (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X X' (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X' _inst_3 g))
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_natural_left CategoryTheory.MonoidalClosed.uncurry_natural_leftₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
-@[reassoc.1]
+@[reassoc]
theorem uncurry_natural_left (f : X ⟶ X') (g : X' ⟶ A ⟶[C] Y) :
uncurry (f ≫ g) = (𝟙 _ ⊗ f) ≫ uncurry g :=
Adjunction.homEquiv_naturality_left_symm _ _ _
@@ -435,7 +435,7 @@ but is expected to have type
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.id_tensor_pre_app_comp_ev CategoryTheory.MonoidalClosed.id_tensor_pre_app_comp_evₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
-@[simp, reassoc.1]
+@[simp, reassoc]
theorem id_tensor_pre_app_comp_ev (f : B ⟶ A) (X : C) :
(𝟙 B ⊗ (pre f).app X) ≫ (ihom.ev B).app X = (f ⊗ 𝟙 (A ⟶[C] X)) ≫ (ihom.ev A).app X :=
transferNatTransSelf_counit _ _ ((tensoringLeft C).map f) X
@@ -462,7 +462,7 @@ but is expected to have type
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.coev_app_comp_pre_app CategoryTheory.MonoidalClosed.coev_app_comp_pre_appₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
-@[simp, reassoc.1]
+@[simp, reassoc]
theorem coev_app_comp_pre_app (f : B ⟶ A) :
(ihom.coev A).app X ≫ (pre f).app (A ⊗ X) = (ihom.coev B).app X ≫ (ihom B).map (f ⊗ 𝟙 _) :=
unit_transferNatTransSelf _ _ ((tensoringLeft C).map f) X
mathlib commit https://github.com/leanprover-community/mathlib/commit/95a87616d63b3cb49d3fe678d416fbe9c4217bf4
@@ -234,7 +234,7 @@ def uncurry : (Y ⟶ A ⟶[C] X) → (A ⊗ Y ⟶ X) :=
lean 3 declaration is
forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (coeFn.{succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (fun (_x : Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) => (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (Equiv.hasCoeToFun.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X) f) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X), Eq.{succ u1} ((fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) f) (FunLike.coe.{succ u1, succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X) f) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X), Eq.{succ u1} ((fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) f) (FunLike.coe.{succ u1, succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X) f) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.hom_equiv_apply_eq CategoryTheory.MonoidalClosed.homEquiv_apply_eqₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp]
@@ -246,7 +246,7 @@ theorem homEquiv_apply_eq (f : A ⊗ Y ⟶ X) : (ihom.adjunction A).homEquiv _ _
lean 3 declaration is
forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (coeFn.{succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X)) (fun (_x : Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X)) => (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X)) (Equiv.hasCoeToFun.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X)) (Equiv.symm.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X)) f) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)), Eq.{succ u1} ((fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) f) (FunLike.coe.{succ u1, succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X)) (Equiv.symm.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X)) f) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)), Eq.{succ u1} ((fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) f) (FunLike.coe.{succ u1, succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X)) (Equiv.symm.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X)) f) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.hom_equiv_symm_apply_eq CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eqₓ'. -/
@[simp]
theorem homEquiv_symm_apply_eq (f : Y ⟶ A ⟶[C] X) :
@@ -530,7 +530,7 @@ noncomputable def ofEquiv (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
lean 3 declaration is
forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed'.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X)) Z)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed'.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (coeFn.{max 1 (max (succ u4) (succ u1)) (succ u1) (succ u4), max (succ u4) (succ u1)} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))))) (fun (_x : Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))))) => (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))))) (Equiv.hasCoeToFun.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (CategoryTheory.MonoidalClosed.curry.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X)) (coeFn.{max 1 (max (succ u1) (succ u4)) (succ u4) (succ u1), max (succ u1) (succ u4)} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (fun (_x : Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) => (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) -> (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (Equiv.hasCoeToFun.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) Z) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Iso.hom.{max u2 u1, max u1 u2} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) f))))
but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X))) Z)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (fun (_x : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)))) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (CategoryTheory.MonoidalClosed.curry.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) => Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) Z) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X)) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Iso.hom.{max u2 u1, max u2 u1} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) f))))
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X))) Z)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (fun (_x : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)))) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (CategoryTheory.MonoidalClosed.curry.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) => Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) Z) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X)) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Iso.hom.{max u2 u1, max u2 u1} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) f))))
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.of_equiv_curry_def CategoryTheory.MonoidalClosed.ofEquiv_curry_defₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@@ -553,7 +553,7 @@ theorem ofEquiv_curry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
lean 3 declaration is
forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed'.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X)) Z)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed'.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Iso.inv.{max u2 u1, max u1 u2} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) (coeFn.{max 1 (max (succ u4) (succ u1)) (succ u1) (succ u4), max (succ u4) (succ u1)} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z)) (fun (_x : Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z)) => (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z)) (Equiv.hasCoeToFun.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z)) (Equiv.symm.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) Z)) (CategoryTheory.MonoidalClosed.uncurry.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X)) (coeFn.{max 1 (max (succ u1) (succ u4)) (succ u4) (succ u1), max (succ u1) (succ u4)} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (fun (_x : Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) => (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) -> (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Equiv.hasCoeToFun.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Equiv.symm.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) f))))
but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X))) Z)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Iso.inv.{max u2 u1, max u2 u1} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z)) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (fun (_x : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z)) (Equiv.symm.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) Z)) (CategoryTheory.MonoidalClosed.uncurry.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) => Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z))) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Equiv.symm.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) f))))
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X))) Z)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Iso.inv.{max u2 u1, max u2 u1} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z)) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (fun (_x : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z)) (Equiv.symm.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) Z)) (CategoryTheory.MonoidalClosed.uncurry.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) => Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z))) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Equiv.symm.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) f))))
Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.of_equiv_uncurry_def CategoryTheory.MonoidalClosed.ofEquiv_uncurry_defₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
mathlib commit https://github.com/leanprover-community/mathlib/commit/09079525fd01b3dda35e96adaa08d2f943e1648c
@@ -51,7 +51,7 @@ class MonoidalClosed (C : Type u) [Category.{v} C] [MonoidalCategory.{v} C] wher
#align category_theory.monoidal_closed CategoryTheory.MonoidalClosed
-/
-attribute [instance] monoidal_closed.closed'
+attribute [instance 100] monoidal_closed.closed'
variable {C : Type u} [Category.{v} C] [MonoidalCategory.{v} C]
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce86f4e05e9a9b8da5e316b22c76ce76440c56a1
@@ -526,6 +526,12 @@ noncomputable def ofEquiv (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
#align category_theory.monoidal_closed.of_equiv CategoryTheory.MonoidalClosed.ofEquiv
-/
+/- warning: category_theory.monoidal_closed.of_equiv_curry_def -> CategoryTheory.MonoidalClosed.ofEquiv_curry_def is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed'.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X)) Z)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed'.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (coeFn.{max 1 (max (succ u4) (succ u1)) (succ u1) (succ u4), max (succ u4) (succ u1)} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))))) (fun (_x : Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))))) => (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))))) (Equiv.hasCoeToFun.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (CategoryTheory.MonoidalClosed.curry.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X)) (coeFn.{max 1 (max (succ u1) (succ u4)) (succ u4) (succ u1), max (succ u1) (succ u4)} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (fun (_x : Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) => (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) -> (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (Equiv.hasCoeToFun.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z))) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) Z) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Iso.hom.{max u2 u1, max u1 u2} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) f))))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X))) Z)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (fun (_x : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)))) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (CategoryTheory.MonoidalClosed.curry.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) => Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z))) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) Z) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X)) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Iso.hom.{max u2 u1, max u2 u1} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) f))))
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.of_equiv_curry_def CategoryTheory.MonoidalClosed.ofEquiv_curry_defₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
@@ -543,6 +549,12 @@ theorem ofEquiv_curry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
rfl
#align category_theory.monoidal_closed.of_equiv_curry_def CategoryTheory.MonoidalClosed.ofEquiv_curry_def
+/- warning: category_theory.monoidal_closed.of_equiv_uncurry_def -> CategoryTheory.MonoidalClosed.ofEquiv_uncurry_def is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed'.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X)) Z)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed'.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Iso.inv.{max u2 u1, max u1 u2} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) (coeFn.{max 1 (max (succ u4) (succ u1)) (succ u1) (succ u4), max (succ u4) (succ u1)} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z)) (fun (_x : Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z)) => (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z)) (Equiv.hasCoeToFun.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z)) (Equiv.symm.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z)) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y)) Z)) (CategoryTheory.MonoidalClosed.uncurry.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) Z) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X)) (coeFn.{max 1 (max (succ u1) (succ u4)) (succ u4) (succ u1), max (succ u1) (succ u4)} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (fun (_x : Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) => (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) -> (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Equiv.hasCoeToFun.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (Equiv.symm.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Y) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (CategoryTheory.Functor.obj.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X) (CategoryTheory.MonoidalClosed.closed'.{u4, u3} D _inst_4 _inst_5 h (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) X))) (CategoryTheory.Functor.obj.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) Z)))) f))))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {D : Type.{u3}} [_inst_4 : CategoryTheory.Category.{u4, u3} D] [_inst_5 : CategoryTheory.MonoidalCategory.{u4, u3} D _inst_4] (F : CategoryTheory.MonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5) [_inst_6 : CategoryTheory.IsEquivalence.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))] [h : CategoryTheory.MonoidalClosed.{u4, u3} D _inst_4 _inst_5] {X : C} {Y : C} {Z : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X))) Z)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 X Y) Z) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 X Z Y (CategoryTheory.MonoidalClosed.closed.{u1, u2} C _inst_1 _inst_2 (CategoryTheory.MonoidalClosed.ofEquiv.{u1, u2, u3, u4} C _inst_1 _inst_2 D _inst_4 _inst_5 F _inst_6 h) X) f) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Y) Z (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Iso.inv.{max u2 u1, max u2 u1} (CategoryTheory.Functor.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.category.{u1, u1, u2, u2} C _inst_1 C _inst_1) (CategoryTheory.Functor.comp.{u1, u4, u1, u2, u3, u2} C _inst_1 D _inst_4 C _inst_1 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.compInvIso.{u2, u2, u3, u1, u1, u4} C _inst_1 C _inst_1 D _inst_4 (CategoryTheory.Functor.comp.{u1, u4, u4, u2, u3, u3} C _inst_1 D _inst_4 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.MonoidalCategory.tensorLeft.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X))) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 X) (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6 (CategoryTheory.MonoidalFunctor.commTensorLeft.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F X))) Y) (FunLike.coe.{max (succ u1) (succ u4), succ u4, succ u1} (Equiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z)) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (fun (_x : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z)) (Equiv.symm.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y))) Z) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z)) (CategoryTheory.Adjunction.homEquiv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.Functor.adjunction.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (CategoryTheory.MonoidalCategory.tensorObj.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y)) Z)) (CategoryTheory.MonoidalClosed.uncurry.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.Functor.inv.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.isEquivalenceInv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6))) Z) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)) (FunLike.coe.{max (succ u1) (succ u4), succ u1, succ u4} (Equiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) => Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z))) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u4} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (Equiv.symm.{succ u4, succ u1} (Quiver.Hom.{succ u4, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Y) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u4, succ u1, u3, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u4, u1, u3, u2} D _inst_4 C _inst_1 (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6)) (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) (CategoryTheory.Adjunction.homEquiv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) (CategoryTheory.Functor.inv.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) (CategoryTheory.Functor.adjunction.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F)) _inst_6) Y (Prefunctor.obj.{succ u4, succ u4, u3, u3} D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u4, u4, u3, u3} D _inst_4 D _inst_4 (CategoryTheory.ihom.{u4, u3} D _inst_4 _inst_5 (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X) (CategoryTheory.MonoidalClosed.closed.{u4, u3} D _inst_4 _inst_5 h (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) X)))) (Prefunctor.obj.{succ u1, succ u4, u2, u3} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u4, u3} D (CategoryTheory.Category.toCategoryStruct.{u4, u3} D _inst_4)) (CategoryTheory.Functor.toPrefunctor.{u1, u4, u2, u3} C _inst_1 D _inst_4 (CategoryTheory.LaxMonoidalFunctor.toFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 (CategoryTheory.MonoidalFunctor.toLaxMonoidalFunctor.{u1, u4, u2, u3} C _inst_1 _inst_2 D _inst_4 _inst_5 F))) Z)))) f))))
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.of_equiv_uncurry_def CategoryTheory.MonoidalClosed.ofEquiv_uncurry_defₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lemma describes the
mathlib commit https://github.com/leanprover-community/mathlib/commit/d11893b411025250c8e61ff2f12ccbd7ee35ab15
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison, Bhavik Mehta
! This file was ported from Lean 3 source module category_theory.closed.monoidal
-! leanprover-community/mathlib commit c085f3044fe585c575e322bfab45b3633c48d820
+! leanprover-community/mathlib commit 0caf3701139ef2e69c215717665361cda205a90b
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -526,6 +526,40 @@ noncomputable def ofEquiv (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
#align category_theory.monoidal_closed.of_equiv CategoryTheory.MonoidalClosed.ofEquiv
-/
+/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
+monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lemma describes the
+resulting currying map `Hom(X ⊗ Y, Z) → Hom(Y, (X ⟶[C] Z))`. (`X ⟶[C] Z` is defined to be
+`F⁻¹(F(X) ⟶[D] F(Z))`, so currying in `C` is given by essentially conjugating currying in
+`D` by `F.`) -/
+theorem ofEquiv_curry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
+ [h : MonoidalClosed D] {X Y Z : C} (f : X ⊗ Y ⟶ Z) :
+ @MonoidalClosed.curry _ _ _ _ _ _ ((MonoidalClosed.ofEquiv F).1 _) f =
+ (F.1.1.Adjunction.homEquiv Y ((ihom _).obj _))
+ (MonoidalClosed.curry
+ (F.1.1.inv.Adjunction.homEquiv (F.1.1.obj X ⊗ F.1.1.obj Y) Z
+ ((compInvIso (F.commTensorLeft X)).Hom.app Y ≫ f))) :=
+ rfl
+#align category_theory.monoidal_closed.of_equiv_curry_def CategoryTheory.MonoidalClosed.ofEquiv_curry_def
+
+/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
+monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lemma describes the
+resulting uncurrying map `Hom(Y, (X ⟶[C] Z)) → Hom(X ⊗ Y ⟶ Z)`. (`X ⟶[C] Z` is
+defined to be `F⁻¹(F(X) ⟶[D] F(Z))`, so uncurrying in `C` is given by essentially conjugating
+uncurrying in `D` by `F.`) -/
+theorem ofEquiv_uncurry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
+ [h : MonoidalClosed D] {X Y Z : C}
+ (f : Y ⟶ (@ihom _ _ _ X <| (MonoidalClosed.ofEquiv F).1 X).obj Z) :
+ @MonoidalClosed.uncurry _ _ _ _ _ _ ((MonoidalClosed.ofEquiv F).1 _) f =
+ (compInvIso (F.commTensorLeft X)).inv.app Y ≫
+ (F.1.1.inv.Adjunction.homEquiv (F.1.1.obj X ⊗ F.1.1.obj Y) Z).symm
+ (MonoidalClosed.uncurry
+ ((F.1.1.Adjunction.homEquiv Y ((ihom (F.1.1.obj X)).obj (F.1.1.obj Z))).symm f)) :=
+ rfl
+#align category_theory.monoidal_closed.of_equiv_uncurry_def CategoryTheory.MonoidalClosed.ofEquiv_uncurry_def
+
end OfEquiv
end MonoidalClosed
mathlib commit https://github.com/leanprover-community/mathlib/commit/57e09a1296bfb4330ddf6624f1028ba186117d82
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison, Bhavik Mehta
! This file was ported from Lean 3 source module category_theory.closed.monoidal
-! leanprover-community/mathlib commit c0e00a871b9f6d3aca7c10fb3abdc8720a2c5313
+! leanprover-community/mathlib commit c085f3044fe585c575e322bfab45b3633c48d820
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -16,6 +16,9 @@ import Mathbin.CategoryTheory.Functor.InvIsos
/-!
# Closed monoidal categories
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
Define (right) closed objects and (right) closed monoidal categories.
## TODO
mathlib commit https://github.com/leanprover-community/mathlib/commit/290a7ba01fbcab1b64757bdaa270d28f4dcede35
@@ -30,6 +30,7 @@ namespace CategoryTheory
open Category MonoidalCategory
+#print CategoryTheory.Closed /-
-- Note that this class carries a particular choice of right adjoint,
-- (which is only unique up to isomorphism),
-- not merely the existence of such, and
@@ -38,17 +39,21 @@ open Category MonoidalCategory
class Closed {C : Type u} [Category.{v} C] [MonoidalCategory.{v} C] (X : C) where
isAdj : IsLeftAdjoint (tensorLeft X)
#align category_theory.closed CategoryTheory.Closed
+-/
+#print CategoryTheory.MonoidalClosed /-
/-- A monoidal category `C` is (right) monoidal closed if every object is (right) closed. -/
class MonoidalClosed (C : Type u) [Category.{v} C] [MonoidalCategory.{v} C] where
closed' : ∀ X : C, Closed X
#align category_theory.monoidal_closed CategoryTheory.MonoidalClosed
+-/
attribute [instance] monoidal_closed.closed'
variable {C : Type u} [Category.{v} C] [MonoidalCategory.{v} C]
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.tensorClosed /-
/-- If `X` and `Y` are closed then `X ⊗ Y` is.
This isn't an instance because it's not usually how we want to construct internal homs,
we'll usually prove all objects are closed uniformly.
@@ -59,7 +64,9 @@ def tensorClosed {X Y : C} (hX : Closed X) (hY : Closed Y) : Closed (X ⊗ Y)
haveI := hY.is_adj
exact adjunction.left_adjoint_of_nat_iso (monoidal_category.tensor_left_tensor _ _).symm
#align category_theory.tensor_closed CategoryTheory.tensorClosed
+-/
+#print CategoryTheory.unitClosed /-
/-- The unit object is always closed.
This isn't an instance because most of the time we'll prove closedness for all objects at once,
rather than just for this one.
@@ -79,44 +86,63 @@ def unitClosed : Closed (𝟙_ C)
dsimp
rw [left_unitor_naturality_assoc] } }
#align category_theory.unit_closed CategoryTheory.unitClosed
+-/
variable (A B : C) {X X' Y Y' Z : C}
variable [Closed A]
+#print CategoryTheory.ihom /-
/-- This is the internal hom `A ⟶[C] -`.
-/
def ihom : C ⥤ C :=
(@Closed.isAdj _ _ _ A _).right
#align category_theory.ihom CategoryTheory.ihom
+-/
namespace Ihom
+#print CategoryTheory.ihom.adjunction /-
/-- The adjunction between `A ⊗ -` and `A ⟹ -`. -/
def adjunction : tensorLeft A ⊣ ihom A :=
Closed.isAdj.adj
#align category_theory.ihom.adjunction CategoryTheory.ihom.adjunction
+-/
+#print CategoryTheory.ihom.ev /-
/-- The evaluation natural transformation. -/
def ev : ihom A ⋙ tensorLeft A ⟶ 𝟭 C :=
(ihom.adjunction A).counit
#align category_theory.ihom.ev CategoryTheory.ihom.ev
+-/
+#print CategoryTheory.ihom.coev /-
/-- The coevaluation natural transformation. -/
def coev : 𝟭 C ⟶ tensorLeft A ⋙ ihom A :=
(ihom.adjunction A).Unit
#align category_theory.ihom.coev CategoryTheory.ihom.coev
+-/
+#print CategoryTheory.ihom.ihom_adjunction_counit /-
@[simp]
theorem ihom_adjunction_counit : (ihom.adjunction A).counit = ev A :=
rfl
#align category_theory.ihom.ihom_adjunction_counit CategoryTheory.ihom.ihom_adjunction_counit
+-/
+#print CategoryTheory.ihom.ihom_adjunction_unit /-
@[simp]
theorem ihom_adjunction_unit : (ihom.adjunction A).Unit = coev A :=
rfl
#align category_theory.ihom.ihom_adjunction_unit CategoryTheory.ihom.ihom_adjunction_unit
+-/
+/- warning: category_theory.ihom.ev_naturality -> CategoryTheory.ihom.ev_naturality is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] {X : C} {Y : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) Y) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X Y f)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) Y) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) f)
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] {X : C} {Y : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) Y) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X Y f)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A))) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) Y (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) f)
+Case conversion may be inaccurate. Consider using '#align category_theory.ihom.ev_naturality CategoryTheory.ihom.ev_naturalityₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp, reassoc.1]
theorem ev_naturality {X Y : C} (f : X ⟶ Y) :
@@ -124,6 +150,12 @@ theorem ev_naturality {X Y : C} (f : X ⟶ Y) :
(ev A).naturality f
#align category_theory.ihom.ev_naturality CategoryTheory.ihom.ev_naturality
+/- warning: category_theory.ihom.coev_naturality -> CategoryTheory.ihom.coev_naturality is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] {X : C} {Y : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) f (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X Y (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f)))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] {X : C} {Y : C} (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) Y) f (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X Y (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f)))
+Case conversion may be inaccurate. Consider using '#align category_theory.ihom.coev_naturality CategoryTheory.ihom.coev_naturalityₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp, reassoc.1]
theorem coev_naturality {X Y : C} (f : X ⟶ Y) :
@@ -134,6 +166,12 @@ theorem coev_naturality {X Y : C} (f : X ⟶ Y) :
-- mathport name: ihom
notation A " ⟶[" C "] " B:10 => (@ihom C _ _ A _).obj B
+/- warning: category_theory.ihom.ev_coev -> CategoryTheory.ihom.ev_coev is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (B : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) B)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) B))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) B)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) B)) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) B) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A B))) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A B))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (B : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A B))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A B)) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) B) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A B))) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A B))
+Case conversion may be inaccurate. Consider using '#align category_theory.ihom.ev_coev CategoryTheory.ihom.ev_coevₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@@ -142,6 +180,12 @@ theorem ev_coev : (𝟙 A ⊗ (coev A).app B) ≫ (ev A).app (A ⊗ B) = 𝟙 (A
Adjunction.left_triangle_components (ihom.adjunction A)
#align category_theory.ihom.ev_coev CategoryTheory.ihom.ev_coev
+/- warning: category_theory.ihom.coev_ev -> CategoryTheory.ihom.coev_ev is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (B : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) B))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) B)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) B)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) B) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) B))) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) B))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (B : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) B) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) B))) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) B))
+Case conversion may be inaccurate. Consider using '#align category_theory.ihom.coev_ev CategoryTheory.ihom.coev_evₓ'. -/
@[simp, reassoc.1]
theorem coev_ev : (coev A).app (A ⟶[C] B) ≫ (ihom A).map ((ev A).app B) = 𝟙 (A ⟶[C] B) :=
Adjunction.right_triangle_components (ihom.adjunction A)
@@ -159,30 +203,60 @@ variable {A}
-- Wrap these in a namespace so we don't clash with the core versions.
namespace MonoidalClosed
+/- warning: category_theory.monoidal_closed.curry -> CategoryTheory.MonoidalClosed.curry is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry CategoryTheory.MonoidalClosed.curryₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/-- Currying in a monoidal closed category. -/
def curry : (A ⊗ Y ⟶ X) → (Y ⟶ A ⟶[C] X) :=
(ihom.adjunction A).homEquiv _ _
#align category_theory.monoidal_closed.curry CategoryTheory.MonoidalClosed.curry
+/- warning: category_theory.monoidal_closed.uncurry -> CategoryTheory.MonoidalClosed.uncurry is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X)
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X)
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry CategoryTheory.MonoidalClosed.uncurryₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/-- Uncurrying in a monoidal closed category. -/
def uncurry : (Y ⟶ A ⟶[C] X) → (A ⊗ Y ⟶ X) :=
((ihom.adjunction A).homEquiv _ _).symm
#align category_theory.monoidal_closed.uncurry CategoryTheory.MonoidalClosed.uncurry
+/- warning: category_theory.monoidal_closed.hom_equiv_apply_eq -> CategoryTheory.MonoidalClosed.homEquiv_apply_eq is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (coeFn.{succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (fun (_x : Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) => (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (Equiv.hasCoeToFun.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X) f) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X), Eq.{succ u1} ((fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) f) (FunLike.coe.{succ u1, succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X) f) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.hom_equiv_apply_eq CategoryTheory.MonoidalClosed.homEquiv_apply_eqₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp]
theorem homEquiv_apply_eq (f : A ⊗ Y ⟶ X) : (ihom.adjunction A).homEquiv _ _ f = curry f :=
rfl
#align category_theory.monoidal_closed.hom_equiv_apply_eq CategoryTheory.MonoidalClosed.homEquiv_apply_eq
+/- warning: category_theory.monoidal_closed.hom_equiv_symm_apply_eq -> CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eq is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (coeFn.{succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X)) (fun (_x : Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X)) => (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) -> (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X)) (Equiv.hasCoeToFun.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X)) (Equiv.symm.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X)) f) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)), Eq.{succ u1} ((fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) f) (FunLike.coe.{succ u1, succ u1, succ u1} (Equiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (fun (_x : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) => Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) _x) (Equiv.instFunLikeEquiv.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X)) (Equiv.symm.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.Adjunction.homEquiv.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.adjunction.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y X)) f) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.hom_equiv_symm_apply_eq CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eqₓ'. -/
@[simp]
theorem homEquiv_symm_apply_eq (f : Y ⟶ A ⟶[C] X) :
((ihom.adjunction A).homEquiv _ _).symm f = uncurry f :=
rfl
#align category_theory.monoidal_closed.hom_equiv_symm_apply_eq CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eq
+/- warning: category_theory.monoidal_closed.curry_natural_left -> CategoryTheory.MonoidalClosed.curry_natural_left is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {X' : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X X') (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X') Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X') Y (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X X' (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f) g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X X' (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) f (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X' _inst_3 g))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {X' : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X X') (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X') Y), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X') Y (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X X' (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f) g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X X' (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) f (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X' _inst_3 g))
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_natural_left CategoryTheory.MonoidalClosed.curry_natural_leftₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[reassoc.1]
@@ -190,6 +264,12 @@ theorem curry_natural_left (f : X ⟶ X') (g : A ⊗ X' ⟶ Y) : curry ((𝟙 _
Adjunction.homEquiv_naturality_left _ _ _
#align category_theory.monoidal_closed.curry_natural_left CategoryTheory.MonoidalClosed.curry_natural_left
+/- warning: category_theory.monoidal_closed.curry_natural_right -> CategoryTheory.MonoidalClosed.curry_natural_right is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} {Y' : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Y'), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y')) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y' X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y Y' f g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y') (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y Y' g))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} {Y' : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Y'), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y')) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y' X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y Y' f g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y') (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y Y' g))
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_natural_right CategoryTheory.MonoidalClosed.curry_natural_rightₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[reassoc.1]
theorem curry_natural_right (f : A ⊗ X ⟶ Y) (g : Y ⟶ Y') :
@@ -197,12 +277,24 @@ theorem curry_natural_right (f : A ⊗ X ⟶ Y) (g : Y ⟶ Y') :
Adjunction.homEquiv_naturality_right _ _ _
#align category_theory.monoidal_closed.curry_natural_right CategoryTheory.MonoidalClosed.curry_natural_right
+/- warning: category_theory.monoidal_closed.uncurry_natural_right -> CategoryTheory.MonoidalClosed.uncurry_natural_right is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} {Y' : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Y'), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y') (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y' X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y') f (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y Y' g))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y Y' (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f) g)
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} {Y' : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Y'), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y') (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y' X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y') f (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y Y' g))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y Y' (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f) g)
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_natural_right CategoryTheory.MonoidalClosed.uncurry_natural_rightₓ'. -/
@[reassoc.1]
theorem uncurry_natural_right (f : X ⟶ A ⟶[C] Y) (g : Y ⟶ Y') :
uncurry (f ≫ (ihom _).map g) = uncurry f ≫ g :=
Adjunction.homEquiv_naturality_right_symm _ _ _
#align category_theory.monoidal_closed.uncurry_natural_right CategoryTheory.MonoidalClosed.uncurry_natural_right
+/- warning: category_theory.monoidal_closed.uncurry_natural_left -> CategoryTheory.MonoidalClosed.uncurry_natural_left is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {X' : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X X') (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X' (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X X' (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) f g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X') Y (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X X' (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X' _inst_3 g))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {X' : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X X') (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X' (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) Y) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X X' (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) f g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X') Y (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A X X' (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) f) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X' _inst_3 g))
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_natural_left CategoryTheory.MonoidalClosed.uncurry_natural_leftₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[reassoc.1]
theorem uncurry_natural_left (f : X ⟶ X') (g : X' ⟶ A ⟶[C] Y) :
@@ -211,42 +303,86 @@ theorem uncurry_natural_left (f : X ⟶ X') (g : X' ⟶ A ⟶[C] Y) :
#align category_theory.monoidal_closed.uncurry_natural_left CategoryTheory.MonoidalClosed.uncurry_natural_left
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print CategoryTheory.MonoidalClosed.uncurry_curry /-
@[simp]
theorem uncurry_curry (f : A ⊗ X ⟶ Y) : uncurry (curry f) = f :=
(Closed.isAdj.adj.homEquiv _ _).left_inv f
#align category_theory.monoidal_closed.uncurry_curry CategoryTheory.MonoidalClosed.uncurry_curry
+-/
+/- warning: category_theory.monoidal_closed.curry_uncurry -> CategoryTheory.MonoidalClosed.curry_uncurry is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f)) f
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A Y X _inst_3 f)) f
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_uncurry CategoryTheory.MonoidalClosed.curry_uncurryₓ'. -/
@[simp]
theorem curry_uncurry (f : X ⟶ A ⟶[C] Y) : curry (uncurry f) = f :=
(Closed.isAdj.adj.homEquiv _ _).right_inv f
#align category_theory.monoidal_closed.curry_uncurry CategoryTheory.MonoidalClosed.curry_uncurry
+/- warning: category_theory.monoidal_closed.curry_eq_iff -> CategoryTheory.MonoidalClosed.curry_eq_iff is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)), Iff (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f) g) (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) f (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)), Iff (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f) g) (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) f (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g))
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_eq_iff CategoryTheory.MonoidalClosed.curry_eq_iffₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
theorem curry_eq_iff (f : A ⊗ Y ⟶ X) (g : Y ⟶ A ⟶[C] X) : curry f = g ↔ f = uncurry g :=
Adjunction.homEquiv_apply_eq _ f g
#align category_theory.monoidal_closed.curry_eq_iff CategoryTheory.MonoidalClosed.curry_eq_iff
+/- warning: category_theory.monoidal_closed.eq_curry_iff -> CategoryTheory.MonoidalClosed.eq_curry_iff is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)), Iff (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) g (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)) (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g) f)
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)), Iff (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) g (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 f)) (Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g) f)
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.eq_curry_iff CategoryTheory.MonoidalClosed.eq_curry_iffₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
theorem eq_curry_iff (f : A ⊗ Y ⟶ X) (g : Y ⟶ A ⟶[C] X) : g = curry f ↔ uncurry g = f :=
Adjunction.eq_homEquiv_apply _ f g
#align category_theory.monoidal_closed.eq_curry_iff CategoryTheory.MonoidalClosed.eq_curry_iff
+/- warning: category_theory.monoidal_closed.uncurry_eq -> CategoryTheory.MonoidalClosed.uncurry_eq is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) X (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) g) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 A A Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) A) g) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_eq CategoryTheory.MonoidalClosed.uncurry_eqₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
-- I don't think these two should be simp.
theorem uncurry_eq (g : Y ⟶ A ⟶[C] X) : uncurry g = (𝟙 A ⊗ g) ≫ (ihom.ev A).app X :=
Adjunction.homEquiv_counit _
#align category_theory.monoidal_closed.uncurry_eq CategoryTheory.MonoidalClosed.uncurry_eq
+/- warning: category_theory.monoidal_closed.curry_eq -> CategoryTheory.MonoidalClosed.curry_eq is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) Y) X g))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3 g) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) Y) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) Y) X g))
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_eq CategoryTheory.MonoidalClosed.curry_eqₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
theorem curry_eq (g : A ⊗ Y ⟶ X) : curry g = (ihom.coev A).app Y ≫ (ihom A).map g :=
Adjunction.homEquiv_unit _
#align category_theory.monoidal_closed.curry_eq CategoryTheory.MonoidalClosed.curry_eq
+/- warning: category_theory.monoidal_closed.curry_injective -> CategoryTheory.MonoidalClosed.curry_injective is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Function.Injective.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3)
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Function.Injective.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3)
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_injective CategoryTheory.MonoidalClosed.curry_injectiveₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
theorem curry_injective : Function.Injective (curry : (A ⊗ Y ⟶ X) → (Y ⟶ A ⟶[C] X)) :=
(Closed.isAdj.adj.homEquiv _ _).Injective
#align category_theory.monoidal_closed.curry_injective CategoryTheory.MonoidalClosed.curry_injective
+/- warning: category_theory.monoidal_closed.uncurry_injective -> CategoryTheory.MonoidalClosed.uncurry_injective is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Function.Injective.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3)
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {X : C} {Y : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Function.Injective.{succ u1, succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A Y) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X Y _inst_3)
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_injective CategoryTheory.MonoidalClosed.uncurry_injectiveₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
theorem uncurry_injective : Function.Injective (uncurry : (Y ⟶ A ⟶[C] X) → (A ⊗ Y ⟶ X)) :=
(Closed.isAdj.adj.homEquiv _ _).symm.Injective
@@ -254,10 +390,22 @@ theorem uncurry_injective : Function.Injective (uncurry : (Y ⟶ A ⟶[C] X) →
variable (A X)
+/- warning: category_theory.monoidal_closed.uncurry_id_eq_ev -> CategoryTheory.MonoidalClosed.uncurry_id_eq_ev is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (X : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) _inst_3 (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (X : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 A X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) _inst_3 (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_id_eq_ev CategoryTheory.MonoidalClosed.uncurry_id_eq_evₓ'. -/
theorem uncurry_id_eq_ev : uncurry (𝟙 (A ⟶[C] X)) = (ihom.ev A).app X := by
rw [uncurry_eq, tensor_id, id_comp]
#align category_theory.monoidal_closed.uncurry_id_eq_ev CategoryTheory.MonoidalClosed.uncurry_id_eq_ev
+/- warning: category_theory.monoidal_closed.curry_id_eq_coev -> CategoryTheory.MonoidalClosed.curry_id_eq_coev is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (X : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X)))) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) _inst_3 (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X)))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] (A : C) (X : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A], Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X)))) (CategoryTheory.MonoidalClosed.curry.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) _inst_3 (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X)))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.curry_id_eq_coev CategoryTheory.MonoidalClosed.curry_id_eq_coevₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
theorem curry_id_eq_coev : curry (𝟙 _) = (ihom.coev A).app X :=
by
@@ -269,11 +417,19 @@ section Pre
variable {A B} [Closed B]
+#print CategoryTheory.MonoidalClosed.pre /-
/-- Pre-compose an internal hom with an external hom. -/
def pre (f : B ⟶ A) : ihom A ⟶ ihom B :=
transferNatTransSelf (ihom.adjunction _) (ihom.adjunction _) ((tensoringLeft C).map f)
#align category_theory.monoidal_closed.pre CategoryTheory.MonoidalClosed.pre
+-/
+/- warning: category_theory.monoidal_closed.id_tensor_pre_app_comp_ev -> CategoryTheory.MonoidalClosed.id_tensor_pre_app_comp_ev is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {B : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] [_inst_4 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 B] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) B A) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) X)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) X) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) B) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 A B _inst_3 _inst_4 f) X)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 B _inst_4) X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) f (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {B : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] [_inst_4 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 B] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) B A) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) X) (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) B) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 A B _inst_3 _inst_4 f) X)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 B _inst_4) X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) f (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.id_tensor_pre_app_comp_ev CategoryTheory.MonoidalClosed.id_tensor_pre_app_comp_evₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp, reassoc.1]
@@ -282,6 +438,12 @@ theorem id_tensor_pre_app_comp_ev (f : B ⟶ A) (X : C) :
transferNatTransSelf_counit _ _ ((tensoringLeft C).map f) X
#align category_theory.monoidal_closed.id_tensor_pre_app_comp_ev CategoryTheory.MonoidalClosed.id_tensor_pre_app_comp_ev
+/- warning: category_theory.monoidal_closed.uncurry_pre -> CategoryTheory.MonoidalClosed.uncurry_pre is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {B : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] [_inst_4 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 B] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) B A) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 B X (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) _inst_4 (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 A B _inst_3 _inst_4 f) X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X)) X (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B A (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) f (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {B : C} [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] [_inst_4 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 B] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) B A) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) X) (CategoryTheory.MonoidalClosed.uncurry.{u1, u2} C _inst_1 _inst_2 B X (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) _inst_4 (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 A B _inst_3 _inst_4 f) X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 B (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B A (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) f (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X))) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A)) (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.ihom.ev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X))
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.uncurry_pre CategoryTheory.MonoidalClosed.uncurry_preₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp]
theorem uncurry_pre (f : B ⟶ A) (X : C) :
@@ -289,6 +451,12 @@ theorem uncurry_pre (f : B ⟶ A) (X : C) :
rw [uncurry_eq, id_tensor_pre_app_comp_ev]
#align category_theory.monoidal_closed.uncurry_pre CategoryTheory.MonoidalClosed.uncurry_pre
+/- warning: category_theory.monoidal_closed.coev_app_comp_pre_app -> CategoryTheory.MonoidalClosed.coev_app_comp_pre_app is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {B : C} (X : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] [_inst_4 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 B] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) B A), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) X))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) X)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 A B _inst_3 _inst_4 f) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) X)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 B _inst_4) X) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B) X) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B A X X f (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X))))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {A : C} {B : C} (X : C) [_inst_3 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 A] [_inst_4 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 B] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) B A), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3))) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 A) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 A _inst_3) X) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 A _inst_3) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 A B _inst_3 _inst_4 f) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X))) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1)) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4))) X) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X)) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.Functor.id.{u1, u2} C _inst_1) (CategoryTheory.Functor.comp.{u1, u1, u1, u2, u2, u2} C _inst_1 C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) (CategoryTheory.ihom.coev.{u1, u2} C _inst_1 _inst_2 B _inst_4) X) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 B _inst_4)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.MonoidalCategory.tensorLeft.{u1, u2} C _inst_1 _inst_2 B)) X) (CategoryTheory.MonoidalCategory.tensorObj.{u1, u2} C _inst_1 _inst_2 A X) (CategoryTheory.MonoidalCategory.tensorHom.{u1, u2} C _inst_1 _inst_2 B A X X f (CategoryTheory.CategoryStruct.id.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) X))))
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.coev_app_comp_pre_app CategoryTheory.MonoidalClosed.coev_app_comp_pre_appₓ'. -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@[simp, reassoc.1]
@@ -297,6 +465,7 @@ theorem coev_app_comp_pre_app (f : B ⟶ A) :
unit_transferNatTransSelf _ _ ((tensoringLeft C).map f) X
#align category_theory.monoidal_closed.coev_app_comp_pre_app CategoryTheory.MonoidalClosed.coev_app_comp_pre_app
+#print CategoryTheory.MonoidalClosed.pre_id /-
@[simp]
theorem pre_id (A : C) [Closed A] : pre (𝟙 A) = 𝟙 _ :=
by
@@ -304,19 +473,29 @@ theorem pre_id (A : C) [Closed A] : pre (𝟙 A) = 𝟙 _ :=
dsimp
simp
#align category_theory.monoidal_closed.pre_id CategoryTheory.MonoidalClosed.pre_id
+-/
+#print CategoryTheory.MonoidalClosed.pre_map /-
@[simp]
theorem pre_map {A₁ A₂ A₃ : C} [Closed A₁] [Closed A₂] [Closed A₃] (f : A₁ ⟶ A₂) (g : A₂ ⟶ A₃) :
pre (f ≫ g) = pre g ≫ pre f := by
rw [pre, pre, pre, transfer_nat_trans_self_comp, (tensoring_left C).map_comp]
#align category_theory.monoidal_closed.pre_map CategoryTheory.MonoidalClosed.pre_map
+-/
+/- warning: category_theory.monoidal_closed.pre_comm_ihom_map -> CategoryTheory.MonoidalClosed.pre_comm_ihom_map is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {W : C} {X : C} {Y : C} {Z : C} [_inst_5 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 W] [_inst_6 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 X] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) W X) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Z), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) Z)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) Z) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 X W _inst_6 _inst_5 f) Y) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) Y Z g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) Y) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) Z) (CategoryTheory.Functor.obj.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) Z) (CategoryTheory.Functor.map.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) Y Z g) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 X W _inst_6 _inst_5 f) Z))
+but is expected to have type
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C] [_inst_2 : CategoryTheory.MonoidalCategory.{u1, u2} C _inst_1] {W : C} {X : C} {Y : C} {Z : C} [_inst_5 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 W] [_inst_6 : CategoryTheory.Closed.{u1, u2} C _inst_1 _inst_2 X] (f : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) W X) (g : Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) Y Z), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5)) Z)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5)) Z) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 X W _inst_6 _inst_5 f) Y) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5)) Y Z g)) (CategoryTheory.CategoryStruct.comp.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6)) Y) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6)) Z) (Prefunctor.obj.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5)) Z) (Prefunctor.map.{succ u1, succ u1, u2, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) C (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} C (CategoryTheory.Category.toCategoryStruct.{u1, u2} C _inst_1)) (CategoryTheory.Functor.toPrefunctor.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6)) Y Z g) (CategoryTheory.NatTrans.app.{u1, u1, u2, u2} C _inst_1 C _inst_1 (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 X _inst_6) (CategoryTheory.ihom.{u1, u2} C _inst_1 _inst_2 W _inst_5) (CategoryTheory.MonoidalClosed.pre.{u1, u2} C _inst_1 _inst_2 X W _inst_6 _inst_5 f) Z))
+Case conversion may be inaccurate. Consider using '#align category_theory.monoidal_closed.pre_comm_ihom_map CategoryTheory.MonoidalClosed.pre_comm_ihom_mapₓ'. -/
theorem pre_comm_ihom_map {W X Y Z : C} [Closed W] [Closed X] (f : W ⟶ X) (g : Y ⟶ Z) :
(pre f).app Y ≫ (ihom W).map g = (ihom X).map g ≫ (pre f).app Z := by simp
#align category_theory.monoidal_closed.pre_comm_ihom_map CategoryTheory.MonoidalClosed.pre_comm_ihom_map
end Pre
+#print CategoryTheory.MonoidalClosed.internalHom /-
/-- The internal hom functor given by the monoidal closed structure. -/
@[simps]
def internalHom [MonoidalClosed C] : Cᵒᵖ ⥤ C ⥤ C
@@ -324,11 +503,13 @@ def internalHom [MonoidalClosed C] : Cᵒᵖ ⥤ C ⥤ C
obj X := ihom X.unop
map X Y f := pre f.unop
#align category_theory.monoidal_closed.internal_hom CategoryTheory.MonoidalClosed.internalHom
+-/
section OfEquiv
variable {D : Type u₂} [Category.{v₂} D] [MonoidalCategory.{v₂} D]
+#print CategoryTheory.MonoidalClosed.ofEquiv /-
/-- Transport the property of being monoidal closed across a monoidal equivalence of categories -/
noncomputable def ofEquiv (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
[h : MonoidalClosed D] : MonoidalClosed C
@@ -340,6 +521,7 @@ noncomputable def ofEquiv (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
have i := comp_inv_iso (monoidal_functor.comm_tensor_left F X)
exact adjunction.left_adjoint_of_nat_iso i }
#align category_theory.monoidal_closed.of_equiv CategoryTheory.MonoidalClosed.ofEquiv
+-/
end OfEquiv
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
These notions on functors are now Functor.Full
, Functor.Faithful
, Functor.EssSurj
, Functor.IsEquivalence
, Functor.ReflectsIsomorphisms
. Deprecated aliases are introduced for the previous names.
@@ -304,7 +304,7 @@ section OfEquiv
variable {D : Type u₂} [Category.{v₂} D] [MonoidalCategory.{v₂} D]
/-- Transport the property of being monoidal closed across a monoidal equivalence of categories -/
-noncomputable def ofEquiv (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
+noncomputable def ofEquiv (F : MonoidalFunctor C D) [F.IsEquivalence]
[h : MonoidalClosed D] : MonoidalClosed C where
closed X :=
{ isAdj := by
@@ -319,7 +319,7 @@ monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lem
resulting currying map `Hom(X ⊗ Y, Z) → Hom(Y, (X ⟶[C] Z))`. (`X ⟶[C] Z` is defined to be
`F⁻¹(F(X) ⟶[D] F(Z))`, so currying in `C` is given by essentially conjugating currying in
`D` by `F.`) -/
-theorem ofEquiv_curry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
+theorem ofEquiv_curry_def (F : MonoidalFunctor C D) [F.IsEquivalence]
[MonoidalClosed D] {X Y Z : C} (f : X ⊗ Y ⟶ Z) :
@MonoidalClosed.curry _ _ _ _ _ _ ((MonoidalClosed.ofEquiv F).1 _) f =
(F.1.1.adjunction.homEquiv Y ((ihom _).obj _))
@@ -334,7 +334,7 @@ monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lem
resulting uncurrying map `Hom(Y, (X ⟶[C] Z)) → Hom(X ⊗ Y ⟶ Z)`. (`X ⟶[C] Z` is
defined to be `F⁻¹(F(X) ⟶[D] F(Z))`, so uncurrying in `C` is given by essentially conjugating
uncurrying in `D` by `F.`) -/
-theorem ofEquiv_uncurry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
+theorem ofEquiv_uncurry_def (F : MonoidalFunctor C D) [F.IsEquivalence]
[MonoidalClosed D] {X Y Z : C}
(f : Y ⟶ (@ihom _ _ _ X <| (MonoidalClosed.ofEquiv F).1 X).obj Z) :
@MonoidalClosed.uncurry _ _ _ _ _ _ ((MonoidalClosed.ofEquiv F).1 _) f =
Empty lines were removed by executing the following Python script twice
import os
import re
# Loop through each file in the repository
for dir_path, dirs, files in os.walk('.'):
for filename in files:
if filename.endswith('.lean'):
file_path = os.path.join(dir_path, filename)
# Open the file and read its contents
with open(file_path, 'r') as file:
content = file.read()
# Use a regular expression to replace sequences of "variable" lines separated by empty lines
# with sequences without empty lines
modified_content = re.sub(r'(variable.*\n)\n(variable(?! .* in))', r'\1\2', content)
# Write the modified content back to the file
with open(file_path, 'w') as file:
file.write(modified_content)
@@ -80,7 +80,6 @@ def unitClosed : Closed (𝟙_ C) where
#align category_theory.unit_closed CategoryTheory.unitClosed
variable (A B : C) {X X' Y Y' Z : C}
-
variable [Closed A]
/-- This is the internal hom `A ⟶[C] -`.
@@ -72,7 +72,7 @@ def unitClosed : Closed (𝟙_ C) where
right_inv := by aesop_cat }
homEquiv_naturality_left_symm := fun f g => by
dsimp
- rw [leftUnitor_naturality'_assoc]
+ rw [leftUnitor_naturality_assoc]
-- This used to be automatic before leanprover/lean4#2644
homEquiv_naturality_right := by -- aesop failure
dsimp
@@ -72,7 +72,7 @@ def unitClosed : Closed (𝟙_ C) where
right_inv := by aesop_cat }
homEquiv_naturality_left_symm := fun f g => by
dsimp
- rw [leftUnitor_naturality_assoc]
+ rw [leftUnitor_naturality'_assoc]
-- This used to be automatic before leanprover/lean4#2644
homEquiv_naturality_right := by -- aesop failure
dsimp
@@ -118,13 +118,13 @@ theorem ihom_adjunction_unit : (ihom.adjunction A).unit = coev A :=
@[reassoc (attr := simp)]
theorem ev_naturality {X Y : C} (f : X ⟶ Y) :
- (𝟙 A ⊗ (ihom A).map f) ≫ (ev A).app Y = (ev A).app X ≫ f :=
+ A ◁ (ihom A).map f ≫ (ev A).app Y = (ev A).app X ≫ f :=
(ev A).naturality f
#align category_theory.ihom.ev_naturality CategoryTheory.ihom.ev_naturality
@[reassoc (attr := simp)]
theorem coev_naturality {X Y : C} (f : X ⟶ Y) :
- f ≫ (coev A).app Y = (coev A).app X ≫ (ihom A).map (𝟙 A ⊗ f) :=
+ f ≫ (coev A).app Y = (coev A).app X ≫ (ihom A).map (A ◁ f) :=
(coev A).naturality f
#align category_theory.ihom.coev_naturality CategoryTheory.ihom.coev_naturality
@@ -133,8 +133,8 @@ set_option quotPrecheck false in
notation A " ⟶[" C "] " B:10 => (@ihom C _ _ A _).obj B
@[reassoc (attr := simp)]
-theorem ev_coev : (𝟙 A ⊗ (coev A).app B) ≫ (ev A).app (A ⊗ B) = 𝟙 (A ⊗ B) :=
- Adjunction.left_triangle_components (ihom.adjunction A) _
+theorem ev_coev : (A ◁ (coev A).app B) ≫ (ev A).app (A ⊗ B) = 𝟙 (A ⊗ B) :=
+ (ihom.adjunction A).left_triangle_components _
#align category_theory.ihom.ev_coev CategoryTheory.ihom.ev_coev
@[reassoc (attr := simp)]
@@ -178,7 +178,7 @@ theorem homEquiv_symm_apply_eq (f : Y ⟶ A ⟶[C] X) :
#align category_theory.monoidal_closed.hom_equiv_symm_apply_eq CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eq
@[reassoc]
-theorem curry_natural_left (f : X ⟶ X') (g : A ⊗ X' ⟶ Y) : curry ((𝟙 _ ⊗ f) ≫ g) = f ≫ curry g :=
+theorem curry_natural_left (f : X ⟶ X') (g : A ⊗ X' ⟶ Y) : curry (_ ◁ f ≫ g) = f ≫ curry g :=
Adjunction.homEquiv_naturality_left _ _ _
#align category_theory.monoidal_closed.curry_natural_left CategoryTheory.MonoidalClosed.curry_natural_left
@@ -196,7 +196,7 @@ theorem uncurry_natural_right (f : X ⟶ A ⟶[C] Y) (g : Y ⟶ Y') :
@[reassoc]
theorem uncurry_natural_left (f : X ⟶ X') (g : X' ⟶ A ⟶[C] Y) :
- uncurry (f ≫ g) = (𝟙 _ ⊗ f) ≫ uncurry g :=
+ uncurry (f ≫ g) = _ ◁ f ≫ uncurry g :=
Adjunction.homEquiv_naturality_left_symm _ _ _
#align category_theory.monoidal_closed.uncurry_natural_left CategoryTheory.MonoidalClosed.uncurry_natural_left
@@ -219,7 +219,7 @@ theorem eq_curry_iff (f : A ⊗ Y ⟶ X) (g : Y ⟶ A ⟶[C] X) : g = curry f
#align category_theory.monoidal_closed.eq_curry_iff CategoryTheory.MonoidalClosed.eq_curry_iff
-- I don't think these two should be simp.
-theorem uncurry_eq (g : Y ⟶ A ⟶[C] X) : uncurry g = (𝟙 A ⊗ g) ≫ (ihom.ev A).app X :=
+theorem uncurry_eq (g : Y ⟶ A ⟶[C] X) : uncurry g = (A ◁ g) ≫ (ihom.ev A).app X :=
Adjunction.homEquiv_counit _
#align category_theory.monoidal_closed.uncurry_eq CategoryTheory.MonoidalClosed.uncurry_eq
@@ -238,7 +238,7 @@ theorem uncurry_injective : Function.Injective (uncurry : (Y ⟶ A ⟶[C] X) →
variable (A X)
theorem uncurry_id_eq_ev : uncurry (𝟙 (A ⟶[C] X)) = (ihom.ev A).app X := by
- rw [uncurry_eq, tensor_id, id_comp]
+ simp [uncurry_eq]
#align category_theory.monoidal_closed.uncurry_id_eq_ev CategoryTheory.MonoidalClosed.uncurry_id_eq_ev
theorem curry_id_eq_coev : curry (𝟙 _) = (ihom.coev A).app X := by
@@ -257,19 +257,19 @@ def pre (f : B ⟶ A) : ihom A ⟶ ihom B :=
@[reassoc (attr := simp)]
theorem id_tensor_pre_app_comp_ev (f : B ⟶ A) (X : C) :
- (𝟙 B ⊗ (pre f).app X) ≫ (ihom.ev B).app X = (f ⊗ 𝟙 (A ⟶[C] X)) ≫ (ihom.ev A).app X :=
+ B ◁ (pre f).app X ≫ (ihom.ev B).app X = f ▷ (A ⟶[C] X) ≫ (ihom.ev A).app X :=
transferNatTransSelf_counit _ _ ((tensoringLeft C).map f) X
#align category_theory.monoidal_closed.id_tensor_pre_app_comp_ev CategoryTheory.MonoidalClosed.id_tensor_pre_app_comp_ev
@[simp]
theorem uncurry_pre (f : B ⟶ A) (X : C) :
- MonoidalClosed.uncurry ((pre f).app X) = (f ⊗ 𝟙 _) ≫ (ihom.ev A).app X := by
- rw [uncurry_eq, id_tensor_pre_app_comp_ev]
+ MonoidalClosed.uncurry ((pre f).app X) = f ▷ _ ≫ (ihom.ev A).app X := by
+ simp [uncurry_eq]
#align category_theory.monoidal_closed.uncurry_pre CategoryTheory.MonoidalClosed.uncurry_pre
@[reassoc (attr := simp)]
theorem coev_app_comp_pre_app (f : B ⟶ A) :
- (ihom.coev A).app X ≫ (pre f).app (A ⊗ X) = (ihom.coev B).app X ≫ (ihom B).map (f ⊗ 𝟙 _) :=
+ (ihom.coev A).app X ≫ (pre f).app (A ⊗ X) = (ihom.coev B).app X ≫ (ihom B).map (f ▷ _) :=
unit_transferNatTransSelf _ _ ((tensoringLeft C).map f) X
#align category_theory.monoidal_closed.coev_app_comp_pre_app CategoryTheory.MonoidalClosed.coev_app_comp_pre_app
@@ -326,7 +326,7 @@ theorem ofEquiv_curry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
(F.1.1.adjunction.homEquiv Y ((ihom _).obj _))
(MonoidalClosed.curry
(F.1.1.inv.adjunction.homEquiv (F.1.1.obj X ⊗ F.1.1.obj Y) Z
- ((F.commTensorLeft X).compInvIso.hom.app Y ≫ f))) :=
+ (((F.commTensorLeft X).compInvIso).hom.app Y ≫ f))) :=
rfl
#align category_theory.monoidal_closed.of_equiv_curry_def CategoryTheory.MonoidalClosed.ofEquiv_curry_def
@@ -339,7 +339,7 @@ theorem ofEquiv_uncurry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor
[MonoidalClosed D] {X Y Z : C}
(f : Y ⟶ (@ihom _ _ _ X <| (MonoidalClosed.ofEquiv F).1 X).obj Z) :
@MonoidalClosed.uncurry _ _ _ _ _ _ ((MonoidalClosed.ofEquiv F).1 _) f =
- (F.commTensorLeft X).compInvIso.inv.app Y ≫
+ ((F.commTensorLeft X).compInvIso).inv.app Y ≫
(F.1.1.inv.adjunction.homEquiv (F.1.1.obj X ⊗ F.1.1.obj Y) Z).symm
(MonoidalClosed.uncurry
((F.1.1.adjunction.homEquiv Y ((ihom (F.1.1.obj X)).obj (F.1.1.obj Z))).symm f)) :=
This PR contains various prerequisites in order to show that under suitable assumptions, a localized category of a category that has finite products also has finite products:
(J → C) ≌ (Discrete J ⥤ C)
C ⥤ (J ⥤ C)
.MorphismProperty.IsStableUnderFiniteProducts
@@ -134,12 +134,12 @@ notation A " ⟶[" C "] " B:10 => (@ihom C _ _ A _).obj B
@[reassoc (attr := simp)]
theorem ev_coev : (𝟙 A ⊗ (coev A).app B) ≫ (ev A).app (A ⊗ B) = 𝟙 (A ⊗ B) :=
- Adjunction.left_triangle_components (ihom.adjunction A)
+ Adjunction.left_triangle_components (ihom.adjunction A) _
#align category_theory.ihom.ev_coev CategoryTheory.ihom.ev_coev
@[reassoc (attr := simp)]
theorem coev_ev : (coev A).app (A ⟶[C] B) ≫ (ihom A).map ((ev A).app B) = 𝟙 (A ⟶[C] B) :=
- Adjunction.right_triangle_components (ihom.adjunction A)
+ Adjunction.right_triangle_components (ihom.adjunction A) _
#align category_theory.ihom.coev_ev CategoryTheory.ihom.coev_ev
end ihom
CategoryTheory/Functor/InvIsos.lean
to CategoryTheory/Equivalence.lean
and delete the former fileeqToIso (Functor.comp_id G)
with G.rightUnitor
Iso
namespace to enable dot notationEquivalence
instead of IsEquivalence
@@ -6,7 +6,6 @@ Authors: Scott Morrison, Bhavik Mehta
import Mathlib.CategoryTheory.Monoidal.Functor
import Mathlib.CategoryTheory.Adjunction.Limits
import Mathlib.CategoryTheory.Adjunction.Mates
-import Mathlib.CategoryTheory.Functor.InvIsos
#align_import category_theory.closed.monoidal from "leanprover-community/mathlib"@"0caf3701139ef2e69c215717665361cda205a90b"
@@ -312,7 +311,7 @@ noncomputable def ofEquiv (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
{ isAdj := by
haveI q : Closed (F.obj X) := inferInstance
haveI : IsLeftAdjoint (tensorLeft (F.obj X)) := q.isAdj
- have i := compInvIso (MonoidalFunctor.commTensorLeft F X)
+ have i := (MonoidalFunctor.commTensorLeft F X).compInvIso
exact Adjunction.leftAdjointOfNatIso i }
#align category_theory.monoidal_closed.of_equiv CategoryTheory.MonoidalClosed.ofEquiv
@@ -327,7 +326,7 @@ theorem ofEquiv_curry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
(F.1.1.adjunction.homEquiv Y ((ihom _).obj _))
(MonoidalClosed.curry
(F.1.1.inv.adjunction.homEquiv (F.1.1.obj X ⊗ F.1.1.obj Y) Z
- ((compInvIso (F.commTensorLeft X)).hom.app Y ≫ f))) :=
+ ((F.commTensorLeft X).compInvIso.hom.app Y ≫ f))) :=
rfl
#align category_theory.monoidal_closed.of_equiv_curry_def CategoryTheory.MonoidalClosed.ofEquiv_curry_def
@@ -340,7 +339,7 @@ theorem ofEquiv_uncurry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor
[MonoidalClosed D] {X Y Z : C}
(f : Y ⟶ (@ihom _ _ _ X <| (MonoidalClosed.ofEquiv F).1 X).obj Z) :
@MonoidalClosed.uncurry _ _ _ _ _ _ ((MonoidalClosed.ofEquiv F).1 _) f =
- (compInvIso (F.commTensorLeft X)).inv.app Y ≫
+ (F.commTensorLeft X).compInvIso.inv.app Y ≫
(F.1.1.inv.adjunction.homEquiv (F.1.1.obj X ⊗ F.1.1.obj Y) Z).symm
(MonoidalClosed.uncurry
((F.1.1.adjunction.homEquiv Y ((ihom (F.1.1.obj X)).obj (F.1.1.obj Z))).symm f)) :=
@@ -73,7 +73,11 @@ def unitClosed : Closed (𝟙_ C) where
right_inv := by aesop_cat }
homEquiv_naturality_left_symm := fun f g => by
dsimp
- rw [leftUnitor_naturality_assoc] } }
+ rw [leftUnitor_naturality_assoc]
+ -- This used to be automatic before leanprover/lean4#2644
+ homEquiv_naturality_right := by -- aesop failure
+ dsimp
+ simp }}
#align category_theory.unit_closed CategoryTheory.unitClosed
variable (A B : C) {X X' Y Y' Z : C}
@@ -161,12 +165,14 @@ def uncurry : (Y ⟶ A ⟶[C] X) → (A ⊗ Y ⟶ X) :=
((ihom.adjunction A).homEquiv _ _).symm
#align category_theory.monoidal_closed.uncurry CategoryTheory.MonoidalClosed.uncurry
-@[simp]
+-- This lemma has always been bad, but the linter only noticed after lean4#2644.
+@[simp, nolint simpNF]
theorem homEquiv_apply_eq (f : A ⊗ Y ⟶ X) : (ihom.adjunction A).homEquiv _ _ f = curry f :=
rfl
#align category_theory.monoidal_closed.hom_equiv_apply_eq CategoryTheory.MonoidalClosed.homEquiv_apply_eq
-@[simp]
+-- This lemma has always been bad, but the linter only noticed after lean4#2644.
+@[simp, nolint simpNF]
theorem homEquiv_symm_apply_eq (f : Y ⟶ A ⟶[C] X) :
((ihom.adjunction A).homEquiv _ _).symm f = uncurry f :=
rfl
@@ -343,5 +349,6 @@ theorem ofEquiv_uncurry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor
end OfEquiv
end MonoidalClosed
-
+attribute [nolint simpNF] CategoryTheory.MonoidalClosed.homEquiv_apply_eq
+ CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eq
end CategoryTheory
@@ -73,11 +73,7 @@ def unitClosed : Closed (𝟙_ C) where
right_inv := by aesop_cat }
homEquiv_naturality_left_symm := fun f g => by
dsimp
- rw [leftUnitor_naturality_assoc]
- -- This used to be automatic before leanprover/lean4#2644
- homEquiv_naturality_right := by -- aesop failure
- dsimp
- simp }}
+ rw [leftUnitor_naturality_assoc] } }
#align category_theory.unit_closed CategoryTheory.unitClosed
variable (A B : C) {X X' Y Y' Z : C}
@@ -165,14 +161,12 @@ def uncurry : (Y ⟶ A ⟶[C] X) → (A ⊗ Y ⟶ X) :=
((ihom.adjunction A).homEquiv _ _).symm
#align category_theory.monoidal_closed.uncurry CategoryTheory.MonoidalClosed.uncurry
--- This lemma has always been bad, but the linter only noticed after lean4#2644.
-@[simp, nolint simpNF]
+@[simp]
theorem homEquiv_apply_eq (f : A ⊗ Y ⟶ X) : (ihom.adjunction A).homEquiv _ _ f = curry f :=
rfl
#align category_theory.monoidal_closed.hom_equiv_apply_eq CategoryTheory.MonoidalClosed.homEquiv_apply_eq
--- This lemma has always been bad, but the linter only noticed after lean4#2644.
-@[simp, nolint simpNF]
+@[simp]
theorem homEquiv_symm_apply_eq (f : Y ⟶ A ⟶[C] X) :
((ihom.adjunction A).homEquiv _ _).symm f = uncurry f :=
rfl
@@ -349,6 +343,5 @@ theorem ofEquiv_uncurry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor
end OfEquiv
end MonoidalClosed
-attribute [nolint simpNF] CategoryTheory.MonoidalClosed.homEquiv_apply_eq
- CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eq
+
end CategoryTheory
@@ -73,7 +73,11 @@ def unitClosed : Closed (𝟙_ C) where
right_inv := by aesop_cat }
homEquiv_naturality_left_symm := fun f g => by
dsimp
- rw [leftUnitor_naturality_assoc] } }
+ rw [leftUnitor_naturality_assoc]
+ -- This used to be automatic before leanprover/lean4#2644
+ homEquiv_naturality_right := by -- aesop failure
+ dsimp
+ simp }}
#align category_theory.unit_closed CategoryTheory.unitClosed
variable (A B : C) {X X' Y Y' Z : C}
@@ -161,12 +165,14 @@ def uncurry : (Y ⟶ A ⟶[C] X) → (A ⊗ Y ⟶ X) :=
((ihom.adjunction A).homEquiv _ _).symm
#align category_theory.monoidal_closed.uncurry CategoryTheory.MonoidalClosed.uncurry
-@[simp]
+-- This lemma has always been bad, but the linter only noticed after lean4#2644.
+@[simp, nolint simpNF]
theorem homEquiv_apply_eq (f : A ⊗ Y ⟶ X) : (ihom.adjunction A).homEquiv _ _ f = curry f :=
rfl
#align category_theory.monoidal_closed.hom_equiv_apply_eq CategoryTheory.MonoidalClosed.homEquiv_apply_eq
-@[simp]
+-- This lemma has always been bad, but the linter only noticed after lean4#2644.
+@[simp, nolint simpNF]
theorem homEquiv_symm_apply_eq (f : Y ⟶ A ⟶[C] X) :
((ihom.adjunction A).homEquiv _ _).symm f = uncurry f :=
rfl
@@ -343,5 +349,6 @@ theorem ofEquiv_uncurry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor
end OfEquiv
end MonoidalClosed
-
+attribute [nolint simpNF] CategoryTheory.MonoidalClosed.homEquiv_apply_eq
+ CategoryTheory.MonoidalClosed.homEquiv_symm_apply_eq
end CategoryTheory
@@ -301,8 +301,8 @@ variable {D : Type u₂} [Category.{v₂} D] [MonoidalCategory.{v₂} D]
/-- Transport the property of being monoidal closed across a monoidal equivalence of categories -/
noncomputable def ofEquiv (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
- [h : MonoidalClosed D] : MonoidalClosed C
- where closed X :=
+ [h : MonoidalClosed D] : MonoidalClosed C where
+ closed X :=
{ isAdj := by
haveI q : Closed (F.obj X) := inferInstance
haveI : IsLeftAdjoint (tensorLeft (F.obj X)) := q.isAdj
@@ -2,17 +2,14 @@
Copyright (c) 2020 Scott Morrison. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison, Bhavik Mehta
-
-! This file was ported from Lean 3 source module category_theory.closed.monoidal
-! leanprover-community/mathlib commit 0caf3701139ef2e69c215717665361cda205a90b
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.CategoryTheory.Monoidal.Functor
import Mathlib.CategoryTheory.Adjunction.Limits
import Mathlib.CategoryTheory.Adjunction.Mates
import Mathlib.CategoryTheory.Functor.InvIsos
+#align_import category_theory.closed.monoidal from "leanprover-community/mathlib"@"0caf3701139ef2e69c215717665361cda205a90b"
+
/-!
# Closed monoidal categories
@@ -64,8 +64,8 @@ def tensorClosed {X Y : C} (hX : Closed X) (hY : Closed Y) : Closed (X ⊗ Y) wh
This isn't an instance because most of the time we'll prove closedness for all objects at once,
rather than just for this one.
-/
-def unitClosed : Closed (𝟙_ C)
- where isAdj :=
+def unitClosed : Closed (𝟙_ C) where
+ isAdj :=
{ right := 𝟭 C
adj :=
Adjunction.mkOfHomEquiv
See discussion at https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/mathport.20drops.20priorities.20in.20.60attribute.20.5Binstance.5D.60. mathport
has been dropping the priorities on instances when using the attribute
command.
This PR adds back all the priorities, except for local attribute
, and instances involving coercions, which I didn't want to mess with.
Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
@@ -45,7 +45,7 @@ class MonoidalClosed (C : Type u) [Category.{v} C] [MonoidalCategory.{v} C] wher
closed : ∀ X : C, Closed X
#align category_theory.monoidal_closed CategoryTheory.MonoidalClosed
-attribute [instance] MonoidalClosed.closed
+attribute [instance 100] MonoidalClosed.closed
variable {C : Type u} [Category.{v} C] [MonoidalCategory.{v} C]
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison, Bhavik Mehta
! This file was ported from Lean 3 source module category_theory.closed.monoidal
-! leanprover-community/mathlib commit c0e00a871b9f6d3aca7c10fb3abdc8720a2c5313
+! leanprover-community/mathlib commit 0caf3701139ef2e69c215717665361cda205a90b
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -313,6 +313,36 @@ noncomputable def ofEquiv (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
exact Adjunction.leftAdjointOfNatIso i }
#align category_theory.monoidal_closed.of_equiv CategoryTheory.MonoidalClosed.ofEquiv
+/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
+monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lemma describes the
+resulting currying map `Hom(X ⊗ Y, Z) → Hom(Y, (X ⟶[C] Z))`. (`X ⟶[C] Z` is defined to be
+`F⁻¹(F(X) ⟶[D] F(Z))`, so currying in `C` is given by essentially conjugating currying in
+`D` by `F.`) -/
+theorem ofEquiv_curry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
+ [MonoidalClosed D] {X Y Z : C} (f : X ⊗ Y ⟶ Z) :
+ @MonoidalClosed.curry _ _ _ _ _ _ ((MonoidalClosed.ofEquiv F).1 _) f =
+ (F.1.1.adjunction.homEquiv Y ((ihom _).obj _))
+ (MonoidalClosed.curry
+ (F.1.1.inv.adjunction.homEquiv (F.1.1.obj X ⊗ F.1.1.obj Y) Z
+ ((compInvIso (F.commTensorLeft X)).hom.app Y ≫ f))) :=
+ rfl
+#align category_theory.monoidal_closed.of_equiv_curry_def CategoryTheory.MonoidalClosed.ofEquiv_curry_def
+
+/-- Suppose we have a monoidal equivalence `F : C ≌ D`, with `D` monoidal closed. We can pull the
+monoidal closed instance back along the equivalence. For `X, Y, Z : C`, this lemma describes the
+resulting uncurrying map `Hom(Y, (X ⟶[C] Z)) → Hom(X ⊗ Y ⟶ Z)`. (`X ⟶[C] Z` is
+defined to be `F⁻¹(F(X) ⟶[D] F(Z))`, so uncurrying in `C` is given by essentially conjugating
+uncurrying in `D` by `F.`) -/
+theorem ofEquiv_uncurry_def (F : MonoidalFunctor C D) [IsEquivalence F.toFunctor]
+ [MonoidalClosed D] {X Y Z : C}
+ (f : Y ⟶ (@ihom _ _ _ X <| (MonoidalClosed.ofEquiv F).1 X).obj Z) :
+ @MonoidalClosed.uncurry _ _ _ _ _ _ ((MonoidalClosed.ofEquiv F).1 _) f =
+ (compInvIso (F.commTensorLeft X)).inv.app Y ≫
+ (F.1.1.inv.adjunction.homEquiv (F.1.1.obj X ⊗ F.1.1.obj Y) Z).symm
+ (MonoidalClosed.uncurry
+ ((F.1.1.adjunction.homEquiv Y ((ihom (F.1.1.obj X)).obj (F.1.1.obj Z))).symm f)) :=
+ rfl
+#align category_theory.monoidal_closed.of_equiv_uncurry_def CategoryTheory.MonoidalClosed.ofEquiv_uncurry_def
end OfEquiv
end MonoidalClosed