File: Mathlib/CategoryTheory/Bicategory/SingleObj.lean

full_name: CategoryTheory.MonoidalSingleObj
code: /-- Promote a monoidal category to a bicategory with a single object.
(The objects of the monoidal category become the 1-morphisms,
with composition given by tensor product,
and the morphisms of the monoidal category become the 2-morphisms.)
-/
@[nolint unusedArguments]
def MonoidalSingleObj (C : Type*) [Category C] [MonoidalCategory C] 
goal: Sort u_4

full_name: CategoryTheory.instInhabitedMonoidalSingleObj
code: instance : Inhabited (MonoidalSingleObj C) 
goal: Inhabited (CategoryTheory.MonoidalSingleObj C)

full_name: CategoryTheory.instBicategoryMonoidalSingleObj
code: instance : Bicategory (MonoidalSingleObj C) 
goal: CategoryTheory.Bicategory (CategoryTheory.MonoidalSingleObj C)

full_name: CategoryTheory.MonoidalSingleObj.star
code: /-- The unique object in the bicategory obtained by "promoting" a monoidal category. -/
@[nolint unusedArguments]
protected def star : MonoidalSingleObj C 
goal: CategoryTheory.MonoidalSingleObj C

full_name: CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctor
code: /-- The monoidal functor from the endomorphisms of the single object
when we promote a monoidal category to a single object bicategory,
to the original monoidal category.

We subsequently show this is an equivalence.
-/
@[simps]
def endMonoidalStarFunctor : MonoidalFunctor (EndMonoidal (MonoidalSingleObj.star C)) C 
goal: CategoryTheory.MonoidalFunctor (CategoryTheory.EndMonoidal (CategoryTheory.MonoidalSingleObj.star C)) C

full_name: CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctor_toLaxMonoidalFunctor_μ
code: /-- The monoidal functor from the endomorphisms of the single object
when we promote a monoidal category to a single object bicategory,
to the original monoidal category.

We subsequently show this is an equivalence.
-/
@[simps]
def endMonoidalStarFunctor : MonoidalFunctor (EndMonoidal (MonoidalSingleObj.star C)) C 
goal: (CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctor C).μ X Y =
  CategoryTheory.CategoryStruct.id
    (CategoryTheory.MonoidalCategory.tensorObj
      ({ obj := fun X => X, map := fun {X Y} f => f, map_id := ⋯, map_comp := ⋯ }.obj X)
      ({ obj := fun X => X, map := fun {X Y} f => f, map_id := ⋯, map_comp := ⋯ }.obj Y))

full_name: CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctor_toLaxMonoidalFunctor_ε
code: /-- The monoidal functor from the endomorphisms of the single object
when we promote a monoidal category to a single object bicategory,
to the original monoidal category.

We subsequently show this is an equivalence.
-/
@[simps]
def endMonoidalStarFunctor : MonoidalFunctor (EndMonoidal (MonoidalSingleObj.star C)) C 
goal: (CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctor C).ε = CategoryTheory.CategoryStruct.id (𝟙_ C)

full_name: CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctor_toLaxMonoidalFunctor_toFunctor_obj
code: /-- The monoidal functor from the endomorphisms of the single object
when we promote a monoidal category to a single object bicategory,
to the original monoidal category.

We subsequently show this is an equivalence.
-/
@[simps]
def endMonoidalStarFunctor : MonoidalFunctor (EndMonoidal (MonoidalSingleObj.star C)) C 
goal: (CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctor C).obj X = X

full_name: CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctor_toLaxMonoidalFunctor_toFunctor_map
code: /-- The monoidal functor from the endomorphisms of the single object
when we promote a monoidal category to a single object bicategory,
to the original monoidal category.

We subsequently show this is an equivalence.
-/
@[simps]
def endMonoidalStarFunctor : MonoidalFunctor (EndMonoidal (MonoidalSingleObj.star C)) C 
goal: ∀ {X Y : CategoryTheory.EndMonoidal (CategoryTheory.MonoidalSingleObj.star C)} (f : X ⟶ Y),
  (CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctor C).map f = f

full_name: CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctorEquivalence_counitIso
code: /-- The equivalence between the endomorphisms of the single object
when we promote a monoidal category to a single object bicategory,
and the original monoidal category.
-/
@[simps functor inverse_obj inverse_map unitIso counitIso]
noncomputable def endMonoidalStarFunctorEquivalence :
    EndMonoidal (MonoidalSingleObj.star C) ≌ C 
goal: (CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctorEquivalence C).counitIso =
  CategoryTheory.Iso.refl
    ({ obj := fun X => X, map := fun {X Y} f => f, map_id := ⋯, map_comp := ⋯ }.comp
      (CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctor C).toFunctor)

full_name: CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctorEquivalence_inverse_obj
code: /-- The equivalence between the endomorphisms of the single object
when we promote a monoidal category to a single object bicategory,
and the original monoidal category.
-/
@[simps functor inverse_obj inverse_map unitIso counitIso]
noncomputable def endMonoidalStarFunctorEquivalence :
    EndMonoidal (MonoidalSingleObj.star C) ≌ C 
goal: (CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctorEquivalence C).inverse.obj X = X

full_name: CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctorEquivalence_unitIso
code: /-- The equivalence between the endomorphisms of the single object
when we promote a monoidal category to a single object bicategory,
and the original monoidal category.
-/
@[simps functor inverse_obj inverse_map unitIso counitIso]
noncomputable def endMonoidalStarFunctorEquivalence :
    EndMonoidal (MonoidalSingleObj.star C) ≌ C 
goal: (CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctorEquivalence C).unitIso =
  CategoryTheory.Iso.refl
    (CategoryTheory.Functor.id (CategoryTheory.EndMonoidal (CategoryTheory.MonoidalSingleObj.star C)))

full_name: CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctorEquivalence_functor
code: /-- The equivalence between the endomorphisms of the single object
when we promote a monoidal category to a single object bicategory,
and the original monoidal category.
-/
@[simps functor inverse_obj inverse_map unitIso counitIso]
noncomputable def endMonoidalStarFunctorEquivalence :
    EndMonoidal (MonoidalSingleObj.star C) ≌ C 
goal: (CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctorEquivalence C).functor =
  (CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctor C).toFunctor

full_name: CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctorEquivalence_inverse_map
code: /-- The equivalence between the endomorphisms of the single object
when we promote a monoidal category to a single object bicategory,
and the original monoidal category.
-/
@[simps functor inverse_obj inverse_map unitIso counitIso]
noncomputable def endMonoidalStarFunctorEquivalence :
    EndMonoidal (MonoidalSingleObj.star C) ≌ C 
goal: ∀ {X Y : C} (f : X ⟶ Y), (CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctorEquivalence C).inverse.map f = f

full_name: CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctorEquivalence
code: /-- The equivalence between the endomorphisms of the single object
when we promote a monoidal category to a single object bicategory,
and the original monoidal category.
-/
@[simps functor inverse_obj inverse_map unitIso counitIso]
noncomputable def endMonoidalStarFunctorEquivalence :
    EndMonoidal (MonoidalSingleObj.star C) ≌ C 
goal: CategoryTheory.EndMonoidal (CategoryTheory.MonoidalSingleObj.star C) ≌ C

full_name: CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctor_isEquivalence
code: instance endMonoidalStarFunctor_isEquivalence : (endMonoidalStarFunctor C).IsEquivalence 
goal: (CategoryTheory.MonoidalSingleObj.endMonoidalStarFunctor C).IsEquivalence