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 #
FreeBicategory B
: the free bicategory over a quiverB
.FreeBicategory.lift F
: the pseudofunctor fromFreeBicategory B
toC
associated with a prefunctorF
fromB
toC
.
Free bicategory over a quiver. Its objects are the same as those in the underlying quiver.
Equations
Instances For
Equations
1-morphisms in the free bicategory.
- of: {B : Type u} → [inst : Quiver B] → {a b : B} → (a ⟶ b) → CategoryTheory.FreeBicategory.Hom a b
- id: {B : Type u} → [inst : Quiver B] → (a : B) → CategoryTheory.FreeBicategory.Hom a a
- comp: {B : Type u} → [inst : Quiver B] → {a b c : B} → CategoryTheory.FreeBicategory.Hom a b → CategoryTheory.FreeBicategory.Hom b c → CategoryTheory.FreeBicategory.Hom a c
Instances For
Equations
- CategoryTheory.FreeBicategory.instInhabitedHomOfHom a b = { default := CategoryTheory.FreeBicategory.Hom.of default }
Equations
- CategoryTheory.FreeBicategory.quiver = { Hom := fun (a b : B) => CategoryTheory.FreeBicategory.Hom a b }
Equations
- One or more equations did not get rendered due to their size.
Representatives of 2-morphisms in the free bicategory.
- id: {B : Type u} → [inst : Quiver B] → {a b : CategoryTheory.FreeBicategory B} → (f : a ⟶ b) → CategoryTheory.FreeBicategory.Hom₂ f f
- vcomp: {B : Type u} → [inst : Quiver B] → {a b : CategoryTheory.FreeBicategory B} → {f g h : a ⟶ b} → CategoryTheory.FreeBicategory.Hom₂ f g → CategoryTheory.FreeBicategory.Hom₂ g h → CategoryTheory.FreeBicategory.Hom₂ f h
- whisker_left: {B : Type u} → [inst : Quiver B] → {a b c : CategoryTheory.FreeBicategory B} → (f : a ⟶ b) → {g h : b ⟶ c} → CategoryTheory.FreeBicategory.Hom₂ g h → CategoryTheory.FreeBicategory.Hom₂ (CategoryTheory.CategoryStruct.comp f g) (CategoryTheory.CategoryStruct.comp f h)
- whisker_right: {B : Type u} → [inst : Quiver B] → {a b c : CategoryTheory.FreeBicategory B} → {f g : a ⟶ b} → (h : b ⟶ c) → CategoryTheory.FreeBicategory.Hom₂ f g → CategoryTheory.FreeBicategory.Hom₂ (CategoryTheory.FreeBicategory.Hom.comp f h) (CategoryTheory.FreeBicategory.Hom.comp g h)
- associator: {B : Type u} → [inst : Quiver B] → {a b c d : CategoryTheory.FreeBicategory B} → (f : a ⟶ b) → (g : b ⟶ c) → (h : c ⟶ d) → CategoryTheory.FreeBicategory.Hom₂ (CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp f g) h) (CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp g h))
- associator_inv: {B : Type u} → [inst : Quiver B] → {a b c d : CategoryTheory.FreeBicategory B} → (f : a ⟶ b) → (g : b ⟶ c) → (h : c ⟶ d) → CategoryTheory.FreeBicategory.Hom₂ (CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.comp g h)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp f g) h)
- right_unitor: {B : Type u} → [inst : Quiver B] → {a b : CategoryTheory.FreeBicategory B} → (f : a ⟶ b) → CategoryTheory.FreeBicategory.Hom₂ (CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.id b)) f
- right_unitor_inv: {B : Type u} → [inst : Quiver B] → {a b : CategoryTheory.FreeBicategory B} → (f : a ⟶ b) → CategoryTheory.FreeBicategory.Hom₂ f (CategoryTheory.CategoryStruct.comp f (CategoryTheory.CategoryStruct.id b))
- left_unitor: {B : Type u} → [inst : Quiver B] → {a b : CategoryTheory.FreeBicategory B} → (f : a ⟶ b) → CategoryTheory.FreeBicategory.Hom₂ (CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.id a) f) f
- left_unitor_inv: {B : Type u} → [inst : Quiver B] → {a b : CategoryTheory.FreeBicategory B} → (f : a ⟶ b) → CategoryTheory.FreeBicategory.Hom₂ f (CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.id a) f)
Instances For
Relations between 2-morphisms in the free bicategory.
- vcomp_right: ∀ {B : Type u} [inst : Quiver B] {a b : B} {f g h : CategoryTheory.FreeBicategory.Hom a b} (η : CategoryTheory.FreeBicategory.Hom₂ f g) (θ₁ θ₂ : CategoryTheory.FreeBicategory.Hom₂ g h), CategoryTheory.FreeBicategory.Rel θ₁ θ₂ → CategoryTheory.FreeBicategory.Rel (η.vcomp θ₁) (η.vcomp θ₂)
- vcomp_left: ∀ {B : Type u} [inst : Quiver B] {a b : B} {f g h : CategoryTheory.FreeBicategory.Hom a b} (η₁ η₂ : CategoryTheory.FreeBicategory.Hom₂ f g) (θ : CategoryTheory.FreeBicategory.Hom₂ g h), CategoryTheory.FreeBicategory.Rel η₁ η₂ → CategoryTheory.FreeBicategory.Rel (η₁.vcomp θ) (η₂.vcomp θ)
- id_comp: ∀ {B : Type u} [inst : Quiver B] {a b : B} {f g : CategoryTheory.FreeBicategory.Hom a b} (η : CategoryTheory.FreeBicategory.Hom₂ f g), CategoryTheory.FreeBicategory.Rel ((CategoryTheory.FreeBicategory.Hom₂.id f).vcomp η) η
- comp_id: ∀ {B : Type u} [inst : Quiver B] {a b : B} {f g : CategoryTheory.FreeBicategory.Hom a b} (η : CategoryTheory.FreeBicategory.Hom₂ f g), CategoryTheory.FreeBicategory.Rel (η.vcomp (CategoryTheory.FreeBicategory.Hom₂.id g)) η
- assoc: ∀ {B : Type u} [inst : Quiver B] {a b : B} {f g h i : CategoryTheory.FreeBicategory.Hom a b} (η : CategoryTheory.FreeBicategory.Hom₂ f g) (θ : CategoryTheory.FreeBicategory.Hom₂ g h) (ι : CategoryTheory.FreeBicategory.Hom₂ h i), CategoryTheory.FreeBicategory.Rel ((η.vcomp θ).vcomp ι) (η.vcomp (θ.vcomp ι))
- whisker_left: ∀ {B : Type u} [inst : Quiver B] {a b c : B} (f : CategoryTheory.FreeBicategory.Hom a b) (g h : CategoryTheory.FreeBicategory.Hom b c) (η η' : CategoryTheory.FreeBicategory.Hom₂ g h), CategoryTheory.FreeBicategory.Rel η η' → CategoryTheory.FreeBicategory.Rel (CategoryTheory.FreeBicategory.Hom₂.whisker_left f η) (CategoryTheory.FreeBicategory.Hom₂.whisker_left f η')
- whisker_left_id: ∀ {B : Type u} [inst : Quiver B] {a b c : B} (f : CategoryTheory.FreeBicategory.Hom a b) (g : CategoryTheory.FreeBicategory.Hom b c), CategoryTheory.FreeBicategory.Rel (CategoryTheory.FreeBicategory.Hom₂.whisker_left f (CategoryTheory.FreeBicategory.Hom₂.id g)) (CategoryTheory.FreeBicategory.Hom₂.id (f.comp g))
- whisker_left_comp: ∀ {B : Type u} [inst : Quiver B] {a b c : B} (f : CategoryTheory.FreeBicategory.Hom a b) {g h i : CategoryTheory.FreeBicategory.Hom b c} (η : CategoryTheory.FreeBicategory.Hom₂ g h) (θ : CategoryTheory.FreeBicategory.Hom₂ h i), CategoryTheory.FreeBicategory.Rel (CategoryTheory.FreeBicategory.Hom₂.whisker_left f (η.vcomp θ)) ((CategoryTheory.FreeBicategory.Hom₂.whisker_left f η).vcomp (CategoryTheory.FreeBicategory.Hom₂.whisker_left f θ))
- id_whisker_left: ∀ {B : Type u} [inst : Quiver B] {a b : B} {f g : CategoryTheory.FreeBicategory.Hom a b} (η : CategoryTheory.FreeBicategory.Hom₂ f g), CategoryTheory.FreeBicategory.Rel (CategoryTheory.FreeBicategory.Hom₂.whisker_left (CategoryTheory.FreeBicategory.Hom.id a) η) ((CategoryTheory.FreeBicategory.Hom₂.left_unitor f).vcomp (η.vcomp (CategoryTheory.FreeBicategory.Hom₂.left_unitor_inv g)))
- comp_whisker_left: ∀ {B : Type u} [inst : Quiver B] {a b c d : B} (f : CategoryTheory.FreeBicategory.Hom a b) (g : CategoryTheory.FreeBicategory.Hom b c) {h h' : CategoryTheory.FreeBicategory.Hom c d} (η : CategoryTheory.FreeBicategory.Hom₂ h h'), CategoryTheory.FreeBicategory.Rel (CategoryTheory.FreeBicategory.Hom₂.whisker_left (f.comp g) η) ((CategoryTheory.FreeBicategory.Hom₂.associator f g h).vcomp ((CategoryTheory.FreeBicategory.Hom₂.whisker_left f (CategoryTheory.FreeBicategory.Hom₂.whisker_left g η)).vcomp (CategoryTheory.FreeBicategory.Hom₂.associator_inv f g h')))
- whisker_right: ∀ {B : Type u} [inst : Quiver B] {a b c : B} (f g : CategoryTheory.FreeBicategory.Hom a b) (h : CategoryTheory.FreeBicategory.Hom b c) (η η' : CategoryTheory.FreeBicategory.Hom₂ f g), CategoryTheory.FreeBicategory.Rel η η' → CategoryTheory.FreeBicategory.Rel (CategoryTheory.FreeBicategory.Hom₂.whisker_right h η) (CategoryTheory.FreeBicategory.Hom₂.whisker_right h η')
- id_whisker_right: ∀ {B : Type u} [inst : Quiver B] {a b c : B} (f : CategoryTheory.FreeBicategory.Hom a b) (g : CategoryTheory.FreeBicategory.Hom b c), CategoryTheory.FreeBicategory.Rel (CategoryTheory.FreeBicategory.Hom₂.whisker_right g (CategoryTheory.FreeBicategory.Hom₂.id f)) (CategoryTheory.FreeBicategory.Hom₂.id (f.comp g))
- comp_whisker_right: ∀ {B : Type u} [inst : Quiver B] {a b c : B} {f g h : CategoryTheory.FreeBicategory.Hom a b} (i : CategoryTheory.FreeBicategory.Hom b c) (η : CategoryTheory.FreeBicategory.Hom₂ f g) (θ : CategoryTheory.FreeBicategory.Hom₂ g h), CategoryTheory.FreeBicategory.Rel (CategoryTheory.FreeBicategory.Hom₂.whisker_right i (η.vcomp θ)) ((CategoryTheory.FreeBicategory.Hom₂.whisker_right i η).vcomp (CategoryTheory.FreeBicategory.Hom₂.whisker_right i θ))
- whisker_right_id: ∀ {B : Type u} [inst : Quiver B] {a b : B} {f g : CategoryTheory.FreeBicategory.Hom a b} (η : CategoryTheory.FreeBicategory.Hom₂ f g), CategoryTheory.FreeBicategory.Rel (CategoryTheory.FreeBicategory.Hom₂.whisker_right (CategoryTheory.FreeBicategory.Hom.id b) η) ((CategoryTheory.FreeBicategory.Hom₂.right_unitor f).vcomp (η.vcomp (CategoryTheory.FreeBicategory.Hom₂.right_unitor_inv g)))
- whisker_right_comp: ∀ {B : Type u} [inst : Quiver B] {a b c d : B} {f f' : CategoryTheory.FreeBicategory.Hom a b} (g : CategoryTheory.FreeBicategory.Hom b c) (h : CategoryTheory.FreeBicategory.Hom c d) (η : CategoryTheory.FreeBicategory.Hom₂ f f'), CategoryTheory.FreeBicategory.Rel (CategoryTheory.FreeBicategory.Hom₂.whisker_right (g.comp h) η) ((CategoryTheory.FreeBicategory.Hom₂.associator_inv f g h).vcomp ((CategoryTheory.FreeBicategory.Hom₂.whisker_right h (CategoryTheory.FreeBicategory.Hom₂.whisker_right g η)).vcomp (CategoryTheory.FreeBicategory.Hom₂.associator f' g h)))
- whisker_assoc: ∀ {B : Type u} [inst : Quiver B] {a b c d : B} (f : CategoryTheory.FreeBicategory.Hom a b) {g g' : CategoryTheory.FreeBicategory.Hom b c} (η : CategoryTheory.FreeBicategory.Hom₂ g g') (h : CategoryTheory.FreeBicategory.Hom c d), CategoryTheory.FreeBicategory.Rel (CategoryTheory.FreeBicategory.Hom₂.whisker_right h (CategoryTheory.FreeBicategory.Hom₂.whisker_left f η)) ((CategoryTheory.FreeBicategory.Hom₂.associator f g h).vcomp ((CategoryTheory.FreeBicategory.Hom₂.whisker_left f (CategoryTheory.FreeBicategory.Hom₂.whisker_right h η)).vcomp (CategoryTheory.FreeBicategory.Hom₂.associator_inv f g' h)))
- whisker_exchange: ∀ {B : Type u} [inst : Quiver B] {a b c : B} {f g : CategoryTheory.FreeBicategory.Hom a b} {h i : CategoryTheory.FreeBicategory.Hom b c} (η : CategoryTheory.FreeBicategory.Hom₂ f g) (θ : CategoryTheory.FreeBicategory.Hom₂ h i), CategoryTheory.FreeBicategory.Rel ((CategoryTheory.FreeBicategory.Hom₂.whisker_left f θ).vcomp (CategoryTheory.FreeBicategory.Hom₂.whisker_right i η)) ((CategoryTheory.FreeBicategory.Hom₂.whisker_right h η).vcomp (CategoryTheory.FreeBicategory.Hom₂.whisker_left g θ))
- associator_hom_inv: ∀ {B : Type u} [inst : Quiver B] {a b c d : B} (f : CategoryTheory.FreeBicategory.Hom a b) (g : CategoryTheory.FreeBicategory.Hom b c) (h : CategoryTheory.FreeBicategory.Hom c d), CategoryTheory.FreeBicategory.Rel ((CategoryTheory.FreeBicategory.Hom₂.associator f g h).vcomp (CategoryTheory.FreeBicategory.Hom₂.associator_inv f g h)) (CategoryTheory.FreeBicategory.Hom₂.id ((f.comp g).comp h))
- associator_inv_hom: ∀ {B : Type u} [inst : Quiver B] {a b c d : B} (f : CategoryTheory.FreeBicategory.Hom a b) (g : CategoryTheory.FreeBicategory.Hom b c) (h : CategoryTheory.FreeBicategory.Hom c d), CategoryTheory.FreeBicategory.Rel ((CategoryTheory.FreeBicategory.Hom₂.associator_inv f g h).vcomp (CategoryTheory.FreeBicategory.Hom₂.associator f g h)) (CategoryTheory.FreeBicategory.Hom₂.id (f.comp (g.comp h)))
- left_unitor_hom_inv: ∀ {B : Type u} [inst : Quiver B] {a b : B} (f : CategoryTheory.FreeBicategory.Hom a b), CategoryTheory.FreeBicategory.Rel ((CategoryTheory.FreeBicategory.Hom₂.left_unitor f).vcomp (CategoryTheory.FreeBicategory.Hom₂.left_unitor_inv f)) (CategoryTheory.FreeBicategory.Hom₂.id ((CategoryTheory.FreeBicategory.Hom.id a).comp f))
- left_unitor_inv_hom: ∀ {B : Type u} [inst : Quiver B] {a b : B} (f : CategoryTheory.FreeBicategory.Hom a b), CategoryTheory.FreeBicategory.Rel ((CategoryTheory.FreeBicategory.Hom₂.left_unitor_inv f).vcomp (CategoryTheory.FreeBicategory.Hom₂.left_unitor f)) (CategoryTheory.FreeBicategory.Hom₂.id f)
- right_unitor_hom_inv: ∀ {B : Type u} [inst : Quiver B] {a b : B} (f : CategoryTheory.FreeBicategory.Hom a b), CategoryTheory.FreeBicategory.Rel ((CategoryTheory.FreeBicategory.Hom₂.right_unitor f).vcomp (CategoryTheory.FreeBicategory.Hom₂.right_unitor_inv f)) (CategoryTheory.FreeBicategory.Hom₂.id (f.comp (CategoryTheory.FreeBicategory.Hom.id b)))
- right_unitor_inv_hom: ∀ {B : Type u} [inst : Quiver B] {a b : B} (f : CategoryTheory.FreeBicategory.Hom a b), CategoryTheory.FreeBicategory.Rel ((CategoryTheory.FreeBicategory.Hom₂.right_unitor_inv f).vcomp (CategoryTheory.FreeBicategory.Hom₂.right_unitor f)) (CategoryTheory.FreeBicategory.Hom₂.id f)
- pentagon: ∀ {B : Type u} [inst : Quiver B] {a b c d e : B} (f : CategoryTheory.FreeBicategory.Hom a b) (g : CategoryTheory.FreeBicategory.Hom b c) (h : CategoryTheory.FreeBicategory.Hom c d) (i : CategoryTheory.FreeBicategory.Hom d e), CategoryTheory.FreeBicategory.Rel ((CategoryTheory.FreeBicategory.Hom₂.whisker_right i (CategoryTheory.FreeBicategory.Hom₂.associator f g h)).vcomp ((CategoryTheory.FreeBicategory.Hom₂.associator f (g.comp h) i).vcomp (CategoryTheory.FreeBicategory.Hom₂.whisker_left f (CategoryTheory.FreeBicategory.Hom₂.associator g h i)))) ((CategoryTheory.FreeBicategory.Hom₂.associator (f.comp g) h i).vcomp (CategoryTheory.FreeBicategory.Hom₂.associator f g (h.comp i)))
- triangle: ∀ {B : Type u} [inst : Quiver B] {a b c : B} (f : CategoryTheory.FreeBicategory.Hom a b) (g : CategoryTheory.FreeBicategory.Hom b c), CategoryTheory.FreeBicategory.Rel ((CategoryTheory.FreeBicategory.Hom₂.associator f (CategoryTheory.FreeBicategory.Hom.id b) g).vcomp (CategoryTheory.FreeBicategory.Hom₂.whisker_left f (CategoryTheory.FreeBicategory.Hom₂.left_unitor g))) (CategoryTheory.FreeBicategory.Hom₂.whisker_right g (CategoryTheory.FreeBicategory.Hom₂.right_unitor f))
Instances For
Equations
- a.homCategory b = CategoryTheory.Category.mk ⋯ ⋯ ⋯
Bicategory structure on the free bicategory.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Canonical prefunctor from B
to free_bicategory B
.
Equations
- CategoryTheory.FreeBicategory.of = { obj := id, map := fun (x x_1 : B) => CategoryTheory.FreeBicategory.Hom.of }
Instances For
Auxiliary definition for lift
.
Equations
- CategoryTheory.FreeBicategory.liftHom F (CategoryTheory.FreeBicategory.Hom.of f) = F.map f
- CategoryTheory.FreeBicategory.liftHom F (CategoryTheory.FreeBicategory.Hom.id x) = CategoryTheory.CategoryStruct.id (F.obj x)
- CategoryTheory.FreeBicategory.liftHom F (f.comp g) = CategoryTheory.CategoryStruct.comp (CategoryTheory.FreeBicategory.liftHom F f) (CategoryTheory.FreeBicategory.liftHom F g)
Instances For
Auxiliary definition for lift
.
Instances For
A prefunctor from a quiver B
to a bicategory C
can be lifted to a pseudofunctor from
free_bicategory B
to C
.
Equations
- One or more equations did not get rendered due to their size.