-- Module: Mathlib.CategoryTheory.Localization.Monoidal.Basic
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 Y : LocalizedMonoidal L W ε
X' Y' : C
e₁ : Functor.obj L' X' ≅ X
e₂ : Functor.obj L' Y' ≅ Y
e_f :
  Iso.hom (ρ_ X) ≫ e₁.inv =
    ((e₁.inv ⊗ₘ ε.inv) ≫
        Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X')) ≫ e₁.hom) ≫
      e₁.inv
e_f₁ :
  Iso.hom (ρ_ X) ≫ e₁.inv =
    (e₁.inv ⊗ₘ ε.inv) ≫
      (Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X')) ≫ e₁.hom) ≫ e₁.inv
e_f₂ :
  Iso.hom (ρ_ X) ≫ e₁.inv =
    (e₁.inv ⊗ₘ ε.inv) ≫
      Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ (Functor.map L' (Iso.hom (ρ_ X')) ≫ e₁.hom) ≫ e₁.inv
e_f₃ :
  Iso.hom (ρ_ X) ≫ e₁.inv =
    (e₁.inv ⊗ₘ ε.inv) ≫
      Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X')) ≫ e₁.hom ≫ e₁.inv
e_f₄ :
  Iso.hom (ρ_ X) ≫ e₁.inv =
    (e₁.inv ⊗ₘ ε.inv) ≫
      Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫
        Functor.map L' (Iso.hom (ρ_ X')) ≫ 𝟙 (Functor.obj L' X')
e_f₅ :
  Iso.hom (ρ_ X) ≫ e₁.inv =
    (e₁.inv ⊗ₘ ε.inv) ≫ Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X'))
e_f₆ :
  e₁.inv ▷ tensorUnit.{v_2, u_2} (LocalizedMonoidal L W ε) (𝒞 := instCategoryLocalizedMonoidal L W ε) ≫
      Iso.hom (ρ_ (Functor.obj L' X')) =
    (e₁.inv ⊗ₘ ε.inv) ≫ Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X'))
e_f₇ :
  e₁.inv ▷ tensorUnit.{v_2, u_2} (LocalizedMonoidal L W ε) (𝒞 := instCategoryLocalizedMonoidal L W ε) ≫
      Functor.obj L' X' ◁ Iso.inv (ε' L W ε) ≫
        Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X')) =
    (e₁.inv ⊗ₘ ε.inv) ≫ Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X'))
e_f₈ :
  (e₁.inv ⊗ₘ 𝟙 (tensorUnit.{v_2, u_2} (LocalizedMonoidal L W ε) (𝒞 := instCategoryLocalizedMonoidal L W ε))) ≫
      Functor.obj L' X' ◁ Iso.inv (ε' L W ε) ≫
        Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X')) =
    (e₁.inv ⊗ₘ ε.inv) ≫ Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X'))
e_f₉ :
  (e₁.inv ⊗ₘ 𝟙 (tensorUnit.{v_2, u_2} (LocalizedMonoidal L W ε) (𝒞 := instCategoryLocalizedMonoidal L W ε))) ≫
      (𝟙 (Functor.obj L' X') ⊗ₘ Iso.inv (ε' L W ε)) ≫
        Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X')) =
    (e₁.inv ⊗ₘ ε.inv) ≫ Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X'))
e_f₁₀ :
  (e₁.inv ≫ 𝟙 (Functor.obj L' X') ⊗ₘ
        𝟙 (tensorUnit.{v_2, u_2} (LocalizedMonoidal L W ε) (𝒞 := instCategoryLocalizedMonoidal L W ε)) ≫
          Iso.inv (ε' L W ε)) ≫
      Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X')) =
    (e₁.inv ⊗ₘ ε.inv) ≫ Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X'))
e_f₁₁ :
  (e₁.inv ⊗ₘ
        𝟙 (tensorUnit.{v_2, u_2} (LocalizedMonoidal L W ε) (𝒞 := instCategoryLocalizedMonoidal L W ε)) ≫
          Iso.inv (ε' L W ε)) ≫
      Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X')) =
    (e₁.inv ⊗ₘ ε.inv) ≫ Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X'))
e_f₁₂ e_f₁₃ :
  (e₁.inv ⊗ₘ Iso.inv (ε' L W ε)) ≫
      Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X')) =
    (e₁.inv ⊗ₘ ε.inv) ≫ Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X'))
⊢ Iso.hom (ρ_ X) =
    (e₁.inv ⊗ₘ ε.inv) ≫
      Iso.hom (μ L W ε X' (tensorUnit.{v_1, u_1} C (𝒞 := inst))) ≫ Functor.map L' (Iso.hom (ρ_ X')) ≫ e₁.hom

Tactic:
rw [← cancel_mono e₁.inv, assoc, assoc, assoc, Iso.hom_inv_id, comp_id,
    ← rightUnitor_naturality, rightUnitor_hom_app,
    ← tensorHom_id, ← id_tensorHom, ← tensor_comp_assoc, comp_id, id_comp]

Premises used: CategoryTheory.Category.assoc, CategoryTheory.Localization.Monoidal.id_tensorHom, CategoryTheory.Iso.hom_inv_id, CategoryTheory.Localization.Monoidal.tensorHom_id, CategoryTheory.Localization.Monoidal.rightUnitor_naturality, CategoryTheory.cancel_mono, CategoryTheory.Category.comp_id, CategoryTheory.Localization.Monoidal.tensor_comp_assoc, CategoryTheory.Iso.inv, CategoryTheory.Localization.Monoidal.rightUnitor_hom_app, CategoryTheory.Category.id_comp