ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- CategoryTheory.Bicategory.Lan.CommuteWith.lanCompIsoWhisker_hom_right
@[simp]
theorem lanCompIsoWhisker_hom_right :
    (lanCompIsoWhisker f g h).hom.right = lanDesc ((lanLeftExtension f g).whisker h) 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} (f : a ⟶ b) (g : a ⟶ c) [CategoryTheory.Bicategory.HasLeftKanExtension f g] {x : B} (h : c ⟶ x) [CategoryTheory.Bicategory.Lan.CommuteWith f g h]
Goal: (CategoryTheory.Bicategory.Lan.CommuteWith.lanCompIsoWhisker f g h).hom.right =
  CategoryTheory.Bicategory.lanDesc ((CategoryTheory.Bicategory.lanLeftExtension f g).whisker h)
-- CategoryTheory.Bicategory.Lan.CommuteWith.lanCompIsoWhisker_inv_right
@[simp]
theorem lanCompIsoWhisker_inv_right :
    (lanCompIsoWhisker f g h).inv.right = (isKan f g h).desc (lanLeftExtension f (g ≫ h)) 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} (f : a ⟶ b) (g : a ⟶ c) [CategoryTheory.Bicategory.HasLeftKanExtension f g] {x : B} (h : c ⟶ x) [CategoryTheory.Bicategory.Lan.CommuteWith f g h]
Goal: (CategoryTheory.Bicategory.Lan.CommuteWith.lanCompIsoWhisker f g h).inv.right =
  (CategoryTheory.Bicategory.Lan.CommuteWith.isKan f g h).desc
    (CategoryTheory.Bicategory.lanLeftExtension f (CategoryTheory.CategoryStruct.comp g h))
-- CategoryTheory.Bicategory.Lan.CommuteWith.lanCompIso_inv
@[simps!]
def lanCompIso : f⁺ (g ≫ h) ≅ f⁺ g ≫ h 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} (f : a ⟶ b) (g : a ⟶ c) [CategoryTheory.Bicategory.HasLeftKanExtension f g] {x : B} (h : c ⟶ x) [CategoryTheory.Bicategory.Lan.CommuteWith f g h]
Goal: (CategoryTheory.Bicategory.Lan.CommuteWith.lanCompIso f g h).inv =
  (CategoryTheory.Bicategory.Lan.CommuteWith.isKan f g h).desc
    (CategoryTheory.Bicategory.lanLeftExtension f (CategoryTheory.CategoryStruct.comp g h))
-- CategoryTheory.Bicategory.Lan.CommuteWith.lanCompIso_hom
@[simps!]
def lanCompIso : f⁺ (g ≫ h) ≅ f⁺ g ≫ h 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} (f : a ⟶ b) (g : a ⟶ c) [CategoryTheory.Bicategory.HasLeftKanExtension f g] {x : B} (h : c ⟶ x) [CategoryTheory.Bicategory.Lan.CommuteWith f g h]
Goal: (CategoryTheory.Bicategory.Lan.CommuteWith.lanCompIso f g h).hom =
  CategoryTheory.Bicategory.lanDesc ((CategoryTheory.Bicategory.lanLeftExtension f g).whisker h)
-- CategoryTheory.Bicategory.HasAbsLeftKanExtension.commute
class HasAbsLeftKanExtension (f : a ⟶ b) (g : a ⟶ c) extends HasLeftKanExtension f g : Prop where
  commute {x : B} (h : c ⟶ x) : Lan.CommuteWith f g h
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : a ⟶ b} {g : a ⟶ c} [self : CategoryTheory.Bicategory.HasAbsLeftKanExtension f g] {x : B} (h : c ⟶ x)
Goal: CategoryTheory.Bicategory.Lan.CommuteWith f g h
-- CategoryTheory.Bicategory.LeftExtension.IsAbsKan.hasAbsLeftKanExtension
theorem LeftExtension.IsAbsKan.hasAbsLeftKanExtension {t : LeftExtension f g} (H : IsAbsKan t) :
    HasAbsLeftKanExtension f g 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : a ⟶ b} {g : a ⟶ c} {t : CategoryTheory.Bicategory.LeftExtension f g} (H : t.IsAbsKan)
