Documentation

Mathlib.CategoryTheory.Bicategory.Free

Free bicategories #

We define the free bicategory over a quiver. In this bicategory, the 1-morphisms are freely generated by the arrows in the quiver, and the 2-morphisms are freely generated by the formal identities, the formal unitors, and the formal associators modulo the relation derived from the axioms of a bicategory.

Main definitions #

Free bicategory over a quiver. Its objects are the same as those in the underlying quiver.

Equations
    Instances For
      inductive CategoryTheory.FreeBicategory.Hom {B : Type u} [Quiver B] :
      BBType (max u v)

      1-morphisms in the free bicategory.

      Instances For
        inductive CategoryTheory.FreeBicategory.Hom₂ {B : Type u} [Quiver B] {a b : FreeBicategory B} :
        (a b) → (a b) → Type (max u v)

        Representatives of 2-morphisms in the free bicategory.

        Instances For
          inductive CategoryTheory.FreeBicategory.Rel {B : Type u} [Quiver B] {a b : FreeBicategory B} {f g : a b} :
          Hom₂ f gHom₂ f gProp

          Relations between 2-morphisms in the free bicategory.

          Instances For

            Bicategory structure on the free bicategory.

            Equations
              @[reducible, inline]
              abbrev CategoryTheory.FreeBicategory.Hom₂.mk {B : Type u} [Quiver B] {a b : FreeBicategory B} {f g : a b} (η : Hom₂ f g) :
              f g

              Hom₂.mk η is an abbreviation for Quot.mk Rel η.

              Equations
                Instances For
                  @[simp]
                  theorem CategoryTheory.FreeBicategory.mk_vcomp {B : Type u} [Quiver B] {a b : FreeBicategory B} {f g h : a b} (η : Hom₂ f g) (θ : Hom₂ g h) :
                  @[simp]
                  theorem CategoryTheory.FreeBicategory.mk_whisker_left {B : Type u} [Quiver B] {a b c : FreeBicategory B} (f : a b) {g h : b c} (η : Hom₂ g h) :
                  @[simp]
                  theorem CategoryTheory.FreeBicategory.mk_associator_hom {B : Type u} [Quiver B] {a b c d : FreeBicategory B} (f : a b) (g : b c) (h : c d) :

                  Canonical prefunctor from B to free_bicategory B.

                  Equations
                    Instances For
                      @[simp]
                      theorem CategoryTheory.FreeBicategory.of_map {B : Type u} [Quiver B] (x✝ x✝¹ : B) (f : x✝ x✝¹) :
                      @[simp]
                      theorem CategoryTheory.FreeBicategory.of_obj {B : Type u} [Quiver B] (a : B) :
                      of.obj a = id a
                      def CategoryTheory.FreeBicategory.liftHom {B : Type u₁} [Quiver B] {C : Type u₂} [CategoryStruct.{v₂, u₂} C] (F : B ⥤q C) {a b : FreeBicategory B} :
                      (a b) → (F.obj a F.obj b)

                      Auxiliary definition for lift.

                      Equations
                        Instances For
                          @[simp]
                          theorem CategoryTheory.FreeBicategory.liftHom_comp {B : Type u₁} [Quiver B] {C : Type u₂} [CategoryStruct.{v₂, u₂} C] (F : B ⥤q C) {a b c : FreeBicategory B} (f : a b) (g : b c) :
                          def CategoryTheory.FreeBicategory.liftHom₂ {B : Type u₁} [Quiver B] {C : Type u₂} [Bicategory C] (F : B ⥤q C) {a b : FreeBicategory B} {f g : a b} :
                          Hom₂ f g → (liftHom F f liftHom F g)

                          Auxiliary definition for lift.

                          Equations
                            Instances For
                              theorem CategoryTheory.FreeBicategory.liftHom₂_congr {B : Type u₁} [Quiver B] {C : Type u₂} [Bicategory C] (F : B ⥤q C) {a b : FreeBicategory B} {f g : a b} {η θ : Hom₂ f g} (H : Rel η θ) :

                              A prefunctor from a quiver B to a bicategory C can be lifted to a pseudofunctor from free_bicategory B to C.

                              Equations
                                Instances For
                                  @[simp]
                                  theorem CategoryTheory.FreeBicategory.lift_mapId {B : Type u₁} [Quiver B] {C : Type u₂} [Bicategory C] (F : B ⥤q C) (x✝ : FreeBicategory B) :
                                  @[simp]
                                  theorem CategoryTheory.FreeBicategory.lift_mapComp {B : Type u₁} [Quiver B] {C : Type u₂} [Bicategory C] (F : B ⥤q C) {a✝ b✝ c✝ : FreeBicategory B} (x✝ : a✝ b✝) (x✝¹ : b✝ c✝) :
                                  (lift F).mapComp x✝ x✝¹ = Iso.refl (liftHom F (CategoryStruct.comp x✝ x✝¹))
                                  @[simp]
                                  theorem CategoryTheory.FreeBicategory.lift_toPrelaxFunctor_toPrelaxFunctorStruct_map₂ {B : Type u₁} [Quiver B] {C : Type u₂} [Bicategory C] (F : B ⥤q C) {a✝ b✝ : FreeBicategory B} {f✝ g✝ : a✝ b✝} (a : Quot Rel) :
                                  (lift F).map₂ a = Quot.lift (liftHom₂ F) a
                                  @[simp]
                                  theorem CategoryTheory.FreeBicategory.lift_toPrelaxFunctor_toPrelaxFunctorStruct_toPrefunctor_map {B : Type u₁} [Quiver B] {C : Type u₂} [Bicategory C] (F : B ⥤q C) {X✝ Y✝ : FreeBicategory B} (a✝ : X✝ Y✝) :
                                  (lift F).map a✝ = liftHom F a✝