Theory of sieves #
- For an object
Xof a categoryC, aSieve Xis a predicate on morphisms toXwhich is closed under left-composition. - The complete lattice structure on sieves is given, as well as the Galois insertion given by downward-closing.
- A
Sieve X(functorially) induces a presheaf onCtogether with a monomorphism to the Yoneda embedding ofX.
Tags #
sieve, pullback
A predicate on arrows with codomain X.
Instances For
The full subcategory of the over category C/X consisting of arrows which belong to a
presieve on X.
Instances For
Construct an object of P.category.
Instances For
Given a sieve S on X : C, its associated diagram S.diagram is defined to be
the natural functor from the full subcategory of the over category C/X consisting
of arrows in S to C.
Instances For
Given a sieve S on X : C, its associated cocone S.cocone is defined to be
the natural cocone over the diagram defined above with cocone point X.
Instances For
Given a presieve S on X, and presieve R on Y for each
f : Y ā¶ X in S, produce a presieve on X:
{ g ā« f | (f : Y ā¶ X) ā S, (g : Z ā¶ Y) ā R f }.
Instances For
Structure which contains the data and properties for a morphism h satisfying
Presieve.bind S R h.
- Y : C
the intermediate object
a morphism in the family of presieves
Ra morphism in the presieve
S- hf : S self.f
- hg : R ⯠self.g
- fac : CategoryStruct.comp self.g self.f = h
Instances For
If a morphism h satisfies Presieve.bind S R h, this is a choice of a structure
in BindStruct S R h.
Instances For
The singleton presieve.
- mk {C : Type uā} [Category.{vā, uā} C] {X Y : C} {f : Y ā¶ X} : singleton f f
Instances For
A presieve R has pullbacks along f if for every h in R, the pullback
with f exists.
Instances
Pullback a presieve along a fixed map, by taking the pullback in the
category.
This is not the same as the underlying presieve of Sieve.pullback, but there is a relation between
them in pullbackArrows_comm.
- mk {C : Type uā} [Category.{vā, uā} C] {X Y : C} {f : Y ā¶ X} {R : Presieve X} [R.HasPullbacks f] (Z : C) (h : Z ā¶ X) (hRh : R h) : pullbackArrows f R (Limits.pullback.snd h f)
Instances For
Construct the presieve given by the family of arrows indexed by ι.
- mk {C : Type uā} [Category.{vā, uā} C] {X : C} {ι : Type u_1} {Y : ι ā C} {f : (i : ι) ā Y i ā¶ X} (i : ι) : ofArrows Y f (f i)
Instances For
If g : Y ā¶ S is in the presieve given by the indexed family fįµ¢, this is a choice
of index such that g = fįµ¢ modulo eqToHom.
Note: This should generally not be used! If possible, use the induction principle
for the type Presieve.ofArrows instead (using e.g., rintro / obtain).
Instances For
A convenient constructor for a refinement of a presieve of the form Presieve.ofArrows.
This contains a sieve obtained by Sieve.bind and Sieve.ofArrows, see
Presieve.bind_ofArrows_le_bindOfArrows, but has better definitional properties.
- mk {C : Type uā} [Category.{vā, uā} C] {ι : Type u_1} {X : C} {Y : ι ā C} {f : (i : ι) ā Y i ā¶ X} {R : (i : ι) ā Presieve (Y i)} (i : ι) {Z : C} (g : Z ā¶ Y i) (hg : R i g) : bindOfArrows Y f R (CategoryStruct.comp g (f i))
Instances For
Given a presieve on F(X), we can define a presieve on X by taking the preimage via F.
Instances For
Given a presieve R on X, the predicate R.HasPairwisePullbacks means that for all arrows
f and g in R, the pullback of f and g exists.
Instances
Given a presieve on X, we can define a presieve on F(X) (which is actually a sieve)
by taking the sieve generated by the image via F.
Instances For
An auxiliary definition in order to fix the choice of the preimages between various definitions.
- preobj : C
an object in the source category
a map in the source category which has to be in the presieve
the morphism which appear in the factorisation
- cover : S self.premap
the condition that
premapis in the presieve - fac : f = CategoryStruct.comp self.lift (F.map self.premap)
the factorisation of the morphism
Instances For
The fixed choice of a preimage.
Instances For
This presieve generates functorPushforward.
See arrows_generate_map_eq_functorPushforward.
- of {C : Type uā} [Category.{vā, uā} C] {D : Type uā} [Category.{vā, uā} D] {F : Functor C D} {X : C} {s : Presieve X} {Y : C} {u : Y ā¶ X} (h : s u) : map F s (F.map u)
Instances For
Uncurry a presieve to one set over the sigma type.
Instances For
For an object X of a category C, a Sieve X is a predicate on morphisms to X which is closed
under left-composition.
- arrows : Presieve X
the underlying presieve
- downward_closed {Y Z : C} {f : Y ā¶ X} : self.arrows f ā ā (g : Z ā¶ Y), self.arrows (CategoryStruct.comp g f)
stability by precomposition
Instances For
The supremum of a collection of sieves: the union of them all.
Instances For
The infimum of a collection of sieves: the intersection of them all.
Instances For
The union of two sieves is a sieve.
Instances For
The intersection of two sieves is a sieve.
Instances For
Sieves on an object X form a complete lattice.
We generate this directly rather than using the Galois insertion for nicer definitional properties.
The maximal sieve always exists.
Generate the smallest sieve containing the given presieve.
Instances For
Given a presieve on X, and a sieve on each domain of an arrow in the presieve, we can bind to
produce a sieve on X.
Instances For
Structure which contains the data and properties for a morphism h satisfying
Sieve.bind S R h.
Instances For
Show that there is a Galois insertion (generate, underlying presieve).
Instances For
If the identity arrow is in a sieve, the sieve is maximal.
If a presieve contains a split epi, it generates the maximal sieve.
The sieve of X generated by family of morphisms Y i ā¶ X.
Instances For
When hg : Sieve.ofArrows Y f g, this is a choice of i such that g
factors through f i.
Instances For
When hg : Sieve.ofArrows Y f g, this is a morphism h : W ā¶ Y (i hg) such
that h ā« f (i hg) = g.
Instances For
The sieve generated by the morphisms in R.category
for a presieve R is the sieve generated by R.
The sieve generated by two morphisms.
Instances For
The sieve of X : C that is generated by a family of objects Y : I ā C:
it consists of morphisms to X which factor through at least one of the Y i.
Instances For
Given a morphism h : Y ā¶ X, send a sieve S on X to a sieve on Y
as the inverse image of S with _ ā« h. That is, Sieve.pullback S h := (ā« h) 'ā»Ā¹ S.
Instances For
If f is a monomorphism, the pushforward-pullback adjunction on sieves is coreflective.
Instances For
If f is a split epi, the pushforward-pullback adjunction on sieves is reflective.
Instances For
If R is a sieve, then the CategoryTheory.Presieve.functorPullback of R is actually a sieve.
Instances For
The sieve generated by the image of R under F.
Instances For
When F is essentially surjective and full, the Galois connection is a Galois insertion.
Instances For
When F is fully faithful, the Galois connection is a Galois coinsertion.
Instances For
A sieve induces a presheaf.
Instances For
If a sieve S is contained in a sieve T, then we have a morphism of presheaves on their induced presheaves.
Instances For
The natural inclusion from the functor induced by a sieve to the yoneda embedding.
Instances For
Any component f : Y ā¶ X of the sieve S induces a natural transformation from yoneda.obj Y
to the presheaf induced by S.
Instances For
The presheaf induced by a sieve is a subobject of the yoneda embedding.
A natural transformation to a representable functor induces a sieve. This is the left inverse of
functorInclusion, shown in sieveOfSubfunctor_functorInclusion.
Instances For
A variant of Sieve.functor with universe lifting.
Instances For
A variant of Sieve.natTransOfLe with universe lifting.
Instances For
A variant of Sieve.functorInclusion with universe lifting.
Instances For
A variant of Sieve.toFunctor with universe lifting.
Instances For
The presheaf induced by a sieve is a subobject of the yoneda embedding.
A variant of Sieve.sieveOfSubfunctor with universe lifting.
Instances For
If C is w-locally small, any sieve induces a subfunctor of shrinkYoneda.{w}.obj X.
Instances For
Sieve.shrinkFunctor is compatible with universe lifting.
Instances For
Shrinking does nothing for the same universe level.