Objects which cover the terminal object
In this file, given a site (C, J), we introduce the notion of a family
of objects Y : I → C which "cover the final object": this means
that for all X : C, the sieve Sieve.ofObjects Y X is covering for J.
When there is a terminal object X : C, then J.CoversTop Y
holds iff Sieve.ofObjects Y X is covering for J.
We introduce a notion of compatible family of elements on objects Y
and obtain Presheaf.FamilyOfElementsOnObjects.IsCompatible.existsUnique_section
which asserts that if a presheaf of types is a sheaf, then any compatible
family of elements on objects Y which cover the final object extends as
a section of this presheaf.
A family of objects Y : I → C "covers the final object"
if for all X : C, the sieve ofObjects Y X is a covering sieve.
Equations
Instances For
The cover of any object W : C attached to a family of objects Y that satisfy
J.CoversTop Y
Equations
Instances For
A family of elements of a presheaf of types F indexed by a family of objects
Y : I → C consists of the data of an element in F.obj (Opposite.op (Y i)) for all i.
Equations
Instances For
x : FamilyOfElementsOnObjects F Y is compatible if for any object Z such that
there exists a morphism f : Z → Y i, then the pullback of x i by f is independent
of f and i.
Equations
Instances For
A family of elements indexed by Sieve.ofObjects Y X that is induced by
x : FamilyOfElementsOnObjects F Y. See the equational lemma
IsCompatible.familyOfElements_apply which holds under the assumption x.IsCompatible.
Equations
Instances For
The section of a sheaf of types which lifts a compatible family of elements indexed by objects which cover the terminal object.