Cover-preserving functors between sites. #
We define cover-preserving functors between sites as functors that push covering sieves to
covering sieves. A cover-preserving and compatible-preserving functor G : C ⥤ D then pulls
sheaves on D back to sheaves on C via G.op ⋙ -.
Main definitions #
category_theory.cover_preserving: a functor between sites is cover-preserving if it pushes covering sieves to covering sievescategory_theory.compatible_preserving: a functor between sites is compatible-preserving if it pushes compatible families of elements to compatible families.category_theory.pullback_sheaf: the pullback of a sheaf along a cover-preserving and compatible-preserving functor.category_theory.sites.pullback: the induced functorSheaf K A ⥤ Sheaf J Afor a cover-preserving and compatible-preserving functorG : (C, J) ⥤ (D, K).category_theory.sites.pushforward: the induced functorSheaf J A ⥤ Sheaf K Afor a cover-preserving and compatible-preserving functorG : (C, J) ⥤ (D, K).category_theory.sites.pushforward: the induced functorSheaf J A ⥤ Sheaf K Afor a cover-preserving and compatible-preserving functorG : (C, J) ⥤ (D, K).
Main results #
category_theory.sites.whiskering_left_is_sheaf_of_cover_preserving: IfG : C ⥤ Dis cover-preserving and compatible-preserving, thenG ⋙ -(uᵖ) as a functor(Dᵒᵖ ⥤ A) ⥤ (Cᵒᵖ ⥤ A)of presheaves maps sheaves to sheaves.
References #
- [Joh02]: Sketches of an Elephant, P. T. Johnstone: C2.3.
- https://stacks.math.columbia.edu/tag/00WW
- cover_preserve : ∀ {U : C} {S : category_theory.sieve U}, S ∈ ⇑J U → category_theory.sieve.functor_pushforward G S ∈ ⇑K (G.obj U)
A functor G : (C, J) ⥤ (D, K) between sites is cover-preserving
if for all covering sieves R in C, R.pushforward_functor G is a covering sieve in D.
The identity functor on a site is cover-preserving.
The composition of two cover-preserving functors is cover-preserving.
- compatible : ∀ (ℱ : category_theory.SheafOfTypes K) {Z : C} {T : category_theory.presieve Z} {x : category_theory.presieve.family_of_elements (G.op ⋙ ℱ.val) T}, x.compatible → ∀ {Y₁ Y₂ : C} {X : D} (f₁ : X ⟶ G.obj Y₁) (f₂ : X ⟶ G.obj Y₂) {g₁ : Y₁ ⟶ Z} {g₂ : Y₂ ⟶ Z} (hg₁ : T g₁) (hg₂ : T g₂), f₁ ≫ G.map g₁ = f₂ ≫ G.map g₂ → ℱ.val.map f₁.op (x g₁ hg₁) = ℱ.val.map f₂.op (x g₂ hg₂)
A functor G : (C, J) ⥤ (D, K) between sites is called compatible preserving if for each
compatible family of elements at C and valued in G.op ⋙ ℱ, and each commuting diagram
f₁ ≫ G.map g₁ = f₂ ≫ G.map g₂, x g₁ and x g₂ coincide when restricted via fᵢ.
This is actually stronger than merely preserving compatible families because of the definition of
functor_pushforward used.
compatible_preserving functors indeed preserve compatible families.
If G is cover-preserving and compatible-preserving,
then G.op ⋙ _ pulls sheaves back to sheaves.
This result is basically https://stacks.math.columbia.edu/tag/00WW.
The pullback of a sheaf along a cover-preserving and compatible-preserving functor.
The induced functor from Sheaf K A ⥤ Sheaf J A given by G.op ⋙ _
if G is cover-preserving and compatible-preserving.
Equations
- category_theory.sites.pullback A hG₁ hG₂ = {obj := λ (ℱ : category_theory.Sheaf K A), category_theory.pullback_sheaf hG₁ hG₂ ℱ, map := λ (_x _x_1 : category_theory.Sheaf K A) (f : _x ⟶ _x_1), {val := ((category_theory.whiskering_left Cᵒᵖ Dᵒᵖ A).obj G.op).map f.val}, map_id' := _, map_comp' := _}
Instances for category_theory.sites.pullback
The pushforward functor Sheaf J A ⥤ Sheaf K A associated to a functor G : C ⥤ D in the
same direction as G.
Equations
Instances for category_theory.sites.pushforward
The pushforward functor is left adjoint to the pullback functor.
Equations
- category_theory.sites.pullback_pushforward_adjunction A J K hG₁ hG₂ = category_theory.adjunction.restrict_fully_faithful (category_theory.Sheaf_to_presheaf J A) (𝟭 (category_theory.Sheaf K A)) ((category_theory.Lan.adjunction A G.op).comp (category_theory.sheafification_adjunction K A)) (category_theory.nat_iso.of_components (λ (_x : category_theory.Sheaf J A), category_theory.iso.refl ((category_theory.Sheaf_to_presheaf J A ⋙ category_theory.Lan G.op ⋙ category_theory.presheaf_to_Sheaf K A).obj _x)) _) (category_theory.nat_iso.of_components (λ (_x : category_theory.Sheaf K A), category_theory.iso.refl ((𝟭 (category_theory.Sheaf K A) ⋙ category_theory.Sheaf_to_presheaf K A ⋙ (category_theory.whiskering_left Cᵒᵖ Dᵒᵖ A).obj G.op).obj _x)) _)