Documentation

Mathlib.CategoryTheory.Profunctor.Comp

Composition of Profunctors #

This file defines composition of profunctors. Given profunctors P : C ⥤ Dᵒᵖ ⥤ Type and Q : D ⥤ Eᵒᵖ ⥤ Type, the composite P.comp Q is the profunctor C ⥤ Eᵒᵖ ⥤ Type given on objects X : C and Y : E by the coend ∫ d, P X d × Q d Y, where d ranges over objects of D.

Main Definitions #

(All in the namespace CategoryTheory.Profunctor)

These satisfy the coherence laws for a bicategory, see the file Mathlib.CategoryTheory.Profunctor.Bicategory.

@[implicit_reducible]

The bifunctor whose coend defines the composite of two profunctors.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    @[simp]
    theorem CategoryTheory.Profunctor.compDiagram_obj_map {C : Type u_1} [Category.{v_1, u_1} C] {D : Type u} [Category.{v, u} D] {E : Type u_2} [Category.{v_2, u_2} E] (P : Profunctor.{w, v_1, v, u_1, u} C D) (Q : Profunctor.{w', v, v_2, u, u_2} D E) (X : C) (Y : E) (U : Dᵒᵖ) {X✝ Y✝ : D} (f : X✝ ⟶ Y✝) :
    @[simp]
    theorem CategoryTheory.Profunctor.compDiagram_map_app {C : Type u_1} [Category.{v_1, u_1} C] {D : Type u} [Category.{v, u} D] {E : Type u_2} [Category.{v_2, u_2} E] (P : Profunctor.{w, v_1, v, u_1, u} C D) (Q : Profunctor.{w', v, v_2, u, u_2} D E) (X : C) (Y : E) {X✝ Y✝ : Dᵒᵖ} (g : X✝ ⟶ Y✝) (U : D) :
    @[simp]
    theorem CategoryTheory.Profunctor.compDiagram_obj_obj {C : Type u_1} [Category.{v_1, u_1} C] {D : Type u} [Category.{v, u} D] {E : Type u_2} [Category.{v_2, u_2} E] (P : Profunctor.{w, v_1, v, u_1, u} C D) (Q : Profunctor.{w', v, v_2, u, u_2} D E) (X : C) (Y : E) (U : Dᵒᵖ) (V : D) :
    ((P.compDiagram Q X Y).obj U).obj V = ((P.obj X).obj U × (Q.obj V).obj (Opposite.op Y))
    def CategoryTheory.Profunctor.compDiagramMap {C : Type u_1} [Category.{v_1, u_1} C] {D : Type u} [Category.{v, u} D] {E : Type u_2} [Category.{v_2, u_2} E] (P : Profunctor.{w, v_1, v, u_1, u} C D) (Q : Profunctor.{w', v, v_2, u, u_2} D E) {X X' : C} {Y Y' : E} (f : X ⟶ X') (g : Y ⟶ Y') :
    P.compDiagram Q X Y' ⟶ P.compDiagram Q X' Y

    The map on composition diagrams induced by morphisms in the outer variables.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      @[simp]
      theorem CategoryTheory.Profunctor.compDiagramMap_app_app {C : Type u_1} [Category.{v_1, u_1} C] {D : Type u} [Category.{v, u} D] {E : Type u_2} [Category.{v_2, u_2} E] (P : Profunctor.{w, v_1, v, u_1, u} C D) (Q : Profunctor.{w', v, v_2, u, u_2} D E) {X X' : C} {Y Y' : E} (f : X ⟶ X') (g : Y ⟶ Y') (d : Dᵒᵖ) (d' : D) :
      @[simp]
      theorem CategoryTheory.Profunctor.compDiagramMap_comp {C : Type u_1} [Category.{v_1, u_1} C] {D : Type u} [Category.{v, u} D] {E : Type u_2} [Category.{v_2, u_2} E] (P : Profunctor.{w, v_1, v, u_1, u} C D) (Q : Profunctor.{w', v, v_2, u, u_2} D E) {X₁ X₂ X₃ : C} {Y₁ Y₂ Y₃ : E} (f : X₁ ⟶ X₂) (f' : X₂ ⟶ X₃) (g : Y₁ ⟶ Y₂) (g' : Y₂ ⟶ Y₃) :
      @[implicit_reducible]

      Composition of profunctors using a chosen coend construction.

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

        Composition of profunctors in the standard universe configuration.

        Equations
        Instances For

          Left whiskering of a natural transformation of profunctors.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            @[simp]
            theorem CategoryTheory.Profunctor.whiskerLeft_app_app {C D E : Type u} [Category.{v_1, u} C] [Category.{v_2, u} D] [Category.{v_3, u} E] (P : Profunctor.{max u w, v_1, v_2, u, u} C D) {Q R : Profunctor.{max u w, v_2, v_3, u, u} D E} (f : Q ⟶ R) (X : C) (Y : Eᵒᵖ) :
            ((P.whiskerLeft f).app X).app Y = Limits.chosenCoend.map { app := fun (d : Dᵒᵖ) => { app := fun (d' : D) => TypeCat.ofHom (Prod.map id ⇑(ConcreteCategory.hom ((f.app d').app Y))), naturality := ⋯ }, naturality := ⋯ }

            Right whiskering of a natural transformation of profunctors.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              @[simp]
              theorem CategoryTheory.Profunctor.whiskerRight_app_app {C D E : Type u} [Category.{v_1, u} C] [Category.{v_2, u} D] [Category.{v_3, u} E] {P Q : Profunctor.{max u w, v_1, v_2, u, u} C D} (R : Profunctor.{max u w, v_2, v_3, u, u} D E) (f : P ⟶ Q) (X : C) (Y : Eᵒᵖ) :
              ((whiskerRight R f).app X).app Y = Limits.chosenCoend.map { app := fun (d : Dᵒᵖ) => { app := fun (d' : D) => TypeCat.ofHom (Prod.map (⇑(ConcreteCategory.hom ((f.app X).app d))) id), naturality := ⋯ }, naturality := ⋯ }

              The left unitor isomorphism Profunctor.id.comp P ≅ P for composition of profunctors.

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

                The right unitor isomorphism P.comp Profunctor.id ≅ P for composition of profunctors.

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

                  The map on representatives underlying associatorHom.

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

                    The forward map of the objectwise associator for composition of profunctors.

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

                      The inverse map of the objectwise associator for composition of profunctors.

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

                        The objectwise components of the associator isomorphism (P.comp Q).comp R ≅ P.comp (Q.comp R).

                        Equations
                        Instances For

                          The associator isomorphism (P.comp Q).comp R ≅ P.comp (Q.comp R) for composition of profunctors.

                          Equations
                          Instances For