Goal: CategoryTheory.Bicategory.HasAbsLeftKanExtension f g
-- CategoryTheory.Bicategory.HasLeftKanLift.hasInitial
class HasLeftKanLift (f : b ⟶ a) (g : c ⟶ a) : Prop where mk' ::
  hasInitial : HasInitial <| LeftLift f g
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} [self : CategoryTheory.Bicategory.HasLeftKanLift f g]
Goal: CategoryTheory.Limits.HasInitial (CategoryTheory.Bicategory.LeftLift f g)
-- CategoryTheory.Bicategory.LeftLift.IsKan.hasLeftKanLift
theorem LeftLift.IsKan.hasLeftKanLift {t : LeftLift f g} (H : IsKan t) : HasLeftKanLift f g 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} {t : CategoryTheory.Bicategory.LeftLift f g} (H : t.IsKan)
Goal: CategoryTheory.Bicategory.HasLeftKanLift f g
-- CategoryTheory.Bicategory.lanLiftLeftLift_lift
@[simp]
theorem lanLiftLeftLift_lift (f : b ⟶ a) (g : c ⟶ a) [HasLeftKanLift f g] :
    (lanLiftLeftLift f g).lift = f₊ g 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} (f : b ⟶ a) (g : c ⟶ a) [CategoryTheory.Bicategory.HasLeftKanLift f g]
Goal: (CategoryTheory.Bicategory.lanLiftLeftLift f g).lift = CategoryTheory.Bicategory.lanLift f g
-- CategoryTheory.Bicategory.lanLiftLeftLift_unit
@[simp]
theorem lanLiftLeftLift_unit (f : b ⟶ a) (g : c ⟶ a) [HasLeftKanLift f g] :
    (lanLiftLeftLift f g).unit = lanLiftUnit f g 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} (f : b ⟶ a) (g : c ⟶ a) [CategoryTheory.Bicategory.HasLeftKanLift f g]
Goal: (CategoryTheory.Bicategory.lanLiftLeftLift f g).unit = CategoryTheory.Bicategory.lanLiftUnit f g
-- CategoryTheory.Bicategory.lanLiftUnit_desc
@[reassoc (attr := simp)]
theorem lanLiftUnit_desc [HasLeftKanLift f g] (s : LeftLift f g) :
    lanLiftUnit f g ≫ lanLiftDesc s ▷ f = s.unit 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} [CategoryTheory.Bicategory.HasLeftKanLift f g] (s : CategoryTheory.Bicategory.LeftLift f g)
Goal: CategoryTheory.CategoryStruct.comp (CategoryTheory.Bicategory.lanLiftUnit f g)
    (CategoryTheory.Bicategory.whiskerRight (CategoryTheory.Bicategory.lanLiftDesc s) f) =
  s.unit
-- CategoryTheory.Bicategory.lanLiftIsKan_desc
@[simp]
theorem lanLiftIsKan_desc [HasLeftKanLift f g] (s : LeftLift f g) :
    (lanLiftIsKan f g).desc s = lanLiftDesc s 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} [CategoryTheory.Bicategory.HasLeftKanLift f g] (s : CategoryTheory.Bicategory.LeftLift f g)
Goal: (CategoryTheory.Bicategory.lanLiftIsKan f g).desc s = CategoryTheory.Bicategory.lanLiftDesc s
-- CategoryTheory.Bicategory.LanLift.existsUnique
theorem LanLift.existsUnique [HasLeftKanLift f g] (s : LeftLift f g) :
    ∃! τ, lanLiftUnit f g ≫ τ ▷ f = s.unit 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} [CategoryTheory.Bicategory.HasLeftKanLift f g] (s : CategoryTheory.Bicategory.LeftLift f g)
Goal: ∃! τ,
  CategoryTheory.CategoryStruct.comp (CategoryTheory.Bicategory.lanLiftUnit f g)
      (CategoryTheory.Bicategory.whiskerRight τ f) =
    s.unit
