File: Mathlib/Tactic/CategoryTheory/BicategoricalComp.lean

full_name: CategoryTheory.BicategoricalCoherence.hom
code: /-- A typeclass carrying a choice of bicategorical structural isomorphism between two objects.
Used by the `⊗≫` bicategorical composition operator, and the `coherence` tactic.
-/
class BicategoricalCoherence (f g : a ⟶ b) where
  /-- The chosen structural isomorphism between to 1-morphisms. -/
  hom : f ⟶ g
  [isIso : IsIso hom]
goal: f ⟶ g

full_name: CategoryTheory.BicategoricalCoherence.isIso
code: /-- A typeclass carrying a choice of bicategorical structural isomorphism between two objects.
Used by the `⊗≫` bicategorical composition operator, and the `coherence` tactic.
-/
class BicategoricalCoherence (f g : a ⟶ b) where
  /-- The chosen structural isomorphism between to 1-morphisms. -/
  hom : f ⟶ g
  [isIso : IsIso hom]
goal: CategoryTheory.IsIso ⊗𝟙

full_name: CategoryTheory.BicategoricalCoherence
code: /-- A typeclass carrying a choice of bicategorical structural isomorphism between two objects.
Used by the `⊗≫` bicategorical composition operator, and the `coherence` tactic.
-/
class BicategoricalCoherence (f g : a ⟶ b) where
  /-- The chosen structural isomorphism between to 1-morphisms. -/
  hom : f ⟶ g
  [isIso : IsIso hom]
goal: Type w

full_name: CategoryTheory.Bicategory.«_aux_Mathlib_Tactic_CategoryTheory_BicategoricalComp___macroRules_CategoryTheory_Bicategory_term⊗𝟙_1»
code: /-- Notation for identities up to unitors and associators. -/
scoped[CategoryTheory.Bicategory] notation " ⊗𝟙 " =>
  BicategoricalCoherence.hom
goal: Lean.Macro

full_name: CategoryTheory.Bicategory._aux_Mathlib_Tactic_CategoryTheory_BicategoricalComp___unexpand_CategoryTheory_BicategoricalCoherence_hom_1
code: /-- Notation for identities up to unitors and associators. -/
scoped[CategoryTheory.Bicategory] notation " ⊗𝟙 " =>
  BicategoricalCoherence.hom
goal: Lean.PrettyPrinter.Unexpander

full_name: CategoryTheory.bicategoricalIso
code: /-- Construct an isomorphism between two objects in a bicategorical category
out of unitors and associators. -/
def bicategoricalIso (f g : a ⟶ b) [BicategoricalCoherence f g] : f ≅ g 
goal: f ≅ g

full_name: CategoryTheory.bicategoricalComp
code: /-- Compose two morphisms in a bicategorical category,
inserting unitors and associators between as necessary. -/
def bicategoricalComp {f g h i : a ⟶ b} [BicategoricalCoherence g h]
    (η : f ⟶ g) (θ : h ⟶ i) : f ⟶ i 
goal: f ⟶ i

full_name: CategoryTheory.Bicategory._aux_Mathlib_Tactic_CategoryTheory_BicategoricalComp___unexpand_CategoryTheory_bicategoricalComp_1
code: @[inherit_doc bicategoricalComp]
scoped[CategoryTheory.Bicategory] infixr:80 " ⊗≫ " => bicategoricalComp
goal: Lean.PrettyPrinter.Unexpander

full_name: CategoryTheory.Bicategory.«_aux_Mathlib_Tactic_CategoryTheory_BicategoricalComp___macroRules_CategoryTheory_Bicategory_term_⊗≫__1»
code: @[inherit_doc bicategoricalComp]
scoped[CategoryTheory.Bicategory] infixr:80 " ⊗≫ " => bicategoricalComp
goal: Lean.Macro

full_name: CategoryTheory.bicategoricalIsoComp
code: /-- Compose two isomorphisms in a bicategorical category,
inserting unitors and associators between as necessary. -/
def bicategoricalIsoComp {f g h i : a ⟶ b} [BicategoricalCoherence g h]
    (η : f ≅ g) (θ : h ≅ i) : f ≅ i 
goal: f ≅ i

full_name: CategoryTheory.Bicategory._aux_Mathlib_Tactic_CategoryTheory_BicategoricalComp___unexpand_CategoryTheory_bicategoricalIsoComp_1
code: @[inherit_doc bicategoricalIsoComp]
scoped[CategoryTheory.Bicategory] infixr:80 " ≪⊗≫ " =>
  bicategoricalIsoComp
