Documentation

Mathlib.CategoryTheory.Closed.FunctorToTypes

Functors to Type are closed. #

Show that C ⥤ Type max w v u is monoidal closed for C a category in Type u with morphisms in Type v, and w an arbitrary universe.

TODO #

It should be shown that C ⥤ Type max w v u is cartesian closed.

@[simp]
theorem CategoryTheory.FunctorToTypes.functorHomEquiv_symm_apply_app_app {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor C (Type (max w v u))) (G : CategoryTheory.Functor C (Type (max w v u))) (H : CategoryTheory.Functor C (Type (max w v u))) :
∀ (a : CategoryTheory.MonoidalCategory.tensorObj F G H) (X : C) (a_1 : G.obj X) (Y : C) (f : (Opposite.unop (CategoryTheory.coyoneda.rightOp.obj X)).obj Y) (a_2 : F.obj Y), (((CategoryTheory.FunctorToTypes.functorHomEquiv F G H).symm a).app X a_1).app Y f a_2 = a.app Y (a_2, G.map f a_1)
@[simp]
theorem CategoryTheory.FunctorToTypes.functorHomEquiv_apply_app {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor C (Type (max w v u))) (G : CategoryTheory.Functor C (Type (max w v u))) (H : CategoryTheory.Functor C (Type (max w v u))) :
∀ (a : G F.functorHom H) (X : C) (x : (CategoryTheory.MonoidalCategory.tensorObj F G).obj X), ((CategoryTheory.FunctorToTypes.functorHomEquiv F G H) a).app X x = match x with | (x, y) => (a.app X y).app X (CategoryTheory.CategoryStruct.id X) x

When F G H : C ⥤ Type max w v u, we have (G ⟶ F.functorHom H) ≃ (F ⊗ G ⟶ H).

Equations
Instances For
    @[simp]
    theorem CategoryTheory.FunctorToTypes.rightAdj_map_app {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type (max w v u))} {G : CategoryTheory.Functor C (Type (max w v u))} {H : CategoryTheory.Functor C (Type (max w v u))} (f : G H) (c : C) (a : (F.functorHom G).obj c) (d : C) (b : (Opposite.unop (CategoryTheory.coyoneda.rightOp.obj c)).obj d) :
    ∀ (a_1 : F.obj d), (CategoryTheory.FunctorToTypes.rightAdj_map f c a).app d b a_1 = CategoryTheory.CategoryStruct.comp (a.app d b) (f.app d) a_1
    def CategoryTheory.FunctorToTypes.rightAdj_map {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor C (Type (max w v u))} {G : CategoryTheory.Functor C (Type (max w v u))} {H : CategoryTheory.Functor C (Type (max w v u))} (f : G H) (c : C) (a : (F.functorHom G).obj c) :
    (F.functorHom H).obj c

    Given a morphism f : G ⟶ H, an object c : C, and an element of (F.functorHom G).obj c, construct an element of (F.functorHom H).obj c.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      @[simp]
      theorem CategoryTheory.FunctorToTypes.rightAdj_obj_map_app {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor C (Type (max w v u))) (G : CategoryTheory.Functor C (Type (max w v u))) :
      ∀ {X Y : C} (f : X Y) (a : (F.homObjFunctor G).obj (CategoryTheory.coyoneda.rightOp.obj X)) (X_1 : C) (a_1 : (Opposite.unop (CategoryTheory.coyoneda.rightOp.obj Y)).obj X_1) (a_2 : F.obj X_1), (((CategoryTheory.FunctorToTypes.rightAdj F).obj G).map f a).app X_1 a_1 a_2 = a.app X_1 (CategoryTheory.CategoryStruct.comp f a_1) a_2
      @[simp]
      theorem CategoryTheory.FunctorToTypes.rightAdj_map_app_app {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor C (Type (max w v u))) :
      ∀ {X Y : CategoryTheory.Functor C (Type (max w v u))} (f : X Y) (c : C) (a : (F.functorHom X).obj c) (d : C) (b : (Opposite.unop (CategoryTheory.coyoneda.rightOp.obj c)).obj d) (a_1 : F.obj d), (((CategoryTheory.FunctorToTypes.rightAdj F).map f).app c a).app d b a_1 = f.app d (a.app d b a_1)
      @[simp]
      theorem CategoryTheory.FunctorToTypes.rightAdj_obj_obj {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor C (Type (max w v u))) (G : CategoryTheory.Functor C (Type (max w v u))) (X : C) :
      ((CategoryTheory.FunctorToTypes.rightAdj F).obj G).obj X = F.HomObj G (CategoryTheory.coyoneda.obj (Opposite.op X))

      A right adjoint of tensorLeft F.

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

        The adjunction tensorLeft F ⊣ rightAdj F.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          Equations
          • CategoryTheory.FunctorToTypes.monoidalClosed = { closed := inferInstance }