-- CategoryTheory.Bicategory.LanLift.CommuteWith.commute
class LanLift.CommuteWith
    (f : b ⟶ a) (g : c ⟶ a) [HasLeftKanLift f g] {x : B} (h : x ⟶ c) : Prop where
  commute : Nonempty <| IsKan <| (lanLiftLeftLift f g).whisker h
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} [CategoryTheory.Bicategory.HasLeftKanLift f g] {x : B} {h : x ⟶ c} [self : CategoryTheory.Bicategory.LanLift.CommuteWith f g h]
Goal: Nonempty ((CategoryTheory.Bicategory.lanLiftLeftLift f g).whisker h).IsKan
-- CategoryTheory.Bicategory.LanLift.CommuteWith.of_isKan_whisker
theorem of_isKan_whisker [HasLeftKanLift f g] (t : LeftLift f g) {x : B} (h : x ⟶ c)
    (H : IsKan (t.whisker h)) (i : t.whisker h ≅ (lanLiftLeftLift f g).whisker h) :
    LanLift.CommuteWith f g h 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} [CategoryTheory.Bicategory.HasLeftKanLift f g] (t : CategoryTheory.Bicategory.LeftLift f g) {x : B} (h : x ⟶ c) (H : (t.whisker h).IsKan) (i : t.whisker h ≅ (CategoryTheory.Bicategory.lanLiftLeftLift f g).whisker h)
Goal: CategoryTheory.Bicategory.LanLift.CommuteWith f g h
-- CategoryTheory.Bicategory.LanLift.CommuteWith.of_lanLift_comp_iso
theorem of_lanLift_comp_iso [HasLeftKanLift f g]
    {x : B} {h : x ⟶ c} [HasLeftKanLift f (h ≫ g)]
    (i : f₊ (h ≫ g) ≅ h ≫ f₊ g)
    (w : lanLiftUnit f (h ≫ g) ≫ i.hom ▷ f = h ◁ lanLiftUnit f g ≫ (α_ _ _ _).inv) :
    LanLift.CommuteWith f g h 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} [CategoryTheory.Bicategory.HasLeftKanLift f g] {x : B} {h : x ⟶ c} [CategoryTheory.Bicategory.HasLeftKanLift f (CategoryTheory.CategoryStruct.comp h g)] (i :
  CategoryTheory.Bicategory.lanLift f (CategoryTheory.CategoryStruct.comp h g) ≅
    CategoryTheory.CategoryStruct.comp h (CategoryTheory.Bicategory.lanLift f g)) (w :
  CategoryTheory.CategoryStruct.comp (CategoryTheory.Bicategory.lanLiftUnit f (CategoryTheory.CategoryStruct.comp h g))
      (CategoryTheory.Bicategory.whiskerRight i.hom f) =
    CategoryTheory.CategoryStruct.comp
      (CategoryTheory.Bicategory.whiskerLeft h (CategoryTheory.Bicategory.lanLiftUnit f g))
      (CategoryTheory.Bicategory.associator h (CategoryTheory.Bicategory.lanLift f g) f).inv)
Goal: CategoryTheory.Bicategory.LanLift.CommuteWith f g h
-- CategoryTheory.Bicategory.LanLift.CommuteWith.lanLiftCompIsoWhisker_hom_right
@[simp]
theorem lanLiftCompIsoWhisker_hom_right :
    (lanLiftCompIsoWhisker f g h).hom.right = lanLiftDesc ((lanLiftLeftLift f g).whisker h) 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} (f : b ⟶ a) (g : c ⟶ a) [CategoryTheory.Bicategory.HasLeftKanLift f g] {x : B} (h : x ⟶ c) [CategoryTheory.Bicategory.LanLift.CommuteWith f g h]
Goal: (CategoryTheory.Bicategory.LanLift.CommuteWith.lanLiftCompIsoWhisker f g h).hom.right =
  CategoryTheory.Bicategory.lanLiftDesc ((CategoryTheory.Bicategory.lanLiftLeftLift f g).whisker h)
-- CategoryTheory.Bicategory.LanLift.CommuteWith.lanLiftCompIsoWhisker_inv_right
@[simp]
theorem lanLiftCompIsoWhisker_inv_right :
    (lanLiftCompIsoWhisker f g h).inv.right = (isKan f g h).desc (lanLiftLeftLift f (h ≫ g)) 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} (f : b ⟶ a) (g : c ⟶ a) [CategoryTheory.Bicategory.HasLeftKanLift f g] {x : B} (h : x ⟶ c) [CategoryTheory.Bicategory.LanLift.CommuteWith f g h]
Goal: (CategoryTheory.Bicategory.LanLift.CommuteWith.lanLiftCompIsoWhisker f g h).inv.right =
  (CategoryTheory.Bicategory.LanLift.CommuteWith.isKan f g h).desc
    (CategoryTheory.Bicategory.lanLiftLeftLift f (CategoryTheory.CategoryStruct.comp h g))
