Documentation

Mathlib.CategoryTheory.Bicategory.Modification.Pseudo

Modifications between transformations of pseudofunctors #

In this file we define modifications of strong transformations of pseudofunctors. They are defined similarly to modifications of transformations of oplax functors.

Main definitions #

Given two pseudofunctors F and G, we define:

structure CategoryTheory.Pseudofunctor.StrongTrans.Modification {B : Type u₁} [Bicategory B] {C : Type u₂} [Bicategory C] {F G : Pseudofunctor B C} (η θ : F G) :
Type (max u₁ w₂)

A modification Γ between strong transformations (of pseudofunctors) η and θ consists of a family of 2-morphisms Γ.app a : η.app a ⟶ θ.app a, which satisfies the equation (F.map f ◁ app b) ≫ (θ.naturality f).hom = (η.naturality f).hom ≫ (app a ▷ G.map f) for each 1-morphism f : a ⟶ b.

Instances For
    theorem CategoryTheory.Pseudofunctor.StrongTrans.Modification.ext {B : Type u₁} {inst✝ : Bicategory B} {C : Type u₂} {inst✝¹ : Bicategory C} {F G : Pseudofunctor B C} {η θ : F G} {x y : Modification η θ} (app : x.app = y.app) :
    x = y
    theorem CategoryTheory.Pseudofunctor.StrongTrans.Modification.ext_iff {B : Type u₁} {inst✝ : Bicategory B} {C : Type u₂} {inst✝¹ : Bicategory C} {F G : Pseudofunctor B C} {η θ : F G} {x y : Modification η θ} :
    x = y x.app = y.app
    @[simp]
    theorem CategoryTheory.Pseudofunctor.StrongTrans.Modification.naturality_assoc {B : Type u₁} [Bicategory B] {C : Type u₂} [Bicategory C] {F G : Pseudofunctor B C} {η θ : F G} (self : Modification η θ) {a b : B} (f : a b) {Z : F.obj a G.obj b} (h : CategoryStruct.comp (θ.app a) (G.map f) Z) :

    The naturality condition.

    The modification between the corresponding strong transformation of the underlying oplax functors.

    Equations
    • Γ.toOplax = { app := fun (a : B) => Γ.app a, naturality := }
    Instances For
      @[simp]
      theorem CategoryTheory.Pseudofunctor.StrongTrans.Modification.toOplax_app {B : Type u₁} [Bicategory B] {C : Type u₂} [Bicategory C] {F G : Pseudofunctor B C} {η θ : F G} (Γ : Modification η θ) (a : B) :
      Γ.toOplax.app a = Γ.app a

      The modification between strong transformations of pseudofunctors associated to a modification between the underlying strong transformations of oplax functors.

      Equations
      Instances For
        @[simp]

        Modifications between strong transformations of pseudofunctors are equivalent to modifications between the underlying strong transformations of oplax functors.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For

          The identity modification.

          Equations
          Instances For
            @[simp]
            theorem CategoryTheory.Pseudofunctor.StrongTrans.Modification.id_app {B : Type u₁} [Bicategory B] {C : Type u₂} [Bicategory C] {F G : Pseudofunctor B C} (η : F G) (a : B) :
            (id η).app a = CategoryStruct.id (η.app a)
            def CategoryTheory.Pseudofunctor.StrongTrans.Modification.vcomp {B : Type u₁} [Bicategory B] {C : Type u₂} [Bicategory C] {F G : Pseudofunctor B C} {η θ ι : F G} (Γ : Modification η θ) (Δ : Modification θ ι) :

            Vertical composition of modifications.

            Equations
            Instances For
              @[simp]
              theorem CategoryTheory.Pseudofunctor.StrongTrans.Modification.vcomp_app {B : Type u₁} [Bicategory B] {C : Type u₂} [Bicategory C] {F G : Pseudofunctor B C} {η θ ι : F G} (Γ : Modification η θ) (Δ : Modification θ ι) (a : B) :
              (Γ.vcomp Δ).app a = CategoryStruct.comp (Γ.app a) (Δ.app a)
              structure CategoryTheory.Pseudofunctor.StrongTrans.Hom {B : Type u₁} [Bicategory B] {C : Type u₂} [Bicategory C] {F G : Pseudofunctor B C} (η θ : F G) :
              Type (max u₁ w₂)

              Type-alias for modifications between strong transformations of pseudofunctors. This is the type used for the 2-homomorphisms in the bicategory of pseudofunctors.

              • of :: (
                • as : Modification η θ

                  The underlying modification of strong transformations.

              • )
              Instances For
                theorem CategoryTheory.Pseudofunctor.StrongTrans.Hom.ext {B : Type u₁} {inst✝ : Bicategory B} {C : Type u₂} {inst✝¹ : Bicategory C} {F G : Pseudofunctor B C} {η θ : F G} {x y : Hom η θ} (as : x.as = y.as) :
                x = y
                theorem CategoryTheory.Pseudofunctor.StrongTrans.Hom.ext_iff {B : Type u₁} {inst✝ : Bicategory B} {C : Type u₂} {inst✝¹ : Bicategory C} {F G : Pseudofunctor B C} {η θ : F G} {x y : Hom η θ} :
                x = y x.as = y.as
                @[instance_reducible]

                Category structure on the strong transformations between pseudofunctors.

                Note that this a scoped instance in the Pseudofunctor.StrongTrans namespace.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  @[simp]
                  theorem CategoryTheory.Pseudofunctor.StrongTrans.homCategory_comp_as_app {B : Type u₁} [Bicategory B] {C : Type u₂} [Bicategory C] {F G : Pseudofunctor B C} {X✝ Y✝ Z✝ : F G} (Γ : Hom X✝ Y✝) (Δ : Hom Y✝ Z✝) (a : B) :
                  @[simp]
                  theorem CategoryTheory.Pseudofunctor.StrongTrans.homCategory.ext {B : Type u₁} [Bicategory B] {C : Type u₂} [Bicategory C] {F G : Pseudofunctor B C} {η θ : F G} {m n : η θ} (w : ∀ (b : B), m.as.app b = n.as.app b) :
                  m = n
                  theorem CategoryTheory.Pseudofunctor.StrongTrans.homCategory.ext_iff {B : Type u₁} [Bicategory B] {C : Type u₂} [Bicategory C] {F G : Pseudofunctor B C} {η θ : F G} {m n : η θ} :
                  m = n ∀ (b : B), m.as.app b = n.as.app b
                  def CategoryTheory.Pseudofunctor.StrongTrans.isoMk {B : Type u₁} [Bicategory B] {C : Type u₂} [Bicategory C] {F G : Pseudofunctor B C} {η θ : F G} (app : (a : B) → η.app a θ.app a) (naturality : ∀ {a b : B} (f : a b), CategoryStruct.comp (Bicategory.whiskerLeft (F.map f) (app b).hom) (θ.naturality f).hom = CategoryStruct.comp (η.naturality f).hom (Bicategory.whiskerRight (app a).hom (G.map f)) := by cat_disch) :
                  η θ

                  Construct a modification isomorphism between strong transformations by giving object level isomorphisms, and checking naturality only in the forward direction.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    @[simp]
                    theorem CategoryTheory.Pseudofunctor.StrongTrans.isoMk_hom_as_app {B : Type u₁} [Bicategory B] {C : Type u₂} [Bicategory C] {F G : Pseudofunctor B C} {η θ : F G} (app : (a : B) → η.app a θ.app a) (naturality : ∀ {a b : B} (f : a b), CategoryStruct.comp (Bicategory.whiskerLeft (F.map f) (app b).hom) (θ.naturality f).hom = CategoryStruct.comp (η.naturality f).hom (Bicategory.whiskerRight (app a).hom (G.map f)) := by cat_disch) (a : B) :
                    (isoMk app naturality).hom.as.app a = (app a).hom
                    @[simp]
                    theorem CategoryTheory.Pseudofunctor.StrongTrans.isoMk_inv_as_app {B : Type u₁} [Bicategory B] {C : Type u₂} [Bicategory C] {F G : Pseudofunctor B C} {η θ : F G} (app : (a : B) → η.app a θ.app a) (naturality : ∀ {a b : B} (f : a b), CategoryStruct.comp (Bicategory.whiskerLeft (F.map f) (app b).hom) (θ.naturality f).hom = CategoryStruct.comp (η.naturality f).hom (Bicategory.whiskerRight (app a).hom (G.map f)) := by cat_disch) (a : B) :
                    (isoMk app naturality).inv.as.app a = (app a).inv