Subpresheaf of types #
We define the subpresheaf of a type valued presheaf.
Main results #
CategoryTheory.Subpresheaf
: A subpresheaf of a presheaf of types.
A subpresheaf of a presheaf consists of a subset of F.obj U
for every U
,
compatible with the restriction maps F.map i
.
If
G
is a sub-presheaf ofF
, then the sections ofG
onU
forms a subset of sections ofF
onU
.If
G
is a sub-presheaf ofF
andi : U ⟶ V
, then for eachG
-sections onU
x
,F i x
is inF(V)
.
Instances For
Alias of CategoryTheory.Subpresheaf
.
A subpresheaf of a presheaf consists of a subset of F.obj U
for every U
,
compatible with the restriction maps F.map i
.
Instances For
Equations
- CategoryTheory.instTopSubpresheaf = { top := { obj := fun (x : Cᵒᵖ) => ⊤, map := ⋯ } }
The subpresheaf as a presheaf.
Equations
Instances For
Equations
- CategoryTheory.instCoeHeadObjOppositeToPresheaf G = { coe := Subtype.val }
The inclusion of a subpresheaf to the original presheaf.
Instances For
The inclusion of a subpresheaf to a larger subpresheaf
Equations
- CategoryTheory.Subpresheaf.homOfLe h = { app := fun (U : Cᵒᵖ) (x : G.toPresheaf.obj U) => ⟨↑x, ⋯⟩, naturality := ⋯ }
Instances For
If the image of a morphism falls in a subpresheaf, then the morphism factors through it.
Instances For
Given a subpresheaf G
of F
, an F
-section s
on U
, we may define a sieve of U
consisting of all f : V ⟶ U
such that the restriction of s
along f
is in G
.
Equations
- G.sieveOfSection s = { arrows := fun (V : C) (f : V ⟶ Opposite.unop U) => F.map f.op s ∈ G.obj (Opposite.op V), downward_closed := ⋯ }
Instances For
Given an F
-section s
on U
and a subpresheaf G
, we may define a family of elements in
G
consisting of the restrictions of s
Equations
- G.familyOfElementsOfSection s i hi = ⟨F.map i.op s, hi⟩
Instances For
The image presheaf of a morphism, whose components are the set-theoretic images.
Equations
- CategoryTheory.imagePresheaf f = { obj := fun (U : Cᵒᵖ) => Set.range (f.app U), map := ⋯ }
Instances For
A morphism factors through the image presheaf.
Equations
- CategoryTheory.toImagePresheaf f = (CategoryTheory.imagePresheaf f).lift f ⋯