Internal hom of sheaves
In this file, given two sheaves F and G on a site (C, J) with values
in a category A, we define a sheaf of types
sheafHom F G which sends X : C to the type of morphisms
between the restrictions of F and G to the categories Over X.
We first define presheafHom F G when F and G are
presheaves Cᵒᵖ ⥤ A and show that it is a sheaf when G is a sheaf.
TODO:
- turn both
presheafHomandsheafHominto bifunctors - for a sheaf of types
F, thesheafHomfunctor fromFis right-adjoint to the product functor withF, i.e. for allXandY, there is a natural bijection(X ⨯ F ⟶ Y) ≃ (X ⟶ sheafHom F Y). - use these results in order to show that the category of sheaves of types is Cartesian closed
Given two presheaves F and G on a category C with values in a category A,
this presheafHom F G is the presheaf of types which sends an object X : C
to the type of morphisms between the "restrictions" of F and G to the category Over X.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equational lemma for the presheaf structure on presheafHom.
It is advisable to use this lemma rather than dsimp [presheafHom] which may result
in the need to prove equalities of objects in an Over category.
The sections of the presheaf presheafHom F G identify to morphisms F ⟶ G.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Auxiliary definition for presheafHom_isSheafFor.
Equations
- CategoryTheory.PresheafHom.IsSheafFor.app hG x hx g = ⋯.choose
Instances For
The underlying presheaf of sheafHom F G. It is isomorphic to presheafHom F.1 G.1
(see sheafHom'Iso), but has better definitional properties.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The canonical isomorphism sheafHom' F G ≅ presheafHom F.1 G.1.
Equations
- CategoryTheory.sheafHom'Iso F G = CategoryTheory.NatIso.ofComponents (fun (x : Cᵒᵖ) => CategoryTheory.Sheaf.homEquiv.toIso) ⋯
Instances For
Given two sheaves F and G on a site (C, J) with values in a category A,
this sheafHom F G is the sheaf of types which sends an object X : C
to the type of morphisms between the "restrictions" of F and G to the category Over X.
Equations
- CategoryTheory.sheafHom F G = { val := CategoryTheory.sheafHom' F G, cond := ⋯ }
Instances For
The sections of the sheaf sheafHom F G identify to morphisms F ⟶ G.
Equations
- One or more equations did not get rendered due to their size.