The Regular and Extensive Coverages #
This file defines two coverages on a category C
.
The first one is called the regular coverage and for that to exist, the category C
must satisfy
a condition called Preregular C
. This means that effective epimorphisms can be "pulled back". The
covering sieves of this coverage are generated by presieves consisting of a single effective
epimorphism.
The second one is called the extensive coverage and for that to exist, the category C
must
satisfy a condition called FinitaryPreExtensive C
. This means C
has finite coproducts and that
those are preserved by pullbacks. The covering sieves of this coverage are generated by presieves
consisting finitely many arrows that together induce an isomorphism from the coproduct to the
target. This condition is weaker than FinitaryExtensive
, where in addition finite coproducts are
disjoint.
Main results #
-
instance : Precoherent C
givenPreregular C
andFinitaryPreExtensive C
. -
extensive_union_regular_generates_coherent
: the union of the regular and extensive coverages generates the coherent topology onC
ifC
is precoherent, preextensive and preregular. -
isSheaf_iff_equalizerCondition
: In a preregular category with pullbacks, the sheaves for the regular topology are precisely the presheaves satisfying an equaliser condition with respect to effective epimorphisms. -
isSheaf_of_projective
: In a preregular category in which every object is projective, every presheaf is a sheaf for the regular topology. -
isSheaf_iff_preservesFiniteProducts
: In a finitary extensive category, the sheaves for the extensive topology are precisely those preserving finite products.
The condition Preregular C
is property that effective epis can be "pulled back" along any
morphism. This is satisfied e.g. by categories that have pullbacks that preserve effective
epimorphisms (like Profinite
and CompHaus
), and categories where every object is projective
(like Stonean
).
- exists_fac : ∀ {X Y Z : C} (f : X ⟶ Y) (g : Z ⟶ Y) [inst : CategoryTheory.EffectiveEpi g], ∃ (W : C) (h : W ⟶ X) (_ : CategoryTheory.EffectiveEpi h) (i : W ⟶ Z), CategoryTheory.CategoryStruct.comp i g = CategoryTheory.CategoryStruct.comp h f
For
X
,Y
,Z
,f
,g
like in the diagram, whereg
is an effective epi, there exists an objectW
, an effective epih : W ⟶ X
and a morphismi : W ⟶ Z
making the diagram commute.W --i-→ Z | | h g ↓ ↓ X --f-→ Y
Instances
Equations
- (_ : CategoryTheory.Preregular C) = (_ : CategoryTheory.Preregular C)
The regular coverage on a regular category C
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The extensive coverage on an extensive category C
TODO: use general colimit API instead of IsIso (Sigma.desc π)
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- (_ : CategoryTheory.Precoherent C) = (_ : CategoryTheory.Precoherent C)
The union of the extensive and regular coverages generates the coherent topology on C
.
A presieve is regular if it consists of a single effective epimorphism.
- single_epi : ∃ (Y : C) (f : Y ⟶ X), (R = CategoryTheory.Presieve.ofArrows (fun (x : Unit) => Y) fun (x : Unit) => f) ∧ CategoryTheory.EffectiveEpi f
R
consists of a single epimorphism.
Instances
The map to the explicit equalizer used in the sheaf condition.
Equations
- CategoryTheory.regularCoverage.MapToEqualizer P f g₁ g₂ w t = { val := P.map f.op t, property := (_ : P.map g₁.op (P.map f.op t) = P.map g₂.op (P.map f.op t)) }
Instances For
The sheaf condition with respect to regular presieves, given the existence of the relavant pullback.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Every Yoneda-presheaf is a sheaf for the regular topology.
The regular topology on any preregular category is subcanonical.
A presieve is extensive if it is finite and its arrows induce an isomorphism from the coproduct to the target.
- arrows_nonempty_isColimit : ∃ (α : Type) (x : Fintype α) (Z : α → C) (π : (a : α) → Z a ⟶ X), R = CategoryTheory.Presieve.ofArrows Z π ∧ Nonempty (CategoryTheory.Limits.IsColimit (CategoryTheory.Limits.Cofan.mk X π))
R
consists of a finite collection of arrows that together induce an isomorphism from the coproduct of their sources.
Instances
Equations
Equations
- CategoryTheory.instPreservesLimitTypeTypesDiscreteDiscreteCategoryFunctor = CategoryTheory.Limits.PreservesLimitsOfShape.preservesLimit
A finite product preserving presheaf is a sheaf for the extensive topology on a category which is
FinitaryPreExtensive
.
Equations
- One or more equations did not get rendered due to their size.
A presheaf on a category which is FinitaryExtensive
is a sheaf iff it preserves finite products.