goal: Lean.PrettyPrinter.Unexpander

full_name: CategoryTheory.Bicategory.«_aux_Mathlib_Tactic_CategoryTheory_BicategoricalComp___macroRules_CategoryTheory_Bicategory_term_≪⊗≫__1»
code: @[inherit_doc bicategoricalIsoComp]
scoped[CategoryTheory.Bicategory] infixr:80 " ≪⊗≫ " =>
  bicategoricalIsoComp
goal: Lean.Macro

full_name: CategoryTheory.BicategoricalCoherence.refl
code: @[simps]
instance refl (f : a ⟶ b) : BicategoricalCoherence f f 
goal: CategoryTheory.BicategoricalCoherence f f

full_name: CategoryTheory.BicategoricalCoherence.refl_hom
code: @[simps]
instance refl (f : a ⟶ b) : BicategoricalCoherence f f 
goal:  ⊗𝟙 = 𝟙 f

full_name: CategoryTheory.BicategoricalCoherence.whiskerLeft_hom
code: @[simps]
instance whiskerLeft (f : a ⟶ b) (g h : b ⟶ c)
    [BicategoricalCoherence g h] : BicategoricalCoherence (f ≫ g) (f ≫ h) 
goal:  ⊗𝟙 = f ◁ ⊗𝟙

full_name: CategoryTheory.BicategoricalCoherence.whiskerLeft
code: @[simps]
instance whiskerLeft (f : a ⟶ b) (g h : b ⟶ c)
    [BicategoricalCoherence g h] : BicategoricalCoherence (f ≫ g) (f ≫ h) 
goal: CategoryTheory.BicategoricalCoherence (f ≫ g) (f ≫ h)

full_name: CategoryTheory.BicategoricalCoherence.whiskerRight_hom
code: @[simps]
instance whiskerRight (f g : a ⟶ b) (h : b ⟶ c)
    [BicategoricalCoherence f g] : BicategoricalCoherence (f ≫ h) (g ≫ h) 
goal:  ⊗𝟙 = ⊗𝟙 ▷ h

full_name: CategoryTheory.BicategoricalCoherence.whiskerRight
code: @[simps]
instance whiskerRight (f g : a ⟶ b) (h : b ⟶ c)
    [BicategoricalCoherence f g] : BicategoricalCoherence (f ≫ h) (g ≫ h) 
goal: CategoryTheory.BicategoricalCoherence (f ≫ h) (g ≫ h)

full_name: CategoryTheory.BicategoricalCoherence.tensorRight_hom
code: @[simps]
instance tensorRight (f : a ⟶ b) (g : b ⟶ b)
    [BicategoricalCoherence (𝟙 b) g] : BicategoricalCoherence f (f ≫ g) 
goal:  ⊗𝟙 = (ρ_ f).inv ≫ f ◁ ⊗𝟙

full_name: CategoryTheory.BicategoricalCoherence.tensorRight
code: @[simps]
instance tensorRight (f : a ⟶ b) (g : b ⟶ b)
    [BicategoricalCoherence (𝟙 b) g] : BicategoricalCoherence f (f ≫ g) 
goal: CategoryTheory.BicategoricalCoherence f (f ≫ g)

full_name: CategoryTheory.BicategoricalCoherence.tensorRight'_hom
code: @[simps]
instance tensorRight' (f : a ⟶ b) (g : b ⟶ b)
    [BicategoricalCoherence g (𝟙 b)] : BicategoricalCoherence (f ≫ g) f 
goal:  ⊗𝟙 = f ◁ ⊗𝟙 ≫ (ρ_ f).hom

full_name: CategoryTheory.BicategoricalCoherence.tensorRight'
code: @[simps]
instance tensorRight' (f : a ⟶ b) (g : b ⟶ b)
    [BicategoricalCoherence g (𝟙 b)] : BicategoricalCoherence (f ≫ g) f 
goal: CategoryTheory.BicategoricalCoherence (f ≫ g) f

full_name: CategoryTheory.BicategoricalCoherence.left_hom
code: @[simps]
instance left (f g : a ⟶ b) [BicategoricalCoherence f g] :
    BicategoricalCoherence (𝟙 a ≫ f) g 
goal:  ⊗𝟙 = (λ_ f).hom ≫ ⊗𝟙