-- CategoryTheory.Bicategory.LanLift.CommuteWith.lanLiftCompIso_hom
@[simps!]
def lanLiftCompIso : f₊ (h ≫ g) ≅ h ≫ f₊ g 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} (f : b ⟶ a) (g : c ⟶ a) [CategoryTheory.Bicategory.HasLeftKanLift f g] {x : B} (h : x ⟶ c) [CategoryTheory.Bicategory.LanLift.CommuteWith f g h]
Goal: (CategoryTheory.Bicategory.LanLift.CommuteWith.lanLiftCompIso f g h).hom =
  CategoryTheory.Bicategory.lanLiftDesc ((CategoryTheory.Bicategory.lanLiftLeftLift f g).whisker h)
-- CategoryTheory.Bicategory.LanLift.CommuteWith.lanLiftCompIso_inv
@[simps!]
def lanLiftCompIso : f₊ (h ≫ g) ≅ h ≫ f₊ g 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} (f : b ⟶ a) (g : c ⟶ a) [CategoryTheory.Bicategory.HasLeftKanLift f g] {x : B} (h : x ⟶ c) [CategoryTheory.Bicategory.LanLift.CommuteWith f g h]
Goal: (CategoryTheory.Bicategory.LanLift.CommuteWith.lanLiftCompIso f g h).inv =
  (CategoryTheory.Bicategory.LanLift.CommuteWith.isKan f g h).desc
    (CategoryTheory.Bicategory.lanLiftLeftLift f (CategoryTheory.CategoryStruct.comp h g))
-- CategoryTheory.Bicategory.HasAbsLeftKanLift.commute
class HasAbsLeftKanLift (f : b ⟶ a) (g : c ⟶ a) extends HasLeftKanLift f g : Prop where
  commute : ∀ {x : B} (h : x ⟶ c), LanLift.CommuteWith f g h
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} [self : CategoryTheory.Bicategory.HasAbsLeftKanLift f g] {x : B} (h : x ⟶ c)
Goal: CategoryTheory.Bicategory.LanLift.CommuteWith f g h
-- CategoryTheory.Bicategory.LeftLift.IsAbsKan.hasAbsLeftKanLift
theorem LeftLift.IsAbsKan.hasAbsLeftKanLift {t : LeftLift f g} (H : IsAbsKan t) :
    HasAbsLeftKanLift f g 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} {t : CategoryTheory.Bicategory.LeftLift f g} (H : t.IsAbsKan)
Goal: CategoryTheory.Bicategory.HasAbsLeftKanLift f g
-- CategoryTheory.Bicategory.LeftExtension.IsKan.fac
@[reassoc (attr := simp)]
theorem fac (H : IsKan t) (s : LeftExtension f g) :
    t.unit ≫ f ◁ H.desc s = s.unit 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : a ⟶ b} {g : a ⟶ c} {t : CategoryTheory.Bicategory.LeftExtension f g} (H : t.IsKan) (s : CategoryTheory.Bicategory.LeftExtension f g)
Goal: CategoryTheory.CategoryStruct.comp t.unit (CategoryTheory.Bicategory.whiskerLeft f (H.desc s)) = s.unit
-- CategoryTheory.Bicategory.LeftExtension.IsKan.hom_ext
theorem hom_ext (H : IsKan t) {k : b ⟶ c} {τ τ' : t.extension ⟶ k}
    (w : t.unit ≫ f ◁ τ = t.unit ≫ f ◁ τ') : τ = τ' 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : a ⟶ b} {g : a ⟶ c} {t : CategoryTheory.Bicategory.LeftExtension f g} (H : t.IsKan) {k : b ⟶ c} {τ τ' : t.extension ⟶ k} (w :
  CategoryTheory.CategoryStruct.comp t.unit (CategoryTheory.Bicategory.whiskerLeft f τ) =
    CategoryTheory.CategoryStruct.comp t.unit (CategoryTheory.Bicategory.whiskerLeft f τ'))
Goal: τ = τ'
-- CategoryTheory.Bicategory.LeftExtension.IsKan.uniqueUpToIso_hom_right
@[simp]
theorem uniqueUpToIso_hom_right (P : IsKan s) (Q : IsKan t) :
    (uniqueUpToIso P Q).hom.right = P.desc t 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : a ⟶ b} {g : a ⟶ c} {s t : CategoryTheory.Bicategory.LeftExtension f g} (P : s.IsKan) (Q : t.IsKan)
Goal: (P.uniqueUpToIso Q).hom.right = P.desc t
-- CategoryTheory.Bicategory.LeftExtension.IsKan.uniqueUpToIso_inv_right
@[simp]
theorem uniqueUpToIso_inv_right (P : IsKan s) (Q : IsKan t) :
    (uniqueUpToIso P Q).inv.right = Q.desc s 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : a ⟶ b} {g : a ⟶ c} {s t : CategoryTheory.Bicategory.LeftExtension f g} (P : s.IsKan) (Q : t.IsKan)
Goal: (P.uniqueUpToIso Q).inv.right = Q.desc s
-- CategoryTheory.Bicategory.LeftLift.IsKan.fac
@[reassoc (attr := simp)]
theorem fac (H : IsKan t) (s : LeftLift f g) :
    t.unit ≫ H.desc s ▷ f = s.unit 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} {t : CategoryTheory.Bicategory.LeftLift f g} (H : t.IsKan) (s : CategoryTheory.Bicategory.LeftLift f g)
