Global sections of sheaves #
In this file we define a global sections functor Sheaf.Γ : Sheaf J A ⥤ A
and show that it
is isomorphic to several other constructions when they exist, most notably evaluation of sheaves
on a terminal object and Functor.sectionsFunctor
.
Main definitions / results #
HasGlobalSectionsFunctor J A
: typeclass stating that the constant sheaf functorA ⥤ Sheaf J A
has a right-adjoint.Sheaf.Γ J A
: the global sections functorSheaf J A ⥤ A
, defined as the right-adjoint of the constant sheaf functor, whenever that exists.constantSheafΓAdj J A
: the adjunction between the constant sheaf functor andSheaf.Γ J A
.Sheaf.ΓNatIsoSheafSections J A hT
: on sites with a terminal objectT
,Sheaf.Γ J A
exists and is isomorphic to the functor evaluating sheaves atT
.Sheaf.ΓNatIsoLim J A
: whenA
has limits of shapeCᵒᵖ
,Sheaf.Γ J A
exists and is isomorphic to the functor taking each sheaf to the limit of its underlying presheaf.Sheaf.isLimitConeΓ F
: global sections are limits even when not all limits of shapeCᵒᵖ
exist.Sheaf.ΓRes F U
: the restriction morphism from global sections ofF
to sections ofF
onU
.Sheaf.natTransΓRes J A U
: the natural transformation from the global sections functor to the sections functor onU
.Sheaf.ΓNatIsoSectionsFunctor J
: for sheaves of types,Sheaf.Γ J A
is isomorphic to the functor taking each sheaf to the type of sections of its underlying presheaf in the sense ofFunctor.sections
.Sheaf.ΓNatIsoCoyoneda J
: for sheaves of types,Sheaf.Γ J A
is isomorphic to the coyoneda embedding of the terminal sheaf, i.e. the functor sending each sheafF
to the type of morphisms from the terminal sheaf toF
.
TODO #
- Generalise
Sheaf.ΓNatIsoSectionsFunctor
andSheaf.ΓNatIsoCoyoneda
fromType max u v
toType max u v w
. This should hopefully be doable by relaxing the universe constraints ofinstHasSheafifyOfHasFiniteLimits
.
Typeclass stating that the constant sheaf functor has a right adjoint. This right adjoint will
then be called the global sections functor and written Sheaf.Γ
.
Equations
Instances For
We define the global sections functor as the right-adjoint of the constant sheaf functor whenever it exists.
Equations
Instances For
The constant sheaf functor is by definition left-adjoint to the global sections functor.
Equations
Instances For
Sites with a terminal object admit a global sections functor.
On sites with a terminal object, the global sections functor is isomorphic to the functor of sections on that object.
Equations
Instances For
Every site C
admits a global sections functor for A
-valued sheaves when A
has limits of
shape Cᵒᵖ
.
Global sections of sheaves are naturally isomorphic to the limits of the underlying presheaves.
Note that while HasLimitsOfShape Cᵒᵖ A
is needed here to talk about lim
as a functor, global
sections are still limits without it - see Sheaf.isLimitConeΓ
.
Equations
Instances For
Natural transformations from a constant presheaf into a sheaf correspond to morphisms to its global sections.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Naturality lemma for ΓHomEquiv
analogous to Adjunction.homEquiv_naturality_left
.
Naturality lemma for ΓHomEquiv
analogous to Adjunction.homEquiv_naturality_left_symm
.
Naturality lemma for ΓHomEquiv
analogous to Adjunction.homEquiv_naturality_right
.
Naturality lemma for ΓHomEquiv
analogous to Adjunction.homEquiv_naturality_right_symm
.
The cone over a given sheaf whose cone point are the global sections and whose components are the restriction maps.
Equations
- F.coneΓ = { pt := (CategoryTheory.Sheaf.Γ J A).obj F, π := CategoryTheory.Sheaf.ΓHomEquiv.symm (CategoryTheory.CategoryStruct.id ((CategoryTheory.Sheaf.Γ J A).obj F)) }
Instances For
The global sections cone Sheaf.coneΓ
is limiting - that is, global sections are limits even
when not all limits of shape Cᵒᵖ
exist in A
.
Equations
- F.isLimitConeΓ = { lift := fun (c : CategoryTheory.Limits.Cone F.val) => CategoryTheory.Sheaf.ΓHomEquiv c.π, fac := ⋯, uniq := ⋯ }
Instances For
The restriction map from global sections of F
to sections on U
.
Instances For
The natural transformation from the global sections functor to the sections functor on any
object U
.
Equations
- CategoryTheory.Sheaf.natTransΓRes J A U = { app := fun (F : CategoryTheory.Sheaf J A) => F.ΓRes U, naturality := ⋯ }
Instances For
Global sections of a sheaf of types correspond to sections of the underlying presheaf.
Equations
- One or more equations did not get rendered due to their size.
Instances For
For sheaves of types, the global sections functor is isomorphic to the sections functor on presheaves.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Global sections of a sheaf of types F
correspond to morphisms from a terminal sheaf to F
.
We use the constant sheaf on a singleton type as a specific choice of terminal sheaf here.
Equations
- CategoryTheory.Sheaf.ΓObjEquivHom J F X = (Equiv.funUnique X ((CategoryTheory.Sheaf.Γ J (Type ?u.70)).obj F)).symm.trans ((CategoryTheory.constantSheafΓAdj J (Type ?u.70)).homEquiv X F).symm
Instances For
For sheaves of types, the global sections functor is isomorphic to the covariant hom functor of the terminal sheaf.
Equations
- CategoryTheory.Sheaf.ΓNatIsoCoyoneda J X = CategoryTheory.NatIso.ofComponents (fun (F : CategoryTheory.Sheaf J (Type (max ?u.56 ?u.55))) => (CategoryTheory.Sheaf.ΓObjEquivHom J F X).toIso) ⋯