Theorem: CategoryTheory.SymmetricCategory.reverseBraiding_eq
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
C : Type u₁
inst✝¹ : Category.{v₁, u₁} C
inst✝ : MonoidalCategory C
i : SymmetricCategory C
⊢ reverseBraiding C = toBraidedCategory
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
C : Type u₁
inst✝¹ : Category.{v₁, u₁} C
inst✝ : MonoidalCategory C
i : SymmetricCategory C
⊢ { braiding := fun X Y => (β_ Y X).symm, braiding_naturality_right := ⋯, braiding_naturality_left := ⋯,
      hexagon_forward := ⋯, hexagon_reverse := ⋯ } =
    toBraidedCategory
tactic: dsimp only [reverseBraiding]
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
C : Type u₁
inst✝¹ : Category.{v₁, u₁} C
inst✝ : MonoidalCategory C
i : SymmetricCategory C
⊢ { braiding := fun X Y => (β_ Y X).symm, braiding_naturality_right := ⋯, braiding_naturality_left := ⋯,
      hexagon_forward := ⋯, hexagon_reverse := ⋯ } =
    toBraidedCategory
state_after: case e_braiding
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
C : Type u₁
inst✝¹ : Category.{v₁, u₁} C
inst✝ : MonoidalCategory C
i : SymmetricCategory C
⊢ (fun X Y => (β_ Y X).symm) = β_
tactic: congr
state_before: case e_braiding
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
C : Type u₁
inst✝¹ : Category.{v₁, u₁} C
inst✝ : MonoidalCategory C
i : SymmetricCategory C
⊢ (fun X Y => (β_ Y X).symm) = β_
state_after: case e_braiding.h.h
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
C : Type u₁
inst✝¹ : Category.{v₁, u₁} C
inst✝ : MonoidalCategory C
i : SymmetricCategory C
X Y : C
⊢ (β_ Y X).symm = β_ X Y
tactic: funext X Y
state_before: case e_braiding.h.h
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
C : Type u₁
inst✝¹ : Category.{v₁, u₁} C
inst✝ : MonoidalCategory C
i : SymmetricCategory C
X Y : C
⊢ (β_ Y X).symm = β_ X Y
state_after: no goals
tactic: exact Iso.ext (braiding_swap_eq_inv_braiding Y X).symm