-- Module: Mathlib.CategoryTheory.Monoidal.DayConvolution
Goal:
C : Type u₁
inst : Category.{v₁, u₁} C
V : Type u₂
inst_1 : Category.{v₂, u₂} V
inst_2 : MonoidalCategory.{v₁, u₁} C
inst_3 : MonoidalCategory.{v₂, u₂} V
D : Type u₃
inst_4 : Category.{v₃, u₃} D
inst_5 : MonoidalCategoryStruct.{v₃, u₃} D
inst_6 : LawfulDayConvolutionMonoidalCategoryStruct.{v₁, v₂, v₃, u₁, u₂, u₃} C V D
d₁ d₂ d₁' d₂' : D
f : d₁ ⟶ d₂
f' : d₁' ⟶ d₂'
x y : C
a :
  Eq.{v₂ + 1} (α :=
    tensorObj.{v₂, u₂} (𝒞 := inst_1)
        (Functor.obj.{v₁, v₂, u₁, u₂} (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁) x)
        (Functor.obj.{v₁, v₂, u₁, u₂} (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁') y) ⟶
      Functor.obj.{v₁, v₂, u₁, u₂}
        (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) (tensorObj.{v₃, u₃} (𝒞 := inst_4) d₂ d₂'))
        (tensorObj.{v₁, u₁} (𝒞 := inst) x y))
    (NatTrans.app
          (DayConvolution.unit (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁)
            (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁'))
          (x, y) ≫
        NatTrans.app (Functor.map (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) (f ⊗ₘ f'))
          (tensorObj.{v₁, u₁} (𝒞 := inst) x y) :
      tensorObj.{v₂, u₂} (𝒞 := inst_1)
          (Functor.obj.{v₁, v₂, u₁, u₂} (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁) x)
          (Functor.obj.{v₁, v₂, u₁, u₂} (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁') y) ⟶
        Functor.obj.{v₁, v₂, u₁, u₂}
          (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) (tensorObj.{v₃, u₃} (𝒞 := inst_4) d₂ d₂'))
          (tensorObj.{v₁, u₁} (𝒞 := inst) x y))
    ((NatTrans.app (Functor.map (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) f) x ⊗ₘ
          NatTrans.app (Functor.map (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) f') y) ≫
        NatTrans.app
          (DayConvolution.unit (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₂)
            (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₂'))
          (x, y) :
      tensorObj.{v₂, u₂} (𝒞 := inst_1)
          (Functor.obj.{v₁, v₂, u₁, u₂} (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁) x)
          (Functor.obj.{v₁, v₂, u₁, u₂} (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁') y) ⟶
        Functor.obj.{v₁, v₂, u₁, u₂}
          (@DayConvolution.convolution _ _ _ _ inst_2 inst_3 (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₂)
            (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₂') _)
          (tensorObj.{v₁, u₁} (𝒞 := inst) x y))
⊢ Eq.{v₂ + 1} (α :=
    Functor.obj.{v₁, v₂, u₁, u₂}
        (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁ ⊠
          Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁')
        (x, y) ⟶
      Functor.obj.{v₁, v₂, u₁, u₂}
        (tensor C ⋙ Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) (tensorObj.{v₃, u₃} (𝒞 := inst_4) d₂ d₂'))
        (x, y))
    (NatTrans.app
      ((Functor.CorepresentableBy.homEquiv
            (DayConvolution.corepresentableBy (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁)
              (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁')) :
          (a : (ι C V D).obj d₁ ⊛ (ι C V D).obj d₁' ⟶ (ι C V D).obj (d₂ ⊗ d₂')) →
            (ι C V D).obj d₁ ⊠ (ι C V D).obj d₁' ⟶ tensor C ⋙ (ι C V D).obj (d₂ ⊗ d₂'))
        (Functor.map (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) (f ⊗ₘ f')))
      (x, y))
    (NatTrans.app
      ((Functor.CorepresentableBy.homEquiv
            (DayConvolution.corepresentableBy (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁)
              (Functor.obj (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) d₁')) :
          (a : (ι C V D).obj d₁ ⊛ (ι C V D).obj d₁' ⟶ (ι C V D).obj (d₂ ⊗ d₂')) →
            (ι C V D).obj d₁ ⊠ (ι C V D).obj d₁' ⟶ tensor C ⋙ (ι C V D).obj (d₂ ⊗ d₂'))
        (DayConvolution.map (Functor.map (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) f)
          (Functor.map (@ι C _ V _ inst_2 inst_3 D _ inst_5 _) f')))
      (x, y))

Tactic:
simp only [externalProductBifunctor_obj_obj, Functor.comp_obj, tensor_obj,
    DayConvolution.corepresentableBy_homEquiv_apply_app,
    DayConvolution.unit_app_map_app]

Premises used: CategoryTheory.Functor.comp_obj, CategoryTheory.MonoidalCategory.externalProductBifunctor_obj_obj, CategoryTheory.MonoidalCategory.tensor_obj, CategoryTheory.MonoidalCategory.DayConvolution.corepresentableBy_homEquiv_apply_app, CategoryTheory.MonoidalCategory.DayConvolution.unit_app_map_app