Another version of the sheaf condition. #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
Given a family of open sets U : ι → opens X
we can form the subcategory
{ V : opens X // ∃ i, V ≤ U i }
, which has supr U
as a cocone.
The sheaf condition on a presheaf F
is equivalent to
F
sending the opposite of this cocone to a limit cone in C
, for every U
.
This condition is particularly nice when checking the sheaf condition because we don't need to do any case bashing (depending on whether we're looking at single or double intersections, or equivalently whether we're looking at the first or second object in an equalizer diagram).
Main statement #
Top.presheaf.is_sheaf_iff_is_sheaf_opens_le_cover
: for a presheaf on a topological space,
the sheaf condition in terms of Grothendieck topology is equivalent to the opens_le_cover
sheaf condition. This result will be used to further connect to other sheaf conditions on spaces,
like pairwise_intersections
and equalizer_products
.
References #
- This is the definition Lurie uses in Spectral Algebraic Geometry.
The category of open sets contained in some element of the cover.
Equations
- Top.presheaf.sheaf_condition.opens_le_cover U = category_theory.full_subcategory (λ (V : topological_space.opens ↥X), ∃ (i : ι), V ≤ U i)
Instances for Top.presheaf.sheaf_condition.opens_le_cover
An arbitrarily chosen index such that V ≤ U i
.
Equations
- V.index = Exists.some _
The morphism from V
to U i
for some i
.
Equations
supr U
as a cocone over the opens sets contained in some element of the cover.
(In fact this is a colimit cocone.)
Equations
- Top.presheaf.sheaf_condition.opens_le_cover_cocone U = {X := supr U, ι := {app := λ (V : Top.presheaf.sheaf_condition.opens_le_cover U), V.hom_to_index ≫ topological_space.opens.le_supr U V.index, naturality' := _}}
An equivalent formulation of the sheaf condition
(which we prove equivalent to the usual one below as
is_sheaf_iff_is_sheaf_opens_le_cover
).
A presheaf is a sheaf if F
sends the cone (opens_le_cover_cocone U).op
to a limit cone.
(Recall opens_le_cover_cocone U
, has cone point supr U
,
mapping down to any V
which is contained in some U i
.)
Equations
Given a family of opens U
and an open Y
equal to the union of opens in U
, we may
take the presieve on Y
associated to U
and the sieve generated by it, and form the
full subcategory (subposet) of opens contained in Y
(over Y
) consisting of arrows
in the sieve. This full subcategory is equivalent to opens_le_cover U
, the (poset)
category of opens contained in some U i
.
Equations
- Top.presheaf.generate_equivalence_opens_le U hY = {functor := {obj := λ (f : category_theory.full_subcategory (λ (f : category_theory.over Y), (category_theory.sieve.generate (Top.presheaf.presieve_of_covering_aux U Y)).arrows f.hom)), {obj := f.obj.left, property := _}, map := λ (_x _x_1 : category_theory.full_subcategory (λ (f : category_theory.over Y), (category_theory.sieve.generate (Top.presheaf.presieve_of_covering_aux U Y)).arrows f.hom)) (g : _x ⟶ _x_1), g.left, map_id' := _, map_comp' := _}, inverse := {obj := λ (V : Top.presheaf.sheaf_condition.opens_le_cover U), {obj := category_theory.over.mk _.hom, property := _}, map := λ (_x _x_1 : Top.presheaf.sheaf_condition.opens_le_cover U) (g : _x ⟶ _x_1), category_theory.over.hom_mk g _, map_id' := _, map_comp' := _}, unit_iso := category_theory.eq_to_iso _, counit_iso := category_theory.eq_to_iso _, functor_unit_iso_comp' := _}
Given a family of opens opens_le_cover_cocone U
is essentially the natural cocone
associated to the sieve generated by the presieve associated to U
with indexing
category changed using the above equivalence.
Equations
- F.whisker_iso_map_generate_cocone U hY = {hom := {hom := F.map (category_theory.eq_to_hom _), w' := _}, inv := {hom := F.map (category_theory.eq_to_hom _), w' := _}, hom_inv_id' := _, inv_hom_id' := _}
Given a presheaf F
on the topological space X
and a family of opens U
of X
,
the natural cone associated to F
and U
used in the definition of
F.is_sheaf_opens_le_cover
is a limit cone iff the natural cone associated to F
and the sieve generated by the presieve associated to U
is a limit cone.
Given a presheaf F
on the topological space X
and a presieve R
whose generated sieve
is covering for the associated Grothendieck topology (equivalently, the presieve is covering
for the associated pretopology), the natural cone associated to F
and the family of opens
associated to R
is a limit cone iff the natural cone associated to F
and the generated
sieve is a limit cone.
Since only the existence of a 1-1 correspondence will be used, the exact definition does
not matter, so tactics are used liberally.
Equations
A presheaf (opens X)ᵒᵖ ⥤ C
on a topological space X
is a sheaf on the site opens X
iff
it satisfies the is_sheaf_opens_le_cover
sheaf condition. The latter is not the
official definition of sheaves on spaces, but has the advantage that it does not
require has_products C
.