full_name: CategoryTheory.BicategoricalCoherence.left
code: @[simps]
instance left (f g : a ⟶ b) [BicategoricalCoherence f g] :
    BicategoricalCoherence (𝟙 a ≫ f) g 
goal: CategoryTheory.BicategoricalCoherence (𝟙 a ≫ f) g

full_name: CategoryTheory.BicategoricalCoherence.left'_hom
code: @[simps]
instance left' (f g : a ⟶ b) [BicategoricalCoherence f g] :
    BicategoricalCoherence f (𝟙 a ≫ g) 
goal:  ⊗𝟙 = ⊗𝟙 ≫ (λ_ g).inv

full_name: CategoryTheory.BicategoricalCoherence.left'
code: @[simps]
instance left' (f g : a ⟶ b) [BicategoricalCoherence f g] :
    BicategoricalCoherence f (𝟙 a ≫ g) 
goal: CategoryTheory.BicategoricalCoherence f (𝟙 a ≫ g)

full_name: CategoryTheory.BicategoricalCoherence.right
code: @[simps]
instance right (f g : a ⟶ b) [BicategoricalCoherence f g] :
    BicategoricalCoherence (f ≫ 𝟙 b) g 
goal: CategoryTheory.BicategoricalCoherence (f ≫ 𝟙 b) g

full_name: CategoryTheory.BicategoricalCoherence.right_hom
code: @[simps]
instance right (f g : a ⟶ b) [BicategoricalCoherence f g] :
    BicategoricalCoherence (f ≫ 𝟙 b) g 
goal:  ⊗𝟙 = (ρ_ f).hom ≫ ⊗𝟙

full_name: CategoryTheory.BicategoricalCoherence.right'_hom
code: @[simps]
instance right' (f g : a ⟶ b) [BicategoricalCoherence f g] :
    BicategoricalCoherence f (g ≫ 𝟙 b) 
goal:  ⊗𝟙 = ⊗𝟙 ≫ (ρ_ g).inv

full_name: CategoryTheory.BicategoricalCoherence.right'
code: @[simps]
instance right' (f g : a ⟶ b) [BicategoricalCoherence f g] :
    BicategoricalCoherence f (g ≫ 𝟙 b) 
goal: CategoryTheory.BicategoricalCoherence f (g ≫ 𝟙 b)

full_name: CategoryTheory.BicategoricalCoherence.assoc_hom
code: @[simps]
instance assoc (f : a ⟶ b) (g : b ⟶ c) (h : c ⟶ d) (i : a ⟶ d)
    [BicategoricalCoherence (f ≫ g ≫ h) i] :
    BicategoricalCoherence ((f ≫ g) ≫ h) i 
goal:  ⊗𝟙 = (α_ f g h).hom ≫ ⊗𝟙

full_name: CategoryTheory.BicategoricalCoherence.assoc
code: @[simps]
instance assoc (f : a ⟶ b) (g : b ⟶ c) (h : c ⟶ d) (i : a ⟶ d)
    [BicategoricalCoherence (f ≫ g ≫ h) i] :
    BicategoricalCoherence ((f ≫ g) ≫ h) i 
goal: CategoryTheory.BicategoricalCoherence ((f ≫ g) ≫ h) i

full_name: CategoryTheory.BicategoricalCoherence.assoc'_hom
code: @[simps]
instance assoc' (f : a ⟶ b) (g : b ⟶ c) (h : c ⟶ d) (i : a ⟶ d)
    [BicategoricalCoherence i (f ≫ g ≫ h)] :
    BicategoricalCoherence i ((f ≫ g) ≫ h) 
goal:  ⊗𝟙 = ⊗𝟙 ≫ (α_ f g h).inv

full_name: CategoryTheory.BicategoricalCoherence.assoc'
code: @[simps]
instance assoc' (f : a ⟶ b) (g : b ⟶ c) (h : c ⟶ d) (i : a ⟶ d)
    [BicategoricalCoherence i (f ≫ g ≫ h)] :
    BicategoricalCoherence i ((f ≫ g) ≫ h) 
goal: CategoryTheory.BicategoricalCoherence i ((f ≫ g) ≫ h)

full_name: CategoryTheory.bicategoricalComp_refl
code: @[simp]
theorem bicategoricalComp_refl {f g h : a ⟶ b} (η : f ⟶ g) (θ : g ⟶ h) : η ⊗≫ θ = η ≫ θ 
goal: η ⊗≫ θ = η ≫ θ