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
presheafHom
andsheafHom
into bifunctors - for a sheaf of types
F
, thesheafHom
functor fromF
is right-adjoint to the product functor withF
, i.e. for allX
andY
, 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.