Precoverages #
A precoverage K
on a category C
is a set of presieves associated to every object X : C
,
called "covering presieves".
There are no conditions on this set. Common extensions of a precoverage are:
CategoryTheory.Coverage
: A coverage is a precoverage that satisfies a pullback compatibility condition, saying that wheneverS
is a covering presieve onX
andf : Y ⟶ X
is a morphism, then there exists some covering sieveT
onY
such thatT
factors throughS
alongf
.CategoryTheory.Pretopology
: IfC
has pullbacks, a pretopology onC
is a precoverage that has isomorphisms and is stable under pullback and refinement.
These two are defined in later files. For precoverages, we define stability conditions:
CategoryTheory.Precoverage.HasIsos
: Singleton presieves by isomorphisms are covering.CategoryTheory.Precoverage.IsStableUnderBaseChange
: The pullback of a covering presieve is again covering.CategoryTheory.Precoverage.IsStableUnderComposition
: Refining a covering presieve by covering presieves yields a covering presieve.
A precoverage is a collection of covering presieves on every object X : C
.
See CategoryTheory.Coverage
and CategoryTheory.Pretopology
for common extensions of this.
The collection of covering presieves for an object
X
.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
- CategoryTheory.Precoverage.instMin = { min := fun (A B : CategoryTheory.Precoverage C) => { coverings := A.coverings ⊓ B.coverings } }
Equations
- CategoryTheory.Precoverage.instMax = { max := fun (A B : CategoryTheory.Precoverage C) => { coverings := A.coverings ⊔ B.coverings } }
Equations
- CategoryTheory.Precoverage.instSupSet = { sSup := fun (A : Set (CategoryTheory.Precoverage C)) => { coverings := ⨆ K ∈ A, K.coverings } }
Equations
- CategoryTheory.Precoverage.instInfSet = { sInf := fun (A : Set (CategoryTheory.Precoverage C)) => { coverings := ⨅ K ∈ A, K.coverings } }
A precoverage has isomorphisms if singleton presieves by isomorphisms are covering.
Instances
A precoverage is stable under base change if pullbacks of covering presieves
are covering presieves.
Note: This is stronger than the analogous requirement for a Pretopology
, because
IsPullback
does not imply equality with the (arbitrarily) chosen pullbacks in C
.
- mem_coverings_of_isPullback {ι : Type w} {S : C} {X : ι → C} (f : (i : ι) → X i ⟶ S) (hR : Presieve.ofArrows X f ∈ J.coverings S) {Y : C} (g : Y ⟶ S) {P : ι → C} (p₁ : (i : ι) → P i ⟶ Y) (p₂ : (i : ι) → P i ⟶ X i) (h : ∀ (i : ι), IsPullback (p₁ i) (p₂ i) g (f i)) : Presieve.ofArrows P p₁ ∈ J.coverings Y
Instances
A precoverage is stable under composition if the indexed composition
of coverings is again a covering.
Note: This is stronger than the analogous requirement for a Pretopology
, because
this is in general not equal to a Presieve.bind
.
- comp_mem_coverings {ι : Type w} {S : C} {X : ι → C} (f : (i : ι) → X i ⟶ S) (hf : Presieve.ofArrows X f ∈ J.coverings S) {σ : ι → Type w'} {Y : (i : ι) → σ i → C} (g : (i : ι) → (j : σ i) → Y i j ⟶ X i) (hg : ∀ (i : ι), Presieve.ofArrows (Y i) (g i) ∈ J.coverings (X i)) : (Presieve.ofArrows (fun (p : (i : ι) × σ i) => Y p.fst p.snd) fun (x : (i : ι) × σ i) => CategoryStruct.comp (g x.fst x.snd) (f x.fst)) ∈ J.coverings S
Instances
Alias of CategoryTheory.Precoverage.HasIsos.mem_coverings_of_isIso
.
Alias of CategoryTheory.Precoverage.IsStableUnderBaseChange.mem_coverings_of_isPullback
.
Alias of CategoryTheory.Precoverage.IsStableUnderComposition.comp_mem_coverings
.