-- Lean 4 proof step from Mathlib.CategoryTheory.Localization.Monoidal.Basic (goal)
Goal:
C : Type u_1
D : Type u_2
inst : Category.{v_1, u_1} C
inst_1 : Category.{v_2, u_2} D
L : Functor.{v_1, v_2, u_1, u_2} C D
W : MorphismProperty.{v_1, u_1} C
inst_2 : MonoidalCategory.{v_1, u_1} C
inst_3 : W.IsMonoidal
inst_4 : L.IsLocalization W
unit : D
ε : L.obj (tensorUnit.{v_1, u_1} C (𝒞 := inst)) ≅ unit
X₁ X₂ X₃ : C
⊢ Eq (α :=
    Quiver.Hom (V := LocalizedMonoidal L W ε)
      (tensorObj.{v_2, u_2} (𝒞 := instCategoryLocalizedMonoidal L W ε)
        (tensorObj.{v_2, u_2} (𝒞 := instCategoryLocalizedMonoidal L W ε) (Functor.obj L' X₁) (Functor.obj L' X₂))
        (Functor.obj L' X₃))
      (tensorObj.{v_2, u_2} (𝒞 := instCategoryLocalizedMonoidal L W ε) (Functor.obj L' X₁)
        (tensorObj.{v_2, u_2} (𝒞 := instCategoryLocalizedMonoidal L W ε) (Functor.obj L' X₂) (Functor.obj L' X₃))))
    (Iso.hom (α_ (Functor.obj L' X₁) (Functor.obj L' X₂) (Functor.obj L' X₃)))
    ((Iso.hom (μ L W ε X₁ X₂) ⊗ₘ 𝟙 (Functor.obj L' X₃)) ≫
      Iso.hom (μ L W ε (tensorObj.{v_1, u_1} (𝒞 := inst) X₁ X₂) X₃) ≫
        Functor.map L' (Iso.hom (α_ X₁ X₂ X₃)) ≫
          Iso.inv (μ L W ε X₁ (tensorObj.{v_1, u_1} (𝒞 := inst) X₂ X₃)) ≫
            (𝟙 (Functor.obj L' X₁) ⊗ₘ Iso.inv (μ L W ε X₂ X₃)))
have dsimp : Eq (α :=
  Quiver.Hom (V := LocalizedMonoidal L W ε)
    (Functor.obj
      (Functor.obj (tensorBifunctor L W ε)
        (Functor.obj (Functor.obj (tensorBifunctor L W ε) (Functor.obj L' X₁)) (Functor.obj L' X₂)))
      (Functor.obj L' X₃))
    (Functor.obj (Functor.obj (tensorBifunctor L W ε) (Functor.obj L' X₁))
      (Functor.obj (Functor.obj (tensorBifunctor L W ε) (Functor.obj L' X₂)) (Functor.obj L' X₃))))
  (NatTrans.app
      (NatTrans.app
        (NatTrans.app
          (Iso.hom
            (Localization.associator L' L' L' L' L' L' W W W W W (F₁₂ := curriedTensor C) (curriedAssociatorNatIso C)
              (tensorBifunctor L W ε) (tensorBifunctor L W ε) (tensorBifunctor L W ε) (tensorBifunctor L W ε)))
          (Functor.obj L' X₁))
        (Functor.obj L' X₂))
      (Functor.obj L' X₃) :
    Quiver.Hom (V := LocalizedMonoidal L W ε)
      (Functor.obj
        (Functor.obj (bifunctorComp₁₂Obj (tensorBifunctor L W ε) (tensorBifunctor L W ε) (Functor.obj L' X₁))
          (Functor.obj L' X₂))
        (Functor.obj L' X₃))
      (Functor.obj
        (Functor.obj (bifunctorComp₂₃Obj (tensorBifunctor L W ε) (tensorBifunctor L W ε) (Functor.obj L' X₁))
          (Functor.obj L' X₂))
        (Functor.obj L' X₃)))
  ((NatTrans.app (Functor.map (tensorBifunctor L W ε) (Iso.hom (μ L W ε X₁ X₂))) (Functor.obj L' X₃) ≫
      Functor.map (Functor.obj (tensorBifunctor L W ε) (Functor.obj L' (tensorObj.{v_1, u_1} (𝒞 := inst) X₁ X₂)))
        (𝟙 (Functor.obj L' X₃))) ≫
    Iso.hom (μ L W ε (tensorObj.{v_1, u_1} (𝒞 := inst) X₁ X₂) X₃) ≫
      Functor.map L' (Iso.hom (α_ X₁ X₂ X₃)) ≫
        Iso.inv (μ L W ε X₁ (tensorObj.{v_1, u_1} (𝒞 := inst) X₂ X₃)) ≫
          NatTrans.app (Functor.map (tensorBifunctor L W ε) (𝟙 (Functor.obj L' X₁)))
              (Functor.obj L' (tensorObj.{v_1, u_1} (𝒞 := inst) X₂ X₃)) ≫
            Functor.map (Functor.obj (tensorBifunctor L W ε) (Functor.obj L' X₁)) (Iso.inv (μ L W ε X₂ X₃)))
Tactic: dsimp +instances [monoidalCategoryStruct, associator]