Theorem: CategoryTheory.LaxBraidedFunctor.comp_ε
File: Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean

Proof steps:
state_before: C : Type u₁
inst✝⁸ : Category.{v₁, u₁} C
inst✝⁷ : MonoidalCategory C
inst✝⁶ : BraidedCategory C
D : Type u₂
inst✝⁵ : Category.{v₂, u₂} D
inst✝⁴ : MonoidalCategory D
inst✝³ : BraidedCategory D
E : Type u₃
inst✝² : Category.{v₃, u₃} E
inst✝¹ : MonoidalCategory E
inst✝ : BraidedCategory E
F : LaxBraidedFunctor C D
G : LaxBraidedFunctor D E
X Y : C
⊢ __src✝.μ X Y ≫ __src✝.map (β_ X Y).hom = (β_ (__src✝.obj X) (__src✝.obj Y)).hom ≫ __src✝.μ Y X
state_after: C : Type u₁
inst✝⁸ : Category.{v₁, u₁} C
inst✝⁷ : MonoidalCategory C
inst✝⁶ : BraidedCategory C
D : Type u₂
inst✝⁵ : Category.{v₂, u₂} D
inst✝⁴ : MonoidalCategory D
inst✝³ : BraidedCategory D
E : Type u₃
inst✝² : Category.{v₃, u₃} E
inst✝¹ : MonoidalCategory E
inst✝ : BraidedCategory E
F : LaxBraidedFunctor C D
G : LaxBraidedFunctor D E
X Y : C
⊢ (G.μ (F.obj X) (F.obj Y) ≫ G.map (F.μ X Y)) ≫ G.map (F.map (β_ X Y).hom) =
    (β_ (G.obj (F.obj X)) (G.obj (F.obj Y))).hom ≫ G.μ (F.obj Y) (F.obj X) ≫ G.map (F.μ Y X)
tactic: dsimp
state_before: C : Type u₁
inst✝⁸ : Category.{v₁, u₁} C
inst✝⁷ : MonoidalCategory C
inst✝⁶ : BraidedCategory C
D : Type u₂
inst✝⁵ : Category.{v₂, u₂} D
inst✝⁴ : MonoidalCategory D
inst✝³ : BraidedCategory D
E : Type u₃
inst✝² : Category.{v₃, u₃} E
inst✝¹ : MonoidalCategory E
inst✝ : BraidedCategory E
F : LaxBraidedFunctor C D
G : LaxBraidedFunctor D E
X Y : C
⊢ (G.μ (F.obj X) (F.obj Y) ≫ G.map (F.μ X Y)) ≫ G.map (F.map (β_ X Y).hom) =
    (β_ (G.obj (F.obj X)) (G.obj (F.obj Y))).hom ≫ G.μ (F.obj Y) (F.obj X) ≫ G.map (F.μ Y X)
state_after: C : Type u₁
inst✝⁸ : Category.{v₁, u₁} C
inst✝⁷ : MonoidalCategory C
inst✝⁶ : BraidedCategory C
D : Type u₂
inst✝⁵ : Category.{v₂, u₂} D
inst✝⁴ : MonoidalCategory D
inst✝³ : BraidedCategory D
E : Type u₃
inst✝² : Category.{v₃, u₃} E
inst✝¹ : MonoidalCategory E
inst✝ : BraidedCategory E
F : LaxBraidedFunctor C D
G : LaxBraidedFunctor D E
X Y : C
⊢ G.μ (F.obj X) (F.obj Y) ≫ G.map (β_ (F.obj X) (F.obj Y)).hom ≫ G.map (F.μ Y X) =
    (β_ (G.obj (F.obj X)) (G.obj (F.obj Y))).hom ≫ G.μ (F.obj Y) (F.obj X) ≫ G.map (F.μ Y X)
tactic: slice_lhs 2 3 =>
        rw [← CategoryTheory.Functor.map_comp, F.braided, CategoryTheory.Functor.map_comp]
state_before: C : Type u₁
inst✝⁸ : Category.{v₁, u₁} C
inst✝⁷ : MonoidalCategory C
inst✝⁶ : BraidedCategory C
D : Type u₂
inst✝⁵ : Category.{v₂, u₂} D
inst✝⁴ : MonoidalCategory D
inst✝³ : BraidedCategory D
E : Type u₃
inst✝² : Category.{v₃, u₃} E
inst✝¹ : MonoidalCategory E
inst✝ : BraidedCategory E
F : LaxBraidedFunctor C D
G : LaxBraidedFunctor D E
X Y : C
⊢ G.μ (F.obj X) (F.obj Y) ≫ G.map (β_ (F.obj X) (F.obj Y)).hom ≫ G.map (F.μ Y X) =
    (β_ (G.obj (F.obj X)) (G.obj (F.obj Y))).hom ≫ G.μ (F.obj Y) (F.obj X) ≫ G.map (F.μ Y X)
state_after: C : Type u₁
inst✝⁸ : Category.{v₁, u₁} C
inst✝⁷ : MonoidalCategory C
inst✝⁶ : BraidedCategory C
D : Type u₂
inst✝⁵ : Category.{v₂, u₂} D
inst✝⁴ : MonoidalCategory D
inst✝³ : BraidedCategory D
E : Type u₃
inst✝² : Category.{v₃, u₃} E
inst✝¹ : MonoidalCategory E
inst✝ : BraidedCategory E
F : LaxBraidedFunctor C D
G : LaxBraidedFunctor D E
X Y : C
⊢ ((β_ (G.obj (F.obj X)) (G.obj (F.obj Y))).hom ≫ G.μ (F.obj Y) (F.obj X)) ≫ G.map (F.μ Y X) =
    (β_ (G.obj (F.obj X)) (G.obj (F.obj Y))).hom ≫ G.μ (F.obj Y) (F.obj X) ≫ G.map (F.μ Y X)
tactic: slice_lhs 1 2 => rw [G.braided]
state_before: C : Type u₁
inst✝⁸ : Category.{v₁, u₁} C
inst✝⁷ : MonoidalCategory C
inst✝⁶ : BraidedCategory C
D : Type u₂
inst✝⁵ : Category.{v₂, u₂} D
inst✝⁴ : MonoidalCategory D
inst✝³ : BraidedCategory D
E : Type u₃
inst✝² : Category.{v₃, u₃} E
inst✝¹ : MonoidalCategory E
inst✝ : BraidedCategory E
F : LaxBraidedFunctor C D
G : LaxBraidedFunctor D E
X Y : C
⊢ ((β_ (G.obj (F.obj X)) (G.obj (F.obj Y))).hom ≫ G.μ (F.obj Y) (F.obj X)) ≫ G.map (F.μ Y X) =
    (β_ (G.obj (F.obj X)) (G.obj (F.obj Y))).hom ≫ G.μ (F.obj Y) (F.obj X) ≫ G.map (F.μ Y X)
state_after: no goals
tactic: simp only [Category.assoc]