Goal: CategoryTheory.CategoryStruct.comp t.unit (CategoryTheory.Bicategory.whiskerRight (H.desc s) f) = s.unit
-- CategoryTheory.Bicategory.LeftLift.IsKan.hom_ext
theorem hom_ext (H : IsKan t) {k : c ⟶ b} {τ τ' : t.lift ⟶ k}
    (w : t.unit ≫ τ ▷ f = t.unit ≫ τ' ▷ f) : τ = τ' 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} {t : CategoryTheory.Bicategory.LeftLift f g} (H : t.IsKan) {k : c ⟶ b} {τ τ' : t.lift ⟶ k} (w :
  CategoryTheory.CategoryStruct.comp t.unit (CategoryTheory.Bicategory.whiskerRight τ f) =
    CategoryTheory.CategoryStruct.comp t.unit (CategoryTheory.Bicategory.whiskerRight τ' f))
Goal: τ = τ'
-- CategoryTheory.Bicategory.LeftLift.IsKan.uniqueUpToIso_hom_right
@[simp]
theorem uniqueUpToIso_hom_right (P : IsKan s) (Q : IsKan t) :
    (uniqueUpToIso P Q).hom.right = P.desc t 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} {s t : CategoryTheory.Bicategory.LeftLift f g} (P : s.IsKan) (Q : t.IsKan)
Goal: (P.uniqueUpToIso Q).hom.right = P.desc t
-- CategoryTheory.Bicategory.LeftLift.IsKan.uniqueUpToIso_inv_right
@[simp]
theorem uniqueUpToIso_inv_right (P : IsKan s) (Q : IsKan t) :
    (uniqueUpToIso P Q).inv.right = Q.desc s 
Arguments: {B : Type u} [CategoryTheory.Bicategory B] {a b c : B} {f : b ⟶ a} {g : c ⟶ a} {s t : CategoryTheory.Bicategory.LeftLift f g} (P : s.IsKan) (Q : t.IsKan)
Goal: (P.uniqueUpToIso Q).inv.right = Q.desc s
-- CategoryTheory.MonoidalCategory.leftUnitor_naturality
-- Porting note: The Mathport did not translate the temporary notation
class MonoidalCategory (C : Type u) [𝒞 : Category.{v} C] extends MonoidalCategoryStruct C where
  tensorHom_def {X₁ Y₁ X₂ Y₂ : C} (f : X₁ ⟶ Y₁) (g : X₂ ⟶ Y₂) :
    f ⊗ g = (f ▷ X₂) ≫ (Y₁ ◁ g) := by
      aesop_cat
    tensor_id : ∀ X₁ X₂ : C, 𝟙 X₁ ⊗ 𝟙 X₂ = 𝟙 (X₁ ⊗ X₂) := by aesop_cat
    tensor_comp :
    ∀ {X₁ Y₁ Z₁ X₂ Y₂ Z₂ : C} (f₁ : X₁ ⟶ Y₁) (f₂ : X₂ ⟶ Y₂) (g₁ : Y₁ ⟶ Z₁) (g₂ : Y₂ ⟶ Z₂),
      (f₁ ≫ g₁) ⊗ (f₂ ≫ g₂) = (f₁ ⊗ f₂) ≫ (g₁ ⊗ g₂) := by
    aesop_cat
  whiskerLeft_id : ∀ (X Y : C), X ◁ 𝟙 Y = 𝟙 (X ⊗ Y) := by
    aesop_cat
  id_whiskerRight : ∀ (X Y : C), 𝟙 X ▷ Y = 𝟙 (X ⊗ Y) := by
    aesop_cat
    associator_naturality :
    ∀ {X₁ X₂ X₃ Y₁ Y₂ Y₃ : C} (f₁ : X₁ ⟶ Y₁) (f₂ : X₂ ⟶ Y₂) (f₃ : X₃ ⟶ Y₃),
      ((f₁ ⊗ f₂) ⊗ f₃) ≫ (α_ Y₁ Y₂ Y₃).hom = (α_ X₁ X₂ X₃).hom ≫ (f₁ ⊗ (f₂ ⊗ f₃)) := by
    aesop_cat
    leftUnitor_naturality :
    ∀ {X Y : C} (f : X ⟶ Y), 𝟙_ _ ◁ f ≫ (λ_ Y).hom = (λ_ X).hom ≫ f := by
    aesop_cat
    rightUnitor_naturality :
    ∀ {X Y : C} (f : X ⟶ Y), f ▷ 𝟙_ _ ≫ (ρ_ Y).hom = (ρ_ X).hom ≫ f := by
    aesop_cat
    pentagon :
    ∀ W X Y Z : C,
      (α_ W X Y).hom ▷ Z ≫ (α_ W (X ⊗ Y) Z).hom ≫ W ◁ (α_ X Y Z).hom =
        (α_ (W ⊗ X) Y Z).hom ≫ (α_ W X (Y ⊗ Z)).hom := by
    aesop_cat
    triangle :
    ∀ X Y : C, (α_ X (𝟙_ _) Y).hom ≫ X ◁ (λ_ Y).hom = (ρ_ X).hom ▷ Y := by
    aesop_cat
Arguments: {C : Type u} [𝒞 : CategoryTheory.Category.{v, u} C] [self : CategoryTheory.MonoidalCategory C] {X Y : C} (f : X ⟶ Y)
Goal: CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategory.whiskerLeft (𝟙_ C) f)
    (CategoryTheory.MonoidalCategory.leftUnitor Y).hom =
  CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategory.leftUnitor X).hom f
-- CategoryTheory.MonoidalCategory.triangle
-- Porting note: The Mathport did not translate the temporary notation
class MonoidalCategory (C : Type u) [𝒞 : Category.{v} C] extends MonoidalCategoryStruct C where
  tensorHom_def {X₁ Y₁ X₂ Y₂ : C} (f : X₁ ⟶ Y₁) (g : X₂ ⟶ Y₂) :
    f ⊗ g = (f ▷ X₂) ≫ (Y₁ ◁ g) := by
      aesop_cat
    tensor_id : ∀ X₁ X₂ : C, 𝟙 X₁ ⊗ 𝟙 X₂ = 𝟙 (X₁ ⊗ X₂) := by aesop_cat
    tensor_comp :
    ∀ {X₁ Y₁ Z₁ X₂ Y₂ Z₂ : C} (f₁ : X₁ ⟶ Y₁) (f₂ : X₂ ⟶ Y₂) (g₁ : Y₁ ⟶ Z₁) (g₂ : Y₂ ⟶ Z₂),
      (f₁ ≫ g₁) ⊗ (f₂ ≫ g₂) = (f₁ ⊗ f₂) ≫ (g₁ ⊗ g₂) := by
    aesop_cat
  whiskerLeft_id : ∀ (X Y : C), X ◁ 𝟙 Y = 𝟙 (X ⊗ Y) := by
    aesop_cat
  id_whiskerRight : ∀ (X Y : C), 𝟙 X ▷ Y = 𝟙 (X ⊗ Y) := by
    aesop_cat
    associator_naturality :
    ∀ {X₁ X₂ X₃ Y₁ Y₂ Y₃ : C} (f₁ : X₁ ⟶ Y₁) (f₂ : X₂ ⟶ Y₂) (f₃ : X₃ ⟶ Y₃),
      ((f₁ ⊗ f₂) ⊗ f₃) ≫ (α_ Y₁ Y₂ Y₃).hom = (α_ X₁ X₂ X₃).hom ≫ (f₁ ⊗ (f₂ ⊗ f₃)) := by
    aesop_cat
    leftUnitor_naturality :
    ∀ {X Y : C} (f : X ⟶ Y), 𝟙_ _ ◁ f ≫ (λ_ Y).hom = (λ_ X).hom ≫ f := by
    aesop_cat
    rightUnitor_naturality :
    ∀ {X Y : C} (f : X ⟶ Y), f ▷ 𝟙_ _ ≫ (ρ_ Y).hom = (ρ_ X).hom ≫ f := by
    aesop_cat
    pentagon :
    ∀ W X Y Z : C,
      (α_ W X Y).hom ▷ Z ≫ (α_ W (X ⊗ Y) Z).hom ≫ W ◁ (α_ X Y Z).hom =
        (α_ (W ⊗ X) Y Z).hom ≫ (α_ W X (Y ⊗ Z)).hom := by
    aesop_cat
    triangle :
    ∀ X Y : C, (α_ X (𝟙_ _) Y).hom ≫ X ◁ (λ_ Y).hom = (ρ_ X).hom ▷ Y := by
    aesop_cat
Arguments: {C : Type u} [𝒞 : CategoryTheory.Category.{v, u} C] [self : CategoryTheory.MonoidalCategory C] (X Y : C)
Goal: CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategory.associator X (𝟙_ C) Y).hom
    (CategoryTheory.MonoidalCategory.whiskerLeft X (CategoryTheory.MonoidalCategory.leftUnitor Y).hom) =
  CategoryTheory.MonoidalCategory.whiskerRight (CategoryTheory.MonoidalCategory.rightUnitor X).hom Y
-- CategoryTheory.MonoidalCategory.rightUnitor_naturality
-- Porting note: The Mathport did not translate the temporary notation
class MonoidalCategory (C : Type u) [𝒞 : Category.{v} C] extends MonoidalCategoryStruct C where
  tensorHom_def {X₁ Y₁ X₂ Y₂ : C} (f : X₁ ⟶ Y₁) (g : X₂ ⟶ Y₂) :
    f ⊗ g = (f ▷ X₂) ≫ (Y₁ ◁ g) := by
      aesop_cat
    tensor_id : ∀ X₁ X₂ : C, 𝟙 X₁ ⊗ 𝟙 X₂ = 𝟙 (X₁ ⊗ X₂) := by aesop_cat
    tensor_comp :
    ∀ {X₁ Y₁ Z₁ X₂ Y₂ Z₂ : C} (f₁ : X₁ ⟶ Y₁) (f₂ : X₂ ⟶ Y₂) (g₁ : Y₁ ⟶ Z₁) (g₂ : Y₂ ⟶ Z₂),
      (f₁ ≫ g₁) ⊗ (f₂ ≫ g₂) = (f₁ ⊗ f₂) ≫ (g₁ ⊗ g₂) := by
    aesop_cat
  whiskerLeft_id : ∀ (X Y : C), X ◁ 𝟙 Y = 𝟙 (X ⊗ Y) := by
    aesop_cat
  id_whiskerRight : ∀ (X Y : C), 𝟙 X ▷ Y = 𝟙 (X ⊗ Y) := by
    aesop_cat
    associator_naturality :
    ∀ {X₁ X₂ X₃ Y₁ Y₂ Y₃ : C} (f₁ : X₁ ⟶ Y₁) (f₂ : X₂ ⟶ Y₂) (f₃ : X₃ ⟶ Y₃),
      ((f₁ ⊗ f₂) ⊗ f₃) ≫ (α_ Y₁ Y₂ Y₃).hom = (α_ X₁ X₂ X₃).hom ≫ (f₁ ⊗ (f₂ ⊗ f₃)) := by
    aesop_cat
    leftUnitor_naturality :
    ∀ {X Y : C} (f : X ⟶ Y), 𝟙_ _ ◁ f ≫ (λ_ Y).hom = (λ_ X).hom ≫ f := by
    aesop_cat
    rightUnitor_naturality :
    ∀ {X Y : C} (f : X ⟶ Y), f ▷ 𝟙_ _ ≫ (ρ_ Y).hom = (ρ_ X).hom ≫ f := by
    aesop_cat
    pentagon :
    ∀ W X Y Z : C,
      (α_ W X Y).hom ▷ Z ≫ (α_ W (X ⊗ Y) Z).hom ≫ W ◁ (α_ X Y Z).hom =
        (α_ (W ⊗ X) Y Z).hom ≫ (α_ W X (Y ⊗ Z)).hom := by
    aesop_cat
    triangle :
    ∀ X Y : C, (α_ X (𝟙_ _) Y).hom ≫ X ◁ (λ_ Y).hom = (ρ_ X).hom ▷ Y := by
    aesop_cat
Arguments: {C : Type u} [𝒞 : CategoryTheory.Category.{v, u} C] [self : CategoryTheory.MonoidalCategory C] {X Y : C} (f : X ⟶ Y)
Goal: CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategory.whiskerRight f (𝟙_ C))
    (CategoryTheory.MonoidalCategory.rightUnitor Y).hom =
  CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategory.rightUnitor X).hom f
-- CategoryTheory.MonoidalCategory.associator_naturality
-- Porting note: The Mathport did not translate the temporary notation
class MonoidalCategory (C : Type u) [𝒞 : Category.{v} C] extends MonoidalCategoryStruct C where
  tensorHom_def {X₁ Y₁ X₂ Y₂ : C} (f : X₁ ⟶ Y₁) (g : X₂ ⟶ Y₂) :
    f ⊗ g = (f ▷ X₂) ≫ (Y₁ ◁ g) := by
      aesop_cat
    tensor_id : ∀ X₁ X₂ : C, 𝟙 X₁ ⊗ 𝟙 X₂ = 𝟙 (X₁ ⊗ X₂) := by aesop_cat
    tensor_comp :
    ∀ {X₁ Y₁ Z₁ X₂ Y₂ Z₂ : C} (f₁ : X₁ ⟶ Y₁) (f₂ : X₂ ⟶ Y₂) (g₁ : Y₁ ⟶ Z₁) (g₂ : Y₂ ⟶ Z₂),
      (f₁ ≫ g₁) ⊗ (f₂ ≫ g₂) = (f₁ ⊗ f₂) ≫ (g₁ ⊗ g₂) := by
    aesop_cat
  whiskerLeft_id : ∀ (X Y : C), X ◁ 𝟙 Y = 𝟙 (X ⊗ Y) := by
    aesop_cat
  id_whiskerRight : ∀ (X Y : C), 𝟙 X ▷ Y = 𝟙 (X ⊗ Y) := by
    aesop_cat
    associator_naturality :
    ∀ {X₁ X₂ X₃ Y₁ Y₂ Y₃ : C} (f₁ : X₁ ⟶ Y₁) (f₂ : X₂ ⟶ Y₂) (f₃ : X₃ ⟶ Y₃),
      ((f₁ ⊗ f₂) ⊗ f₃) ≫ (α_ Y₁ Y₂ Y₃).hom = (α_ X₁ X₂ X₃).hom ≫ (f₁ ⊗ (f₂ ⊗ f₃)) := by
    aesop_cat
    leftUnitor_naturality :
    ∀ {X Y : C} (f : X ⟶ Y), 𝟙_ _ ◁ f ≫ (λ_ Y).hom = (λ_ X).hom ≫ f := by
    aesop_cat
    rightUnitor_naturality :
    ∀ {X Y : C} (f : X ⟶ Y), f ▷ 𝟙_ _ ≫ (ρ_ Y).hom = (ρ_ X).hom ≫ f := by
    aesop_cat
    pentagon :
    ∀ W X Y Z : C,
      (α_ W X Y).hom ▷ Z ≫ (α_ W (X ⊗ Y) Z).hom ≫ W ◁ (α_ X Y Z).hom =
        (α_ (W ⊗ X) Y Z).hom ≫ (α_ W X (Y ⊗ Z)).hom := by
    aesop_cat
    triangle :
    ∀ X Y : C, (α_ X (𝟙_ _) Y).hom ≫ X ◁ (λ_ Y).hom = (ρ_ X).hom ▷ Y := by
    aesop_cat
Arguments: {C : Type u} [𝒞 : CategoryTheory.Category.{v, u} C] [self : CategoryTheory.MonoidalCategory C] {X₁ X₂ X₃ Y₁ Y₂ Y₃ : C} (f₁ : X₁ ⟶ Y₁) (f₂ : X₂ ⟶ Y₂) (f₃ : X₃ ⟶ Y₃)
Goal: CategoryTheory.CategoryStruct.comp
    (CategoryTheory.MonoidalCategory.tensorHom (CategoryTheory.MonoidalCategory.tensorHom f₁ f₂) f₃)
    (CategoryTheory.MonoidalCategory.associator Y₁ Y₂ Y₃).hom =
  CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategory.associator X₁ X₂ X₃).hom
    (CategoryTheory.MonoidalCategory.tensorHom f₁ (CategoryTheory.MonoidalCategory.tensorHom f₂ f₃))