75.10 Mayer-Vietoris to 75.14 Approximation by perfect…

Section75.10 Mayer-Vietoris#

Section 75.10 of the Stacks Project, Tag 08GS. 10 tags here are carried by 57 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.

Tag 08GT, an equation

Tag 08GT in the Stacks Project.

AlgebraicGeometry.Space.etaleModulePullbackStalkIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/RestrictionStalk.lean, line 137. The attribute's comment: “the stalks of an étale restriction”.

Stacks 08GT in its restriction reading. The stalk at a geometric point ū of U of the étale restriction of an 𝒪_X-module along an étale j : U ⟶ X is the stalk of that module at the image point x̄ = j ∘ ū, naturally in the module.

Restriction reindexes sections along postcomposition of charts with j, and postcomposition is initial on small étale neighbourhoods, so the comparison is the germ map.

def etaleModulePullbackStalkIso (j : U ⟶ X) (hj : IsEtale B S hS j.hom)
    (y : GeometricPoint B S hS U.1) :
    etaleModulePullback.{u, m} B S hS j hj ⋙
        moduleUnderlyingPresheaf.{u, m} B S hS U.1 U.2 ⋙ stalkSetFunctor y ≅
      moduleUnderlyingPresheaf.{u, m} B S hS X.1 X.2 ⋙
        stalkSetFunctor (geometricPointMap j.hom y)

AlgebraicGeometry.Space.etaleModulePullbackStalkIso_hom_app_moduleGerm, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/RestrictionStalk.lean, line 160. The attribute's comment: “the étale restriction comparison on germs”.

The comparison of Stacks 08GT for étale restriction is the germ map: it carries the germ at ū of a section over a chart of U to the germ at x̄ of the same section, read over the composite chart of X.

theorem etaleModulePullbackStalkIso_hom_app_moduleGerm (j : U ⟶ X)
    (hj : IsEtale B S hS j.hom) (y : GeometricPoint B S hS U.1)
    (M : Modules.{u, m} B S hS X.1 X.2) (W : SmallEtaleNeighborhood y)
    (a : ((etaleModulePullback.{u, m} B S hS j hj).obj M).val.obj (Opposite.op W.chart)) :
    (etaleModulePullbackStalkIso.{u, m} B S hS j hj y).hom.app M
        (moduleGerm.{u, m} B S hS U.1 U.2
          ((etaleModulePullback.{u, m} B S hS j hj).obj M) W a) =
      moduleGerm.{u, m} B S hS X.1 X.2 M
        ((SmallEtaleNeighborhood.postcomp B S hS j hj y).obj W) a

AlgebraicGeometry.Space.modulePullbackStalkIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/RestrictionStalk.lean, line 181.

Stacks' Equation 08GT. Let j : U ⟶ X be an étale morphism of algebraic spaces over S, let F be an 𝒪_X-module and let ū be a geometric point of U with image x̄ in X. Then the stalk of the restriction F|_U = j^*F at ū is the stalk of F at x̄, naturally in F:

(F|_U)_ū = F_x̄.

The pullback of modules is étale restriction by clause (2) of Stacks 03LV, and the stalks of an étale restriction are AlgebraicGeometry.Space.etaleModulePullbackStalkIso.

def modulePullbackStalkIso (j : U ⟶ X) (hj : IsEtale B S hS j.hom)
    (y : GeometricPoint B S hS U.1) :
    modulePullback B S hS j ⋙
        moduleUnderlyingPresheaf.{u, u} B S hS U.1 U.2 ⋙ stalkSetFunctor y ≅
      moduleUnderlyingPresheaf.{u, u} B S hS X.1 X.2 ⋙
        stalkSetFunctor (geometricPointMap j.hom y)

AlgebraicGeometry.Space.modulePullbackStalkIso_hom_app_moduleGerm, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/RestrictionStalk.lean, line 196. The attribute's comment: “the comparison on germs”.

Stacks 08GT, canonicity. The comparison (F|_U)_ū = F_x̄ sends the germ at ū of a section of j^*F over a chart of U to the germ at x̄ of its image under the identification of Stacks 03LV of the pullback with étale restriction. So it is the canonical identification and not merely some natural isomorphism of the two stalk functors.

theorem modulePullbackStalkIso_hom_app_moduleGerm (j : U ⟶ X) (hj : IsEtale B S hS j.hom)
    (y : GeometricPoint B S hS U.1) (M : Modules.{u, u} B S hS X.1 X.2)
    (W : SmallEtaleNeighborhood y)
    (a : ((modulePullback B S hS j).obj M).val.obj (Opposite.op W.chart)) :
    (modulePullbackStalkIso B S hS j hj y).hom.app M
        (moduleGerm.{u, u} B S hS U.1 U.2 ((modulePullback B S hS j).obj M) W a) =
      moduleGerm.{u, u} B S hS X.1 X.2 M
        ((SmallEtaleNeighborhood.postcomp B S hS j hj y).obj W)
        (((modulePullbackIsoEtaleModulePullback B S hS j hj).hom.app M).val.app
          (Opposite.op W.chart) a)

AlgebraicGeometry.Space.modulePullbackStalkIso_germ_add, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/RestrictionStalk.lean, line 212. The attribute's comment: “additivity on germs”.

Stacks 08GT is an identification of modules and not merely of sets: on germs the comparison respects addition, the sum being taken in the sections of j^*F over a chart of U on one side and in the sections of F over the composite chart of X on the other.

theorem modulePullbackStalkIso_germ_add (j : U ⟶ X) (hj : IsEtale B S hS j.hom)
    (y : GeometricPoint B S hS U.1) (M : Modules.{u, u} B S hS X.1 X.2)
    (W : SmallEtaleNeighborhood y)
    (a b : ((modulePullback B S hS j).obj M).val.obj (Opposite.op W.chart)) :
    (modulePullbackStalkIso B S hS j hj y).hom.app M
        (moduleGerm.{u, u} B S hS U.1 U.2 ((modulePullback B S hS j).obj M) W (a + b)) =
      moduleGerm.{u, u} B S hS X.1 X.2 M
        ((SmallEtaleNeighborhood.postcomp B S hS j hj y).obj W)
        (((modulePullbackIsoEtaleModulePullback B S hS j hj).hom.app M).val.app
            (Opposite.op W.chart) a +
          ((modulePullbackIsoEtaleModulePullback B S hS j hj).hom.app M).val.app
            (Opposite.op W.chart) b)

AlgebraicGeometry.Space.modulePullbackStalkIso_germ_smul, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/RestrictionStalk.lean, line 232. The attribute's comment: “action on germs”.

Stacks 08GT is an identification of modules and not merely of abelian groups: on germs the comparison respects the action of the structure sheaf. The scalar is a section of 𝒪_U over a chart of U, which is a section of 𝒪_X over the composite chart of X — étale postcomposition leaves the underlying scheme of a chart, hence its regular functions, unchanged.

theorem modulePullbackStalkIso_germ_smul (j : U ⟶ X) (hj : IsEtale B S hS j.hom)
    (y : GeometricPoint B S hS U.1) (M : Modules.{u, u} B S hS X.1 X.2)
    (W : SmallEtaleNeighborhood y)
    (r : ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS U.1 U.2).O)).obj.obj
      (Opposite.op W.chart))
    (a : ((modulePullback B S hS j).obj M).val.obj (Opposite.op W.chart)) :
    (modulePullbackStalkIso B S hS j hj y).hom.app M
        (moduleGerm.{u, u} B S hS U.1 U.2 ((modulePullback B S hS j).obj M) W (r • a)) =
      moduleGerm.{u, u} B S hS X.1 X.2 M
        ((SmallEtaleNeighborhood.postcomp B S hS j hj y).obj W)
        (r • ((modulePullbackIsoEtaleModulePullback B S hS j hj).hom.app M).val.app
          (Opposite.op W.chart) a)

AlgebraicGeometry.Space.restrictionPresheafFiberIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleRestrictionFiber.lean, line 155. The attribute's comment: “the fibre of a restriction at a lift”.

For the fibre functors of points of the small étale site, the fibre at the point attached to a lift t of x̄ of the restriction along f of a presheaf on the small étale site of Y is the fibre of that presheaf at x̄, naturally in the presheaf.

def restrictionPresheafFiberIso (t : GeometricPointLift B S hS f.hom x) :
    (Functor.whiskeringLeft (SmallEtale B S hS X.1)ᵒᵖ (SmallEtale B S hS Y.1)ᵒᵖ A).obj
          (smallEtalePostcomp B S hS f hf).op ⋙
        (liftSitePoint B S hS f t).presheafFiber ≅
      (etaleSitePoint B S hS Y.1 x Y.2).presheafFiber

AlgebraicGeometry.Space.restrictionPresheafFiberIso_toPresheafFiber, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleRestrictionFiber.lean, line 168. The attribute's comment: “the comparison on germs”.

On germs, AlgebraicGeometry.Space.restrictionPresheafFiberIso carries the germ at the lift t of a section over an étale chart W of X to the germ at x̄ of the same section, read over the chart W of Y and at the induced lift.

theorem restrictionPresheafFiberIso_toPresheafFiber (t : GeometricPointLift B S hS f.hom x)
    (P : (SmallEtale B S hS Y.1)ᵒᵖ ⥤ A) (W : SmallEtale B S hS X.1)
    (w : (liftSitePoint B S hS f t).fiber.obj W) :
    (liftSitePoint B S hS f t).toPresheafFiber W w
          ((smallEtalePostcomp B S hS f hf).op ⋙ P) ≫
        (restrictionPresheafFiberIso B S hS f hf t).hom.app P =
      (etaleSitePoint B S hS Y.1 x Y.2).toPresheafFiber
        ((smallEtalePostcomp B S hS f hf).obj W) (pushLift B S hS f hf W t w) P

AlgebraicGeometry.Space.restrictionSheafFiberIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleRestrictionFiber.lean, line 186. The attribute's comment: “the fibre of a restriction of abelian sheaves at a lift”.

For abelian sheaves, the fibre at the point attached to a lift t of x̄ of the restriction along f of an abelian sheaf on the small étale site of Y is its fibre at x̄, naturally in the sheaf.

def restrictionSheafFiberIso (t : GeometricPointLift B S hS f.hom x) :
    abelianEtaleRestriction B S hS f hf ⋙ (liftSitePoint B S hS f t).sheafFiber ≅
      (etaleSitePoint B S hS Y.1 x Y.2).sheafFiber (A := AddCommGrpCat.{u})

AlgebraicGeometry.Space.restrictionSheafFiberIso_toPresheafFiber, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleRestrictionFiber.lean, line 197. The attribute's comment: “the comparison of abelian sheaf fibres on germs”.

On germs, AlgebraicGeometry.Space.restrictionSheafFiberIso carries the germ at the lift t of a section over an étale chart W of X to the germ at x̄ of the same section over W read as a chart of Y, at the induced lift.

theorem restrictionSheafFiberIso_toPresheafFiber (t : GeometricPointLift B S hS f.hom x)
    (G : Sheaf (SmallEtale.topology B S hS Y.1) AddCommGrpCat.{u})
    (W : SmallEtale B S hS X.1) (w : (liftSitePoint B S hS f t).fiber.obj W) :
    (liftSitePoint B S hS f t).toPresheafFiber W w
          ((abelianEtaleRestriction B S hS f hf).obj G).obj ≫
        (restrictionSheafFiberIso B S hS f hf t).hom.app G =
      (etaleSitePoint B S hS Y.1 x Y.2).toPresheafFiber
        ((smallEtalePostcomp B S hS f hf).obj W) (pushLift B S hS f hf W t w) G.obj
Tag 08GU, an equation

Tag 08GU in the Stacks Project.

AlgebraicGeometry.Space.ExtensionByZeroStalk.stalkExtensionByZeroIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ExtensionByZeroStalk.lean, line 175. References: SGA 4 IV (11.3.5), “special case”.

Stacks 08GU. Equation 75.10.0.2: for an étale morphism j_U : U ⟶ X of algebraic spaces, a sheaf of 𝒪_U-modules 𝒢 and a geometric point x̄ : Spec(k) ⟶ X, the stalk of the extension by zero j_{U!}𝒢 at x̄ is the direct sum of the stalks of 𝒢 at the geometric points ū : Spec(k) ⟶ U with j_U ∘ ū = x̄.

def stalkExtensionByZeroIso (V : (spacesEtaleRingedSite B S hS X).C) (x : GeometricPoint B S hS X.1)
    (G : SheafOfModules.{u + 1}
      ((Stacks.SheafOfModules.Tensor.ringSheaf (spacesEtaleRingedSite B S hS X).O).over V)) :
    moduleStalk x ((extensionByZero V).obj G) ≅ ∐ fun v : Lifts V x => liftedStalk v G

AlgebraicGeometry.Space.ExtensionByZeroStalk.isZero_moduleStalk_extensionByZero, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ExtensionByZeroStalk.lean, line 200. The attribute's comment: “vanishing away from the image”.

Stacks 08GU. At a geometric point of X admitting no lift to U the stalk of j_{U!}𝒢 vanishes.

theorem isZero_moduleStalk_extensionByZero (V : (spacesEtaleRingedSite B S hS X).C)
    (x : GeometricPoint B S hS X.1)
    (G : SheafOfModules.{u + 1}
      ((Stacks.SheafOfModules.Tensor.ringSheaf (spacesEtaleRingedSite B S hS X).O).over V))
    [IsEmpty (Lifts V x)] :
    IsZero (moduleStalk x ((extensionByZero V).obj G))

AlgebraicGeometry.Space.ExtensionByZeroStalk.liftsEquivGeometricPoints, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ExtensionByZeroStalk.lean, line 234. The attribute's comment: “the index set”.

Stacks 08GU. The index set of Equation 08GU is the set of geometric points of U lying over the given geometric point of X.

def liftsEquivGeometricPoints (V : (spacesEtaleRingedSite B S hS X).C)
    (x : GeometricPoint B S hS X.1) :
    Lifts V x ≃
      {y : GeometricPoint B S hS ((SpacesEtale.toSpaces B S hS X).obj V).1 //
        geometricPointMap ((SpacesEtale.inclusion B S hS X).obj V).hom.hom y = x}

AlgebraicGeometry.Space.EtaleShriekStalk.liftedStalkι_stalkExtensionByZeroIso_inv_counit, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleAbelianExtensionByZeroCounit.lean, line 166. The attribute's comment: “the counit on one summand of the stalk”.

Under the decomposition of the stalk of f_!(G|_X) as the direct sum over the lifts of x̄ of the stalks of G|_X, the stalk of the counit f_!(G|_X) ⟶ G restricts on the summand of a lift t to the identification of the stalk of G|_X at t with the stalk of G at x̄.

theorem liftedStalkι_stalkExtensionByZeroIso_inv_counit
    (t : GeometricPointLift B S hS f.hom x) :
    liftedStalkι B S hS f x ((abelianEtaleRestriction B S hS f hf).obj G) t ≫
        (stalkExtensionByZeroIso B S hS f hf x
            ((abelianEtaleRestriction B S hS f hf).obj G)).inv ≫
          (etaleSitePoint B S hS Y.1 x Y.2).sheafFiber.map
            ((abelianEtaleExtensionByZeroAdjunction B S hS f hf).counit.app G) =
      (restrictionSheafFiberIso B S hS f hf t).hom.app G

AlgebraicGeometry.Space.EtaleShriekStalk.stalkExtensionByZeroIso_inv_counit, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleAbelianExtensionByZeroCounit.lean, line 182. The attribute's comment: “the counit on stalks”.

The stalk of the counit of extension by zero is the fold map: under the decomposition of the stalk of f_!(G|_X) as the direct sum over the lifts t of x̄ of the stalks of G|_X at those lifts, and the identification of each of those with the stalk of G at x̄, the counit f_!(G|_X) ⟶ G becomes the map out of the direct sum whose component at every lift is that identification.

theorem stalkExtensionByZeroIso_inv_counit :
    (stalkExtensionByZeroIso B S hS f hf x
          ((abelianEtaleRestriction B S hS f hf).obj G)).inv ≫
        (etaleSitePoint B S hS Y.1 x Y.2).sheafFiber.map
          ((abelianEtaleExtensionByZeroAdjunction B S hS f hf).counit.app G) =
      Sigma.desc fun t : GeometricPointLift B S hS f.hom x =>
        (restrictionSheafFiberIso B S hS f hf t).hom.app G

AlgebraicGeometry.Space.EtaleShriekStalk.mono_sheafFiber_extensionByZero_map, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleAbelianExtensionByZeroExact.lean, line 56. The attribute's comment: “the stalk of an extension by zero of a monomorphism”.

If a morphism of abelian sheaves on X has monomorphic stalks at every lift of a geometric point x of Y, then the stalk at x of its extension by zero is a monomorphism.

theorem mono_sheafFiber_extensionByZero_map
    {G H : Sheaf (SmallEtale.topology B S hS X.1) AddCommGrpCat.{u}} (ψ : G ⟶ H)
    (hψ : ∀ t : GeometricPointLift B S hS f.hom x,
      Mono ((liftSitePoint B S hS f t).sheafFiber.map ψ)) :
    Mono ((etaleSitePoint B S hS Y.1 x Y.2).sheafFiber.map
      ((abelianEtaleExtensionByZero B S hS f hf).map ψ))

AlgebraicGeometry.Space.EtaleShriekStalk.stalkExtensionByZeroIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleAbelianExtensionByZeroStalk.lean, line 406. The attribute's comment: “the stalk of an extension by zero of abelian sheaves”.

The stalk at a geometric point x̄ of Y of the extension by zero of an abelian étale sheaf on X is the direct sum of its stalks at the lifts of x̄ to X.

def stalkExtensionByZeroIso
    (F : Sheaf (SmallEtale.topology B S hS X.1) AddCommGrpCat.{u}) :
    (etaleSitePoint B S hS Y.1 x Y.2).sheafFiber.obj
        ((abelianEtaleExtensionByZero B S hS f hf).obj F) ≅
      (∐ fun t : GeometricPointLift B S hS f.hom x =>
        (liftSitePoint B S hS f t).sheafFiber.obj F)

AlgebraicGeometry.Space.EtaleShriekStalk.stalkExtensionByZeroIso_germ, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleAbelianExtensionByZeroStalk.lean, line 418. The attribute's comment: “the germ computation”.

The stalk isomorphism sends the germ of a section over an étale chart W of X, viewed in the extension by zero through the adjunction unit, to its germ at the induced lift, in the corresponding summand.

theorem stalkExtensionByZeroIso_germ
    (F : Sheaf (SmallEtale.topology B S hS X.1) AddCommGrpCat.{u})
    (W : SmallEtale B S hS X.1) (t : GeometricPointLift B S hS f.hom x)
    (w : (liftSitePoint B S hS f t).fiber.obj W) :
    extensionByZeroUnitApp B S hS f hf F W ≫
        (etaleSitePoint B S hS Y.1 x Y.2).toPresheafFiber
          ((smallEtalePostcomp B S hS f hf).obj W) (pushLift B S hS f hf W t w)
          ((abelianEtaleExtensionByZero B S hS f hf).obj F).obj ≫
        (stalkExtensionByZeroIso B S hS f hf x F).hom =
      liftedGerm B S hS f x F t W w ≫ liftedStalkι B S hS f x F t

AlgebraicGeometry.Space.EtaleShriekStalk.stalkExtensionByZeroIso_naturality, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleAbelianExtensionByZeroStalk.lean, line 441. The attribute's comment: “naturality”.

The stalk decomposition stalkExtensionByZeroIso is natural in the abelian sheaf.

theorem stalkExtensionByZeroIso_naturality
    {F G : Sheaf (SmallEtale.topology B S hS X.1) AddCommGrpCat.{u}} (a : F ⟶ G) :
    (etaleSitePoint B S hS Y.1 x Y.2).sheafFiber.map
          ((abelianEtaleExtensionByZero B S hS f hf).map a) ≫
        (stalkExtensionByZeroIso B S hS f hf x G).hom =
      (stalkExtensionByZeroIso B S hS f hf x F).hom ≫
        (stalkFamily B S hS f x ⋙
          Sigma.functor (GeometricPointLift B S hS f.hom x)).map a

AlgebraicGeometry.Space.EtaleShriekStalk.isZero_stalkExtensionByZero_of_isEmpty, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleAbelianExtensionByZeroStalk.lean, line 461. The attribute's comment: “vanishing away from the image”.

The extension by zero has zero stalk at every geometric point of Y with no lift to X.

theorem isZero_stalkExtensionByZero_of_isEmpty
    (F : Sheaf (SmallEtale.topology B S hS X.1) AddCommGrpCat.{u})
    [IsEmpty (GeometricPointLift B S hS f.hom x)] :
    IsZero ((etaleSitePoint B S hS Y.1 x Y.2).sheafFiber.obj
      ((abelianEtaleExtensionByZero B S hS f hf).obj F))

AlgebraicGeometry.Space.EtaleShriekStalk.isIso_sheafFiber_extensionByZero_map, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleAbelianExtensionByZeroStalkMap.lean, line 61. The attribute's comment: “the stalk of an extension by zero of a map”.

The stalk of an extension by zero of a map of abelian sheaves is the direct sum of the stalks of that map at the lifts, hence invertible as soon as all of those are.

theorem isIso_sheafFiber_extensionByZero_map
    {G H : Sheaf (SmallEtale.topology B S hS X.1) AddCommGrpCat.{u}} (ψ : G ⟶ H)
    (hψ : ∀ t : GeometricPointLift B S hS f.hom x,
      IsIso ((liftSitePoint B S hS f t).sheafFiber.map ψ)) :
    IsIso ((etaleSitePoint B S hS Y.1 x Y.2).sheafFiber.map
      ((abelianEtaleExtensionByZero B S hS f hf).map ψ))

AlgebraicGeometry.Space.isIso_sheafFiber_toSheaf_etaleModuleShriek_map_of_lifts, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleModuleShriekStalkMap.lean, line 39. The attribute's comment: “the stalk of an extension by zero of a map of modules”.

The stalk of the extension by zero of a map of modules is invertible as soon as the stalks of that map at all the lifts of the point are.

theorem isIso_sheafFiber_toSheaf_etaleModuleShriek_map_of_lifts
    {M N : Modules.{u, u} B S hS X.1 X.2} (α : M ⟶ N)
    (hα : ∀ t : GeometricPointLift B S hS f.hom x,
      IsIso ((liftSitePoint B S hS f t).sheafFiber.map
        ((SheafOfModules.toSheaf (etaleRingSheaf B S hS X)).map α))) :
    IsIso ((etaleSitePoint B S hS Y.1 x Y.2).sheafFiber.map
      ((SheafOfModules.toSheaf (etaleRingSheaf B S hS Y)).map
        ((etaleModuleLowerShriek B S hS f hf).map α)))

AlgebraicGeometry.Space.cohomologySupportedOn_mapDerivedCategory_etaleModuleLowerShriek, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SmallEtaleModuleShriekSupport.lean, line 156. The attribute's comment: “the support of an extension by zero of an object of the derived category”.

If an object K of D(𝒪_X) is supported on |f|⁻¹T in the sense of Stacks 08GF, then its extension by zero along the étale morphism f is supported on T.

theorem cohomologySupportedOn_mapDerivedCategory_etaleModuleLowerShriek
    (K : DerivedCategory (Modules.{u, u} B S hS X.1 X.2)) (T : Set (points B S hS Y.1))
    (hK : CohomologySupportedOn B S hS X.1 X.2 (pointsMap B S hS X.1 f.hom ⁻¹' T) K) :
    CohomologySupportedOn B S hS Y.1 Y.2 T
      ((etaleModuleLowerShriek B S hS f hf).mapDerivedCategory.obj K)
Tag 08GV, a lemma

Tag 08GV in the Stacks Project.

AlgebraicGeometry.Space.mayerVietoris_shortExact_and_mem_distTriang, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisTag.lean, line 195.

Stacks 08GV. Let (U ⊆ X, j_V : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and let P = U ×_X V. Write (-)|_Y for restriction of modules along an étale morphism j_Y : Y ⟶ X and j_{Y!} for its extension by zero, AlgebraicGeometry.Space.etaleModuleLowerShriek, with counit j_{Y!}(F|_Y) ⟶ F, and let a and b be the two comparisons out of the intersection attached to its two factorizations. Then

  1. for every sheaf of 𝒪_X-modules F the sequence

0 ⟶ j_{P!}F|_P ⟶ j_{U!}F|_U ⊕ j_{V!}F|_V ⟶ F ⟶ 0,

with maps (a, -b) and the sum of the two counits, is short exact, and 2. every object E of the unbounded derived category D(𝒪_X) sits in a distinguished triangle

j_{P!}E|_P ⟶ j_{U!}E|_U ⊕ j_{V!}E|_V ⟶ E ⟶ (j_{P!}E|_P)[1],

whose first two maps are the derived transformations of (a, -b) and of the two counits.

The exactness of the three extensions by zero, Stacks 03DJ, is the theorem AlgebraicGeometry.Space.preservesFiniteLimits_etaleModuleLowerShriek together with AlgebraicGeometry.Space.etaleModuleLowerShriek_additive and AlgebraicGeometry.Space.preservesFiniteColimits_etaleModuleLowerShriek, which is what makes their derived functors available; it is proved, not assumed.

theorem mayerVietoris_shortExact_and_mem_distTriang :
    (∀ F : Modules.{u, u} B S hS W.1 W.2,
        (ShortComplex.mayerVietoris
          ((edsShriekOpenComparison B S hS hsq
              (etaleModuleLowerShriekAdjunction B S hS (edsOpenHom B S hS hsq)
                (isEtale_edsOpenHom B S hS hsq))
              (etaleModuleLowerShriekAdjunction B S hS (edsInterHom B S hS hsq)
                (isEtale_edsInterHom B S hS hsq))).app F)
          ((edsShriekEtaleComparison B S hS hsq
              (etaleModuleLowerShriekAdjunction B S hS (edsEtaleHom B S hS hsq)
                (isEtale_edsEtaleHom B S hS hsq))
              (etaleModuleLowerShriekAdjunction B S hS (edsInterHom B S hS hsq)
                (isEtale_edsInterHom B S hS hsq))).app F)
          ((etaleModuleLowerShriekAdjunction B S hS (edsOpenHom B S hS hsq)
            (isEtale_edsOpenHom B S hS hsq)).counit.app F)
          ((etaleModuleLowerShriekAdjunction B S hS (edsEtaleHom B S hS hsq)
            (isEtale_edsEtaleHom B S hS hsq)).counit.app F)
          (zero_edsShriekMayerVietoris B S hS hsq
            (etaleModuleLowerShriekAdjunction B S hS (edsOpenHom B S hS hsq)
              (isEtale_edsOpenHom B S hS hsq))
            (etaleModuleLowerShriekAdjunction B S hS (edsEtaleHom B S hS hsq)
              (isEtale_edsEtaleHom B S hS hsq))
            (etaleModuleLowerShriekAdjunction B S hS (edsInterHom B S hS hsq)
              (isEtale_edsInterHom B S hS hsq)) F)).ShortExact) ∧
      ∀ E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2),
        ∃ δ, Triangle.mk
            (biprod.lift
              ((NatTrans.mapDerivedCategory
                (edsShriekOpenComparison B S hS hsq
                  (etaleModuleLowerShriekAdjunction B S hS (edsOpenHom B S hS hsq)
                    (isEtale_edsOpenHom B S hS hsq))
                  (etaleModuleLowerShriekAdjunction B S hS (edsInterHom B S hS hsq)
                    (isEtale_edsInterHom B S hS hsq)))).app E)
              (-((NatTrans.mapDerivedCategory
                (edsShriekEtaleComparison B S hS hsq
                  (etaleModuleLowerShriekAdjunction B S hS (edsEtaleHom B S hS hsq)
                    (isEtale_edsEtaleHom B S hS hsq))
                  (etaleModuleLowerShriekAdjunction B S hS (edsInterHom B S hS hsq)
                    (isEtale_edsInterHom B S hS hsq)))).app E)))
            (biprod.desc
                ((NatTrans.mapDerivedCategory
                  (etaleModuleLowerShriekAdjunction B S hS (edsOpenHom B S hS hsq)
                    (isEtale_edsOpenHom B S hS hsq)).counit).app E)
                ((NatTrans.mapDerivedCategory
                  (etaleModuleLowerShriekAdjunction B S hS (edsEtaleHom B S hS hsq)
                    (isEtale_edsEtaleHom B S hS hsq)).counit).app E) ≫
              (Functor.mapDerivedCategoryIdIso
                (Modules.{u, u} B S hS W.1 W.2)).hom.app E) δ ∈
          distTriang (DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
Tag 08GW, a lemma

Tag 08GW in the Stacks Project.

AlgebraicGeometry.Space.shortExact_edsRestrictPushMayerVietorisLowerShriek, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisPushforwardTag.lean, line 598. The attribute's comment: “part (1)”.

Stacks 08GW part (1), with nothing assumed. Let (U ⊆ X, j_V : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S, let P = U ×_X V, write (-)|_Y for restriction of modules along j_Y : Y ⟶ X and j_{Y,*} for the direct image of Stacks 03LU. Then for every sheaf of 𝒪_X-modules F the sequence

0 ⟶ F ⟶ j_{U,*}F|_U ⊕ j_{V,*}F|_V ⟶ j_{P,*}F|_P ⟶ 0

is short exact. Its first map is the pair of canonical units F ⟶ j_{Y,*}F|_Y of the adjunctions (-)|_Y ⊣ j_{Y,*} and its second is the difference of the conjugates, under the adjunctions j_{Y!}((-)|_Y) ⊣ j_{Y,*}((-)|_Y), of the two extension-by-zero comparisons AlgebraicGeometry.Space.edsShriekOpenComparison and AlgebraicGeometry.Space.edsShriekEtaleComparison of Stacks 08GV.

This is AlgebraicGeometry.Space.shortExact_edsRestrictPushMayerVietorisComparison at the extension by zero the library constructs, AlgebraicGeometry.Space.etaleModuleLowerShriek with its adjunction AlgebraicGeometry.Space.etaleModuleLowerShriekAdjunction, so nothing is a parameter beyond the square itself: the exactness of extension by zero (Stacks 03DJ) is the theorem AlgebraicGeometry.Space.preservesFiniteLimits_etaleModuleLowerShriek with its two companions, the two sheafification hypotheses of the ambient site are the theorems AlgebraicGeometry.Space.smallEtaleRingedSite_hasSheafify_addCommGrpCat and AlgebraicGeometry.Space.smallEtaleRingedSite_wEqualsLocallyBijective_addCommGrpCat, part (1) of Stacks 08GV is AlgebraicGeometry.Space.shortExact_edsShriekMayerVietoris, and the surjectivity on the right is AlgebraicGeometry.Space.epi_edsRestrictPushMayerVietorisComparison.

theorem shortExact_edsRestrictPushMayerVietorisLowerShriek
    (F : Modules.{u, u} B S hS W.1 W.2) :
    (ShortComplex.mk
      (biprod.lift ((edsAdjOpen B S hS hsq).unit.app F)
        ((edsAdjEtale B S hS hsq).unit.app F))
      (biprod.desc ((conjugateEquiv ((edsAdjOpen B S hS hsq).comp
            (edsLowerShriekAdjOpen B S hS hsq))
          ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
          (edsShriekOpenComparison B S hS hsq (edsLowerShriekAdjOpen B S hS hsq)
            (edsLowerShriekAdjInter B S hS hsq))).app F)
        (-((conjugateEquiv ((edsAdjEtale B S hS hsq).comp
            (edsLowerShriekAdjEtale B S hS hsq))
          ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
          (edsShriekEtaleComparison B S hS hsq (edsLowerShriekAdjEtale B S hS hsq)
            (edsLowerShriekAdjInter B S hS hsq))).app F)))
      (zero_edsRestrictPushMayerVietorisLowerShriek B S hS hsq F)).ShortExact

AlgebraicGeometry.Space.exists_mem_distTriang_edsDerivedRestrictPushMayerVietorisLowerShriek, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisPushforwardTag.lean, line 704. The attribute's comment: “part (2)”.

Stacks 08GW part (2), with nothing assumed and with the canonical triangle. Let (U ⊆ X, j_V : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S, let P = U ×_X V and write Rj_{Y,*}((-)|_Y) for the total right derived functor of j_{Y,*}((-)|_Y). Then every object E of the unbounded derived category D(𝒪_X) sits in a distinguished triangle

E ⟶ Rj_{U,*}E|_U ⊕ Rj_{V,*}E|_V ⟶ Rj_{P,*}E|_P ⟶ E[1].

Its maps are the canonical ones, not existentially quantified. The first is the pair of derived units CategoryTheory.PushforwardMayerVietoris.derivedUnitOfNatTrans of the units F ⟶ j_{Y,*}F|_Y of the adjunctions (-)|_Y ⊣ j_{Y,*} of Stacks 03LU, and the second is the difference of the derived transformations CategoryTheory.Functor.rightDerivedNatTrans of the two comparisons of part (1) — the conjugates, under j_{Y!}((-)|_Y) ⊣ j_{Y,*}((-)|_Y), of the extension-by-zero comparisons of Stacks 08GV. Only the connecting map Rj_{P,*}E|_P ⟶ E[1] is existentially quantified, the library attaching no canonical such map to an object of D(𝒪_X); the source likewise asserts only that the triangle is distinguished, and δ is existential in Stacks 08GV part (2) as well.

Nothing is a parameter beyond the square: part (1) is the unqualified AlgebraicGeometry.Space.shortExact_edsRestrictPushMayerVietorisLowerShriek, the K-injective resolutions are AlgebraicGeometry.Space.exists_quasiIso_isKInjective_modules (Stacks 079P), and the three derived functors are the chosen ones, which exist by AlgebraicGeometry.Space.hasRightDerivedFunctor_mapHomotopyCategory_modules.

theorem exists_mem_distTriang_edsDerivedRestrictPushMayerVietorisLowerShriek
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2)) :
    ∃ δ, Triangle.mk
        (biprod.lift
          ((derivedUnitOfNatTrans (edsAdjOpen B S hS hsq).unit
            (edsDerivedRestrictPushOpen B S hS hsq)
            (edsTotalRightDerivedUnitOpen B S hS hsq)).app E)
          ((derivedUnitOfNatTrans (edsAdjEtale B S hS hsq).unit
            (edsDerivedRestrictPushEtale B S hS hsq)
            (edsTotalRightDerivedUnitEtale B S hS hsq)).app E))
        (biprod.desc
          ((Functor.rightDerivedNatTrans (edsDerivedRestrictPushOpen B S hS hsq)
            (edsDerivedRestrictPushInter B S hS hsq)
            (edsTotalRightDerivedUnitOpen B S hS hsq)
            (edsTotalRightDerivedUnitInter B S hS hsq)
            (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
            (Functor.whiskerRight (NatTrans.mapHomotopyCategory
              (conjugateEquiv ((edsAdjOpen B S hS hsq).comp
                  (edsLowerShriekAdjOpen B S hS hsq))
                ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
                (edsShriekOpenComparison B S hS hsq (edsLowerShriekAdjOpen B S hS hsq)
                  (edsLowerShriekAdjInter B S hS hsq)))
              (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E)
          (-((Functor.rightDerivedNatTrans (edsDerivedRestrictPushEtale B S hS hsq)
            (edsDerivedRestrictPushInter B S hS hsq)
            (edsTotalRightDerivedUnitEtale B S hS hsq)
            (edsTotalRightDerivedUnitInter B S hS hsq)
            (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
            (Functor.whiskerRight (NatTrans.mapHomotopyCategory
              (conjugateEquiv ((edsAdjEtale B S hS hsq).comp
                  (edsLowerShriekAdjEtale B S hS hsq))
                ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
                (edsShriekEtaleComparison B S hS hsq (edsLowerShriekAdjEtale B S hS hsq)
                  (edsLowerShriekAdjInter B S hS hsq)))
              (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E))) δ ∈
      distTriang (DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
Tag 08JK, a lemma

Tag 08JK in the Stacks Project.

AlgebraicGeometry.Space.exists_mem_distTriang_edsRelativeMayerVietoris_unconditional, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisRelative.lean, line 996. The attribute's comment: “FIRST ASSERTION: for every E of D(O_X) a distinguished triangle Rf_E -> Ra_(E|_U) ⊕ Rb_(E|_V) -> Rc_(E|_{U x_X V}) -> (Rf_*E)[1] in D(O_Y), with no hypothesis beyond the square, f and the four derived functors. The SECOND ASSERTION, functoriality in E, is exists_natTrans_mem_distTriang_edsRelativeMayerVietoris_unconditional in the sibling module. Proof route and provenance are in this theorem's docstring”.

Stacks 08JK, the distinguished triangle. This declaration is the @[stacks 08JK] registration of the first of the tag's two assertions, and it takes no hypothesis.

Let f : X ⟶ Y be a morphism of algebraic spaces over a scheme S, let (U ⊆ X, j_V : V ⟶ X) be an elementary distinguished square on X, let P = U ×_X V and let a = f|_U, b = f|_V, c = f|_P be the restrictions of f to the three. Let Rf_*, Ra_*((-)|_U), Rb_*((-)|_V) and Rc_*((-)|_P) be right derived functors of f_*, a_*((-)|_U), b_*((-)|_V) and c_*((-)|_P), with their comparisons. Then every object E of D(𝒪_X) sits in a distinguished triangle

Rf_*E ⟶ Ra_*(E|_U) ⊕ Rb_*(E|_V) ⟶ Rc_*(E|_{U ×_X V}) ⟶ (Rf_*E)[1]

in D(𝒪_Y).

The conclusion is that of the untagged AlgebraicGeometry.Space.exists_mem_distTriang_edsRelativeMayerVietoris verbatim, with that statement's one hypothesis discharged by a route the source does not take. The source deduces the direct-image Mayer–Vietoris sequence of Stacks 08GW part (1) at every module, and gets surjectivity on the right from the étale-local vanishing of an obstruction class. Only the sequence at an injective module is used here — the representative of E may be taken termwise injective, by Stacks 079P — and there the obstruction vanishes for a formal reason: CategoryTheory.PushforwardMayerVietoris.epi_conjugate_of_injective splits the sequence by extending a counit along the monomorphism that part (1) of Stacks 08GV provides (AlgebraicGeometry.Space.shortExact_edsShriekMayerVietoris). So nothing beyond Stacks 08GV part (1), which the library proves, and Stacks 079P is needed.

The three extensions by zero are the ones the library constructs, AlgebraicGeometry.Space.etaleModuleLowerShriek, with their adjunctions; nothing about them is assumed, and they do not appear in the statement. The five morphisms are existentially quantified at each E; the tag's second assertion, that the triangle is in addition functorial in E, is registered on AlgebraicGeometry.Space.exists_natTrans_mem_distTriang_edsRelativeMayerVietoris_ unconditional in the sibling module. Those two declarations are the only two @[stacks 08JK] registrations.

theorem exists_mem_distTriang_edsRelativeMayerVietoris_unconditional
    (RX RU RV RP : DerivedCategory (Modules.{u, u} B S hS W.1 W.2) ⥤
      DerivedCategory (Modules.{u, u} B S hS Z.1 Z.2))
    (αX : (modulePushforward B S hS f).mapHomotopyCategory (ComplexShape.up ℤ) ⋙
      DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RX)
    (αU : (etaleModulePullback.{u, u} B S hS (edsOpenHom B S hS hsq)
          (isEtale_edsOpenHom B S hS hsq) ⋙
        modulePushforward B S hS (edsOpenHom B S hS hsq ≫ f)).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RU)
    (αV : (etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
          (isEtale_edsEtaleHom B S hS hsq) ⋙
        modulePushforward B S hS (edsEtaleHom B S hS hsq ≫ f)).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RV)
    (αP : (etaleModulePullback.{u, u} B S hS (edsInterHom B S hS hsq)
          (isEtale_edsInterHom B S hS hsq) ⋙
        modulePushforward B S hS (edsInterHom B S hS hsq ≫ f)).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RP)
    (hRX : RX.IsRightDerivedFunctor αX
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRU : RU.IsRightDerivedFunctor αU
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRV : RV.IsRightDerivedFunctor αV
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRP : RP.IsRightDerivedFunctor αP
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2)) :
    ∃ (fU : RX.obj E ⟶ RU.obj E) (fV : RX.obj E ⟶ RV.obj E) (gU : RU.obj E ⟶ RP.obj E)
      (gV : RV.obj E ⟶ RP.obj E) (δ : RP.obj E ⟶ (RX.obj E)⟦(1 : ℤ)⟧),
      Triangle.mk (biprod.lift fU fV) (biprod.desc gU (-gV)) δ ∈
        distTriang (DerivedCategory (Modules.{u, u} B S hS Z.1 Z.2))

AlgebraicGeometry.Space.exists_natTrans_mem_distTriang_edsRelativeMayerVietoris_unconditional, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisRelativeFunctorial.lean, line 710. The attribute's comment: “SECOND ASSERTION: the distinguished triangle is FUNCTORIAL IN E. The five morphisms are natural transformations of the four right derived functors D(O_X) -> D(O_Y) and the triangle is distinguished at EVERY E, with no hypothesis beyond the square, f and those functors. The FIRST ASSERTION is exists_mem_distTriang_edsRelativeMayerVietoris_unconditional in the sibling module. Proof route and provenance are in this theorem's docstring”.

Stacks 08JK, the functoriality in E.

Let f : X ⟶ Y be a morphism of algebraic spaces over a scheme S, let (U ⊆ X, j_V : V ⟶ X) be an elementary distinguished square on X, let P = U ×_X V, and let Rf_*, Ra_*((-)|_U), Rb_*((-)|_V), Rc_*((-)|_P) be right derived functors of the four functors of the square, with their comparisons. Then the five morphisms of the Mayer–Vietoris triangle

Rf_*E ⟶ Ra_*(E|_U) ⊕ Rb_*(E|_V) ⟶ Rc_*(E|_{U ×_X V}) ⟶ (Rf_*E)[1]

are natural transformations of the four derived functors D(𝒪_X) ⥤ D(𝒪_Y), and the triangle is distinguished at every object E of D(𝒪_X). So a morphism φ : E ⟶ E' induces a morphism of the two triangles.

The direct-image Mayer–Vietoris sequence is used only at injective modules — the functorial resolution of Stacks 079P is termwise injective — where it is proved from part (1) of Stacks 08GV: AlgebraicGeometry.Space.shortExact_edsRestrictPushMayerVietoris_of_injective. The first assertion of Stacks 08JK is AlgebraicGeometry.Space.exists_mem_distTriang_edsRelativeMayerVietoris_unconditional.

theorem exists_natTrans_mem_distTriang_edsRelativeMayerVietoris_unconditional
    (RX RU RV RP : DerivedCategory (Modules.{u, u} B S hS W.1 W.2) ⥤
      DerivedCategory (Modules.{u, u} B S hS Z.1 Z.2))
    (αX : (modulePushforward B S hS f).mapHomotopyCategory (ComplexShape.up ℤ) ⋙
      DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RX)
    (αU : (etaleModulePullback.{u, u} B S hS (edsOpenHom B S hS hsq)
          (isEtale_edsOpenHom B S hS hsq) ⋙
        modulePushforward B S hS (edsOpenHom B S hS hsq ≫ f)).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RU)
    (αV : (etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
          (isEtale_edsEtaleHom B S hS hsq) ⋙
        modulePushforward B S hS (edsEtaleHom B S hS hsq ≫ f)).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RV)
    (αP : (etaleModulePullback.{u, u} B S hS (edsInterHom B S hS hsq)
          (isEtale_edsInterHom B S hS hsq) ⋙
        modulePushforward B S hS (edsInterHom B S hS hsq ≫ f)).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RP)
    (hRX : RX.IsRightDerivedFunctor αX
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRU : RU.IsRightDerivedFunctor αU
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRV : RV.IsRightDerivedFunctor αV
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRP : RP.IsRightDerivedFunctor αP
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))) :
    ∃ (fU : RX ⟶ RU) (fV : RX ⟶ RV) (gU : RU ⟶ RP) (gV : RV ⟶ RP)
      (δ : RP ⟶ RX ⋙ shiftFunctor (DerivedCategory (Modules.{u, u} B S hS Z.1 Z.2)) (1 : ℤ)),
      ∀ E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2),
        Triangle.mk (biprod.lift (fU.app E) (fV.app E))
            (biprod.desc (gU.app E) (-(gV.app E))) (δ.app E) ∈
          distTriang (DerivedCategory (Modules.{u, u} B S hS Z.1 Z.2))
Tag 08H9, a lemma

Tag 08H9 in the Stacks Project.

AlgebraicGeometry.Space.mayerVietoris_derivedHom_longExactSequence_of_eds_lowerShriek, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisExtTag.lean, line 303. The attribute's comment: “the whole tag, and its one library registration: the Mayer-Vietoris sequence of an elementary distinguished square is exact at each of its three kinds of spot and in every integer degree, its first map being the pair of the two derived restrictions of a shifted morphism, its second the difference of the two restrictions to the intersection, and its connecting map that of the triangle of 08GV part (2); the square is the only binder”.

Stacks 08H9, with nothing assumed and with every map of the sequence named. Let (U ⊆ X, j_V : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S, let P = U ×_X V and write (-)|_Y for restriction of modules along j_Y : Y ⟶ X. Then for all objects E and F of D(𝒪_X) the Mayer–Vietoris sequence

⋯ ⟶ Ext⁻¹(E|_P, F|_P) ⟶ Hom(E, F) ⟶ Hom(E|_U, F|_U) ⊕ Hom(E|_V, F|_V) ⟶ Hom(E|_P, F|_P) ⟶ ⋯

is exact at each of its three kinds of spot and in every integer degree, the homomorphism groups of the restrictions being taken in the derived categories of U, of V and of P.

Every map of the sequence is named; none of the three is quantified over.

  • The restriction map is the restriction map. In degree n it carries x : E ⟶ F⟦n⟧ to the pair of the actions CategoryTheory.ShiftedHom.map of the two derived restrictions on it, so neither a choice nor an extension by zero enters it.
  • The second map is the difference of the two restrictions to the intersection. It is AlgebraicGeometry.Space.edsDerivedHomRestrictionOpen on the first summand minus AlgebraicGeometry.Space.edsDerivedHomRestrictionEtale on the second; each of those is the map induced by the comparison of the square attached to the corresponding factorization of j_P, and the two clauses below record that each carries the restriction of a morphism of D(𝒪_X) to the restriction of that morphism to P.
  • The connecting homomorphism is the one of the Mayer–Vietoris triangle. The morphism δ is bound as the third map of the distinguished triangle of part (2) of Stacks 08GV, read at the composites of the derived functors, and AlgebraicGeometry.Space.edsDerivedHomBoundary is composition with that same δ, as the third clause below records.

Nothing beyond the square is assumed: the extension-by-zero data is not quantified over but is AlgebraicGeometry.Space.etaleModuleLowerShriek with its adjunctions AlgebraicGeometry.Space.etaleModuleLowerShriekAdjunction, its exactness is the theorem AlgebraicGeometry.Space.preservesFiniteLimits_etaleModuleLowerShriek (Stacks 03DJ) with its two companions, and the two sheafification hypotheses of the ambient site are discharged by AlgebraicGeometry.Space.smallEtaleRingedSite_hasSheafify_addCommGrpCat and AlgebraicGeometry.Space.smallEtaleRingedSite_wEqualsLocallyBijective_addCommGrpCat.

This is the one library registration of Tag 08H9, and the elementary distinguished square is its only binder.

theorem mayerVietoris_derivedHom_longExactSequence_of_eds_lowerShriek
    (E F : DerivedCategory (Modules.{u, u} B S hS W.1 W.2)) :
    ∃ δ : E ⟶ ((etaleModuleLowerShriek B S hS (edsInterHom B S hS hsq)
        (isEtale_edsInterHom B S hS hsq)).mapDerivedCategory.obj
        ((etaleModulePullback.{u, u} B S hS (edsInterHom B S hS hsq)
            (isEtale_edsInterHom B S hS hsq)).mapDerivedCategory.obj E))⟦(1 : ℤ)⟧,
      Triangle.mk
          (biprod.lift
            ((Functor.mapDerivedCategoryComp (etaleModulePullback.{u, u} B S hS
                  (edsInterHom B S hS hsq) (isEtale_edsInterHom B S hS hsq))
                      (etaleModuleLowerShriek B S hS (edsInterHom B S hS hsq)
                        (isEtale_edsInterHom B S hS hsq))).inv.app E ≫
              (NatTrans.mapDerivedCategory
                (edsShriekOpenComparison B S hS hsq
                    (etaleModuleLowerShriekAdjunction B S hS (edsOpenHom B S hS hsq)
                      (isEtale_edsOpenHom B S hS hsq))
                          (etaleModuleLowerShriekAdjunction B S hS (edsInterHom B S hS hsq)
                            (isEtale_edsInterHom B S hS hsq)))).app E ≫
              (Functor.mapDerivedCategoryComp (etaleModulePullback.{u, u} B S hS
                (edsOpenHom B S hS hsq) (isEtale_edsOpenHom B S hS hsq))
                    (etaleModuleLowerShriek B S hS (edsOpenHom B S hS hsq)
                      (isEtale_edsOpenHom B S hS hsq))).hom.app E)
            (-((Functor.mapDerivedCategoryComp (etaleModulePullback.{u, u} B S hS
                  (edsInterHom B S hS hsq) (isEtale_edsInterHom B S hS hsq))
                      (etaleModuleLowerShriek B S hS (edsInterHom B S hS hsq)
                        (isEtale_edsInterHom B S hS hsq))).inv.app E ≫
              (NatTrans.mapDerivedCategory
                (edsShriekEtaleComparison B S hS hsq
                    (etaleModuleLowerShriekAdjunction B S hS (edsEtaleHom B S hS hsq)
                      (isEtale_edsEtaleHom B S hS hsq))
                          (etaleModuleLowerShriekAdjunction B S hS (edsInterHom B S hS hsq)
                            (isEtale_edsInterHom B S hS hsq)))).app E ≫
              (Functor.mapDerivedCategoryComp (etaleModulePullback.{u, u} B S hS
                (edsEtaleHom B S hS hsq) (isEtale_edsEtaleHom B S hS hsq))
                    (etaleModuleLowerShriek B S hS (edsEtaleHom B S hS hsq)
                      (isEtale_edsEtaleHom B S hS hsq))).hom.app E)))
          (biprod.desc
            ((Functor.mapDerivedCategoryComp (etaleModulePullback.{u, u} B S hS
                  (edsOpenHom B S hS hsq) (isEtale_edsOpenHom B S hS hsq))
                      (etaleModuleLowerShriek B S hS (edsOpenHom B S hS hsq)
                        (isEtale_edsOpenHom B S hS hsq))).inv.app E ≫
              (NatTrans.mapDerivedCategory
                  (etaleModuleLowerShriekAdjunction B S hS (edsOpenHom B S hS hsq)
                    (isEtale_edsOpenHom B S hS hsq)).counit).app E ≫
              (Functor.mapDerivedCategoryIdIso _).hom.app E)
            ((Functor.mapDerivedCategoryComp (etaleModulePullback.{u, u} B S hS
                  (edsEtaleHom B S hS hsq) (isEtale_edsEtaleHom B S hS hsq))
                      (etaleModuleLowerShriek B S hS (edsEtaleHom B S hS hsq)
                        (isEtale_edsEtaleHom B S hS hsq))).inv.app E ≫
              (NatTrans.mapDerivedCategory
                  (etaleModuleLowerShriekAdjunction B S hS (edsEtaleHom B S hS hsq)
                    (isEtale_edsEtaleHom B S hS hsq)).counit).app E ≫
              (Functor.mapDerivedCategoryIdIso _).hom.app E)) δ ∈
        distTriang (DerivedCategory (Modules.{u, u} B S hS W.1 W.2)) ∧
      (∀ (n : ℤ) (x : E ⟶ F⟦n⟧),
        edsDerivedHomRestrictionOpen B S hS hsq E F n
            (ShiftedHom.map x (etaleModulePullback.{u, u} B S hS (edsOpenHom B S hS hsq)
              (isEtale_edsOpenHom B S hS hsq)).mapDerivedCategory) =
          ShiftedHom.map x (etaleModulePullback.{u, u} B S hS (edsInterHom B S hS hsq)
            (isEtale_edsInterHom B S hS hsq)).mapDerivedCategory) ∧
      (∀ (n : ℤ) (x : E ⟶ F⟦n⟧),
        edsDerivedHomRestrictionEtale B S hS hsq E F n
            (ShiftedHom.map x (etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
              (isEtale_edsEtaleHom B S hS hsq)).mapDerivedCategory) =
          ShiftedHom.map x (etaleModulePullback.{u, u} B S hS (edsInterHom B S hS hsq)
            (isEtale_edsInterHom B S hS hsq)).mapDerivedCategory) ∧
      (∀ (n : ℤ) (z : ((etaleModulePullback.{u, u} B S hS (edsInterHom B S hS hsq)
          (isEtale_edsInterHom B S hS hsq)).mapDerivedCategory.obj E ⟶
          ((etaleModulePullback.{u, u} B S hS (edsInterHom B S hS hsq)
              (isEtale_edsInterHom B S hS hsq)).mapDerivedCategory.obj F)⟦n⟧)),
        edsDerivedHomBoundary B S hS hsq E F δ n z =
          δ ≫ (((etaleModuleLowerShriekAdjunction B S hS (edsInterHom B S hS hsq)
                  (isEtale_edsInterHom B S hS hsq)).shiftedHomMapDerivedCategoryEquiv
                ((etaleModulePullback.{u, u} B S hS (edsInterHom B S hS hsq)
                  (isEtale_edsInterHom B S hS hsq)).mapDerivedCategory.obj E) F n).symm
              z)⟦(1 : ℤ)⟧' ≫
            (shiftFunctorAdd' (DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
              n 1 (n + 1) rfl).inv.app F) ∧
      ∀ n : ℤ,
        Function.Exact
            (fun x : E ⟶ F⟦n⟧ =>
              (ShiftedHom.map x (etaleModulePullback.{u, u} B S hS (edsOpenHom B S hS hsq)
                (isEtale_edsOpenHom B S hS hsq)).mapDerivedCategory,
                ShiftedHom.map x (etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
                  (isEtale_edsEtaleHom B S hS hsq)).mapDerivedCategory))
            (fun w => edsDerivedHomRestrictionOpen B S hS hsq E F n w.1 -
              edsDerivedHomRestrictionEtale B S hS hsq E F n w.2) ∧
          Function.Exact
            (fun w : ((etaleModulePullback.{u, u} B S hS (edsOpenHom B S hS hsq)
                (isEtale_edsOpenHom B S hS hsq)).mapDerivedCategory.obj E ⟶
                ((etaleModulePullback.{u, u} B S hS (edsOpenHom B S hS hsq)
                    (isEtale_edsOpenHom B S hS hsq)).mapDerivedCategory.obj F)⟦n⟧) ×
                ((etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
                    (isEtale_edsEtaleHom B S hS hsq)).mapDerivedCategory.obj E ⟶
                    ((etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
                        (isEtale_edsEtaleHom B S hS hsq)).mapDerivedCategory.obj F)⟦n⟧) =>
              edsDerivedHomRestrictionOpen B S hS hsq E F n w.1 -
                edsDerivedHomRestrictionEtale B S hS hsq E F n w.2)
            (edsDerivedHomBoundary B S hS hsq E F δ n) ∧
          Function.Exact (edsDerivedHomBoundary B S hS hsq E F δ n)
            (fun x : E ⟶ F⟦n + 1⟧ =>
              (ShiftedHom.map x (etaleModulePullback.{u, u} B S hS (edsOpenHom B S hS hsq)
                (isEtale_edsOpenHom B S hS hsq)).mapDerivedCategory,
                ShiftedHom.map x (etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
                  (isEtale_edsEtaleHom B S hS hsq)).mapDerivedCategory))
Tag 0CRS, a lemma

Tag 0CRS in the Stacks Project.

AlgebraicGeometry.Space.exists_natTrans_mem_distTriang_edsSectionsMayerVietoris_unconditional, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisSections.lean, line 1112. The attribute's comment: “THIRD CLAUSE: functoriality in E of the distinguished triangle and of its long exact cohomology sequence. The five maps are components of natural transformations of functors on D(O_X); no hypothesis beyond the square and the four derived functors presenting RGamma. The other two clauses are exists_mem_distTriang_edsSectionsMayerVietoris_unconditional and exists_homologySequence_exact_edsSectionsMayerVietoris_unconditional”.

Stacks 0CRS, functoriality in E, with nothing granted.

Let (U ⊆ X, j_V : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and let P = U ×_X V. Write Γ(X, -) for global sections of 𝒪_X-modules on the small étale ringed site, Φ_Y = j_{Y,*}((-)|_Y) for the three restrict-then-push composites of the square, and let RΓ(X, -), RΓ(U, -), RΓ(V, -), RΓ(P, -) be right derived functors of Γ(X, -), Γ(X, -) ∘ Φ_U, Γ(X, -) ∘ Φ_V and Γ(X, -) ∘ Φ_P. Then the five maps of the Mayer–Vietoris triangle

RΓ(X, E) ⟶ RΓ(U, E) ⊕ RΓ(V, E) ⟶ RΓ(U ×_X V, E) ⟶ RΓ(X, E)[1]

are the components of natural transformations of functors on D(𝒪_X), every component triangle is distinguished, and its homology sequence is exact at every n. So a morphism E ⟶ E' induces a morphism of the two triangles and of the two long exact sequences.

As in the conditional statements, the three outer terms are the derived functors of Γ(X, -) ∘ j_{Y,*} ∘ (-)|_Y in that factored form; that this is RΓ(Y, E|_Y) is the adjunction of Stacks 03LU, Stacks.Cohomology.SiteModules.globalSectionsPushforwardIso, and is not transported here.

theorem exists_natTrans_mem_distTriang_edsSectionsMayerVietoris_unconditional
    (RX RU RV RP : DerivedCategory (Modules.{u, u} B S hS W.1 W.2) ⥤
      DerivedCategory (ModuleCat.{u + 1} (RingCat.sectionsSubring
        ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS W.1 W.2).O)).obj)))
    (αX : (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
        ((Stacks.SheafOfModules.Tensor.ringSheaf
          (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RX)
    (αU : (edsRestrictPushOpen B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RU)
    (αV : (edsRestrictPushEtale B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RV)
    (αP : (edsRestrictPushInter B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RP)
    (hRX : RX.IsRightDerivedFunctor αX
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRU : RU.IsRightDerivedFunctor αU
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRV : RV.IsRightDerivedFunctor αV
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRP : RP.IsRightDerivedFunctor αP
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))) :
    ∃ (aU : RX ⟶ RU) (aV : RX ⟶ RV) (bU : RU ⟶ RP) (bV : RV ⟶ RP)
      (δ : RP ⟶ RX ⋙ shiftFunctor (DerivedCategory (ModuleCat.{u + 1}
        (RingCat.sectionsSubring
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O)).obj))) (1 : ℤ)),
      ∀ E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2),
        Triangle.mk (biprod.lift (aU.app E) (aV.app E))
            (biprod.desc (bU.app E) (-(bV.app E))) (δ.app E) ∈
          distTriang (DerivedCategory (ModuleCat.{u + 1} (RingCat.sectionsSubring
            ((Stacks.SheafOfModules.Tensor.ringSheaf
              (smallEtaleRingedSite B S hS W.1 W.2).O)).obj))) ∧
        ∀ n : ℤ, ((DerivedCategory.homologyFunctor (ModuleCat.{u + 1} (RingCat.sectionsSubring
            ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS W.1 W.2).O)).obj))
            0).homologySequenceComposableArrows₅
          (Triangle.mk (biprod.lift (aU.app E) (aV.app E))
            (biprod.desc (bU.app E) (-(bV.app E))) (δ.app E)) n (n + 1) rfl).Exact

AlgebraicGeometry.Space.exists_mem_distTriang_edsSectionsMayerVietoris_unconditional, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisSections.lean, line 1180. The attribute's comment: “FIRST CLAUSE: every E of D(O_X) sits in a distinguished triangle RGamma(X,E) -> RGamma(U,E) (+) RGamma(V,E) -> RGamma(U x_X V,E) -> RGamma(X,E)[1]; no hypothesis beyond the square and the four derived functors presenting RGamma. The other two clauses are exists_homologySequence_exact_edsSectionsMayerVietoris_unconditional and exists_natTrans_mem_distTriang_edsSectionsMayerVietoris_unconditional”.

Stacks 0CRS, the distinguished triangle, with nothing granted.

In the situation of AlgebraicGeometry.Space.exists_natTrans_mem_distTriang_edsSectionsMayerVietoris_unconditional, every object E of D(𝒪_X) sits in a distinguished triangle

RΓ(X, E) ⟶ RΓ(U, E) ⊕ RΓ(V, E) ⟶ RΓ(U ×_X V, E) ⟶ RΓ(X, E)[1].

theorem exists_mem_distTriang_edsSectionsMayerVietoris_unconditional
    (RX RU RV RP : DerivedCategory (Modules.{u, u} B S hS W.1 W.2) ⥤
      DerivedCategory (ModuleCat.{u + 1} (RingCat.sectionsSubring
        ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS W.1 W.2).O)).obj)))
    (αX : (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
        ((Stacks.SheafOfModules.Tensor.ringSheaf
          (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RX)
    (αU : (edsRestrictPushOpen B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RU)
    (αV : (edsRestrictPushEtale B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RV)
    (αP : (edsRestrictPushInter B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RP)
    (hRX : RX.IsRightDerivedFunctor αX
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRU : RU.IsRightDerivedFunctor αU
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRV : RV.IsRightDerivedFunctor αV
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRP : RP.IsRightDerivedFunctor αP
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2)) :
    ∃ (fU : RX.obj E ⟶ RU.obj E) (fV : RX.obj E ⟶ RV.obj E) (gU : RU.obj E ⟶ RP.obj E)
      (gV : RV.obj E ⟶ RP.obj E) (δ : RP.obj E ⟶ (RX.obj E)⟦(1 : ℤ)⟧),
      Triangle.mk (biprod.lift fU fV) (biprod.desc gU (-gV)) δ ∈
        distTriang (DerivedCategory (ModuleCat.{u + 1} (RingCat.sectionsSubring
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O)).obj)))

AlgebraicGeometry.Space.exists_homologySequence_exact_edsSectionsMayerVietoris_unconditional, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisSections.lean, line 1243. The attribute's comment: “SECOND CLAUSE: every E of D(O_X) sits in a long exact cohomology sequence ... -> H^n(X,E) -> H^n(U,E) (+) H^n(V,E) -> H^n(U x_X V,E) -> H^{n+1}(X,E) -> ...; no hypothesis beyond the square and the four derived functors presenting RGamma. It is the homology sequence of the triangle of exists_mem_distTriang_edsSectionsMayerVietoris_unconditional; functoriality is exists_natTrans_mem_distTriang_edsSectionsMayerVietoris_unconditional”.

Stacks 0CRS, the long exact cohomology sequence, with nothing granted.

The distinguished triangle of AlgebraicGeometry.Space.exists_mem_distTriang_edsSectionsMayerVietoris_unconditional has an exact homology sequence, which at each n is the six-term exact sequence

H^n(X,E) ⟶ H^n(U,E) ⊕ H^n(V,E) ⟶ H^n(U ×\_X V,E) ⟶ H^\{n+1}(X,E) ⟶ H^\{n+1}(U,E) ⊕ H^\{n+1}(V,E) ⟶ H^\{n+1}(U ×\_X V,E)

— the Mayer–Vietoris long exact sequence of the source, since the homology functor is additive and so carries the biproduct RΓ(U,E) ⊕ RΓ(V,E) to H^n(U,E) ⊕ H^n(V,E).

theorem exists_homologySequence_exact_edsSectionsMayerVietoris_unconditional
    (RX RU RV RP : DerivedCategory (Modules.{u, u} B S hS W.1 W.2) ⥤
      DerivedCategory (ModuleCat.{u + 1} (RingCat.sectionsSubring
        ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS W.1 W.2).O)).obj)))
    (αX : (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
        ((Stacks.SheafOfModules.Tensor.ringSheaf
          (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RX)
    (αU : (edsRestrictPushOpen B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RU)
    (αV : (edsRestrictPushEtale B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RV)
    (αP : (edsRestrictPushInter B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RP)
    (hRX : RX.IsRightDerivedFunctor αX
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRU : RU.IsRightDerivedFunctor αU
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRV : RV.IsRightDerivedFunctor αV
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRP : RP.IsRightDerivedFunctor αP
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2)) :
    ∃ (fU : RX.obj E ⟶ RU.obj E) (fV : RX.obj E ⟶ RV.obj E) (gU : RU.obj E ⟶ RP.obj E)
      (gV : RV.obj E ⟶ RP.obj E) (δ : RP.obj E ⟶ (RX.obj E)⟦(1 : ℤ)⟧),
      Triangle.mk (biprod.lift fU fV) (biprod.desc gU (-gV)) δ ∈
        distTriang (DerivedCategory (ModuleCat.{u + 1} (RingCat.sectionsSubring
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O)).obj))) ∧
      ∀ n : ℤ, ((DerivedCategory.homologyFunctor (ModuleCat.{u + 1} (RingCat.sectionsSubring
          ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS W.1 W.2).O)).obj))
          0).homologySequenceComposableArrows₅
        (Triangle.mk (biprod.lift fU fV) (biprod.desc gU (-gV)) δ) n (n + 1) rfl).Exact

AlgebraicGeometry.Space.exists_delta_natTrans_mem_distTriang_edsSectionsMayerVietoris_unconditional, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisSectionsNamed.lean, line 548. The attribute's comment: “THIRD CLAUSE: functoriality in E of the distinguished triangle and of its long exact cohomology sequence. The four maps are NAMED in the statement -- the right derived transformations of the restriction maps RGamma(X,-) -> RGamma(U,-), RGamma(V,-) and RGamma(U,-) -> RGamma(U x_X V,-), RGamma(V,-) -> RGamma(U x_X V,-) -- and are components of natural transformations of functors on D(O_X); only the connecting delta is existential, as in the source. No hypothesis beyond the square and the four derived functors presenting RGamma. The other two clauses are exists_delta_mem_distTriang_edsSectionsMayerVietoris_unconditional and exists_delta_homologySequence_exact_edsSectionsMayerVietoris_unconditional”.

Stacks 0CRS, functoriality in E, with nothing granted.

Let (U ⊆ X, j_V : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and let P = U ×_X V. Write Γ(X, -) for global sections of 𝒪_X-modules on the small étale ringed site, Φ_Y = j_{Y,*}((-)|_Y) for the three restrict-then-push composites of the square, and let RΓ(X, -), RΓ(U, -), RΓ(V, -), RΓ(P, -) be right derived functors of Γ(X, -), Γ(X, -) ∘ Φ_U, Γ(X, -) ∘ Φ_V and Γ(X, -) ∘ Φ_P. Then the five maps of the Mayer–Vietoris triangle

RΓ(X, E) ⟶ RΓ(U, E) ⊕ RΓ(V, E) ⟶ RΓ(U ×_X V, E) ⟶ RΓ(X, E)[1]

are the components of natural transformations of functors on D(𝒪_X), every component triangle is distinguished, and its homology sequence is exact at every n. So a morphism E ⟶ E' induces a morphism of the two triangles and of the two long exact sequences.

The four maps are the restriction maps, written out in the statement and not existentially quantified. The two out of RΓ(X, -) are CategoryTheory.Functor.rightDerivedNatTrans of Γ(X, -) applied to the units F ⟶ j_{U,*}F|_U and F ⟶ j_{V,*}F|_V of the adjunctions (-)|_Y ⊣ j_{Y,*} of Stacks 03LU — that is, of the restriction maps Γ(X, F) ⟶ Γ(X, j_{U,*}F|_U) = Γ(U, F|_U) and Γ(X, F) ⟶ Γ(V, F|_V) — and the two into RΓ(U ×_X V, -) are CategoryTheory.Functor.rightDerivedNatTrans of Γ(X, -) applied to the two comparisons j_{U,*}F|_U ⟶ j_{P,*}F|_P and j_{V,*}F|_V ⟶ j_{P,*}F|_P of Stacks 08GW part (1): the conjugates, under the adjunctions j_{Y!}((-)|_Y) ⊣ j_{Y,*}((-)|_Y), of the extension-by-zero comparisons AlgebraicGeometry.Space.edsShriekOpenComparison and AlgebraicGeometry.Space.edsShriekEtaleComparison of Stacks 08GV, at the extension by zero the library constructs (AlgebraicGeometry.Space.edsLowerShriekAdjOpen and its two companions). They are the same four maps as in Stacks 08GW part (2), AlgebraicGeometry.Space.exists_mem_distTriang_edsDerivedRestrictPushMayerVietorisLowerShriek.

Only the connecting transformation δ : RΓ(P, -) ⟶ RΓ(X, -) ⋙ (-)[1] is existentially quantified: the library attaches no canonical such map to an object of D(𝒪_X), and the source likewise asserts only that a triangle with these three terms and these four maps is distinguished, as Stacks 08GV part (2) and Stacks 08GW part (2) do.

This is AlgebraicGeometry.Space.exists_natTrans_mem_distTriang_edsSectionsMayerVietoris with its hypothesis hMV — part (1) of Stacks 08GW — discharged and its four maps named. The sequence 0 ⟶ M ⟶ Φ_U M ⊕ Φ_V M ⟶ Φ_P M ⟶ 0 enters the proof only at the terms of a termwise injective K-injective resolution of E (Stacks 079P, AlgebraicGeometry.Space.exists_quasiIso_isKInjective_injective_modules), and at an injective module it is proved outright from part (1) of Stacks 08GV: AlgebraicGeometry.Space.shortExact_edsRestrictPushMayerVietoris_of_injective. So the surjectivity on the right, which at a general module is the étale-local vanishing of an obstruction in Ext¹(𝒪_X, F) = H¹(X, F) (Stacks 01FW) and is still the hypothesis hepi of AlgebraicGeometry.Space.shortExact_edsRestrictPushMayerVietoris, is not needed here at all.

As in the conditional statements, the three outer terms are the derived functors of Γ(X, -) ∘ j_{Y,*} ∘ (-)|_Y in that factored form; that this is RΓ(Y, E|_Y) is the adjunction of Stacks 03LU, Stacks.Cohomology.SiteModules.globalSectionsPushforwardIso, and is not transported here.

theorem exists_delta_natTrans_mem_distTriang_edsSectionsMayerVietoris_unconditional
    (RX RU RV RP : DerivedCategory (Modules.{u, u} B S hS W.1 W.2) ⥤
      DerivedCategory (ModuleCat.{u + 1} (RingCat.sectionsSubring
        ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS W.1 W.2).O)).obj)))
    (αX : (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
        ((Stacks.SheafOfModules.Tensor.ringSheaf
          (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RX)
    (αU : (edsRestrictPushOpen B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RU)
    (αV : (edsRestrictPushEtale B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RV)
    (αP : (edsRestrictPushInter B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RP)
    (hRX : RX.IsRightDerivedFunctor αX
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRU : RU.IsRightDerivedFunctor αU
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRV : RV.IsRightDerivedFunctor αV
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRP : RP.IsRightDerivedFunctor αP
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))) :
    ∃ δ : RP ⟶ RX ⋙ shiftFunctor (DerivedCategory (ModuleCat.{u + 1}
        (RingCat.sectionsSubring
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O)).obj))) (1 : ℤ),
      ∀ E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2),
        Triangle.mk
            (biprod.lift
              ((Functor.rightDerivedNatTrans RX RU αX αU
                (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
                (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                  (mapUnit (edsAdjOpen B S hS hsq).unit
                    (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                      ((Stacks.SheafOfModules.Tensor.ringSheaf
                        (smallEtaleRingedSite B S hS W.1 W.2).O))))
                  (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E)
              ((Functor.rightDerivedNatTrans RX RV αX αV
                (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
                (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                  (mapUnit (edsAdjEtale B S hS hsq).unit
                    (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                      ((Stacks.SheafOfModules.Tensor.ringSheaf
                        (smallEtaleRingedSite B S hS W.1 W.2).O))))
                  (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E))
            (biprod.desc
              ((Functor.rightDerivedNatTrans RU RP αU αP
                (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
                (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                  (Functor.whiskerRight (conjugateEquiv
                      ((edsAdjOpen B S hS hsq).comp (edsLowerShriekAdjOpen B S hS hsq))
                      ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
                      (edsShriekOpenComparison B S hS hsq (edsLowerShriekAdjOpen B S hS hsq)
                        (edsLowerShriekAdjInter B S hS hsq)))
                    (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                      ((Stacks.SheafOfModules.Tensor.ringSheaf
                        (smallEtaleRingedSite B S hS W.1 W.2).O))))
                  (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E)
              (-((Functor.rightDerivedNatTrans RV RP αV αP
                (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
                (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                  (Functor.whiskerRight (conjugateEquiv
                      ((edsAdjEtale B S hS hsq).comp (edsLowerShriekAdjEtale B S hS hsq))
                      ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
                      (edsShriekEtaleComparison B S hS hsq (edsLowerShriekAdjEtale B S hS hsq)
                        (edsLowerShriekAdjInter B S hS hsq)))
                    (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                      ((Stacks.SheafOfModules.Tensor.ringSheaf
                        (smallEtaleRingedSite B S hS W.1 W.2).O))))
                  (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E)))
            (δ.app E) ∈
          distTriang (DerivedCategory (ModuleCat.{u + 1} (RingCat.sectionsSubring
            ((Stacks.SheafOfModules.Tensor.ringSheaf
              (smallEtaleRingedSite B S hS W.1 W.2).O)).obj))) ∧
        ∀ n : ℤ, ((DerivedCategory.homologyFunctor (ModuleCat.{u + 1} (RingCat.sectionsSubring
            ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS W.1 W.2).O)).obj))
            0).homologySequenceComposableArrows₅
          (Triangle.mk
            (biprod.lift
              ((Functor.rightDerivedNatTrans RX RU αX αU
                (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
                (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                  (mapUnit (edsAdjOpen B S hS hsq).unit
                    (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                      ((Stacks.SheafOfModules.Tensor.ringSheaf
                        (smallEtaleRingedSite B S hS W.1 W.2).O))))
                  (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E)
              ((Functor.rightDerivedNatTrans RX RV αX αV
                (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
                (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                  (mapUnit (edsAdjEtale B S hS hsq).unit
                    (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                      ((Stacks.SheafOfModules.Tensor.ringSheaf
                        (smallEtaleRingedSite B S hS W.1 W.2).O))))
                  (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E))
            (biprod.desc
              ((Functor.rightDerivedNatTrans RU RP αU αP
                (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
                (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                  (Functor.whiskerRight (conjugateEquiv
                      ((edsAdjOpen B S hS hsq).comp (edsLowerShriekAdjOpen B S hS hsq))
                      ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
                      (edsShriekOpenComparison B S hS hsq (edsLowerShriekAdjOpen B S hS hsq)
                        (edsLowerShriekAdjInter B S hS hsq)))
                    (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                      ((Stacks.SheafOfModules.Tensor.ringSheaf
                        (smallEtaleRingedSite B S hS W.1 W.2).O))))
                  (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E)
              (-((Functor.rightDerivedNatTrans RV RP αV αP
                (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
                (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                  (Functor.whiskerRight (conjugateEquiv
                      ((edsAdjEtale B S hS hsq).comp (edsLowerShriekAdjEtale B S hS hsq))
                      ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
                      (edsShriekEtaleComparison B S hS hsq (edsLowerShriekAdjEtale B S hS hsq)
                        (edsLowerShriekAdjInter B S hS hsq)))
                    (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                      ((Stacks.SheafOfModules.Tensor.ringSheaf
                        (smallEtaleRingedSite B S hS W.1 W.2).O))))
                  (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E)))
            (δ.app E)) n (n + 1) rfl).Exact

AlgebraicGeometry.Space.exists_delta_mem_distTriang_edsSectionsMayerVietoris_unconditional, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisSectionsNamed.lean, line 709. The attribute's comment: “FIRST CLAUSE: every E of D(O_X) sits in a distinguished triangle RGamma(X,E) -> RGamma(U,E) (+) RGamma(V,E) -> RGamma(U x_X V,E) -> RGamma(X,E)[1] whose four first maps are NAMED in the statement: the right derived transformations of the restriction maps RGamma(X,-) -> RGamma(U,-), RGamma(V,-) and RGamma(U,-), RGamma(V,-) -> RGamma(U x_X V,-). Only the connecting delta is existential, as in the source. No hypothesis beyond the square and the four derived functors presenting RGamma. The other two clauses are exists_delta_homologySequence_exact_edsSectionsMayerVietoris_unconditional and exists_delta_natTrans_mem_distTriang_edsSectionsMayerVietoris_unconditional”.

Stacks 0CRS, the distinguished triangle, with nothing granted.

In the situation of exists_delta_natTrans_mem_distTriang_edsSectionsMayerVietoris_unconditional, every object E of D(𝒪_X) sits in a distinguished triangle

RΓ(X, E) ⟶ RΓ(U, E) ⊕ RΓ(V, E) ⟶ RΓ(U ×_X V, E) ⟶ RΓ(X, E)[1].

Its four first maps are the restriction maps, written out in the statement and not existentially quantified, exactly as in exists_delta_natTrans_mem_distTriang_edsSectionsMayerVietoris_unconditional, whose component at E this is: the right derived transformations of Γ(X, -) applied to the units F ⟶ j_{U,*}F|_U, F ⟶ j_{V,*}F|_V of Stacks 03LU and to the two comparisons j_{U,*}F|_U ⟶ j_{P,*}F|_P, j_{V,*}F|_V ⟶ j_{P,*}F|_P of Stacks 08GW part (1). Only the connecting map δ : RΓ(P, E) ⟶ RΓ(X, E)[1] is existentially quantified, as it is in the source and in Stacks 08GV part (2) and Stacks 08GW part (2).

This is AlgebraicGeometry.Space.exists_mem_distTriang_edsSectionsMayerVietoris with its hypothesis hMV — part (1) of Stacks 08GW — discharged, by the same observation: the sequence is used at an injective module only, and there it is a theorem; and with its four maps named.

theorem exists_delta_mem_distTriang_edsSectionsMayerVietoris_unconditional
    (RX RU RV RP : DerivedCategory (Modules.{u, u} B S hS W.1 W.2) ⥤
      DerivedCategory (ModuleCat.{u + 1} (RingCat.sectionsSubring
        ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS W.1 W.2).O)).obj)))
    (αX : (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
        ((Stacks.SheafOfModules.Tensor.ringSheaf
          (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RX)
    (αU : (edsRestrictPushOpen B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RU)
    (αV : (edsRestrictPushEtale B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RV)
    (αP : (edsRestrictPushInter B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RP)
    (hRX : RX.IsRightDerivedFunctor αX
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRU : RU.IsRightDerivedFunctor αU
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRV : RV.IsRightDerivedFunctor αV
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRP : RP.IsRightDerivedFunctor αP
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2)) :
    ∃ δ : RP.obj E ⟶ (RX.obj E)⟦(1 : ℤ)⟧,
      Triangle.mk
          (biprod.lift
            ((Functor.rightDerivedNatTrans RX RU αX αU
              (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
              (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                (mapUnit (edsAdjOpen B S hS hsq).unit
                  (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                    ((Stacks.SheafOfModules.Tensor.ringSheaf
                      (smallEtaleRingedSite B S hS W.1 W.2).O))))
                (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E)
            ((Functor.rightDerivedNatTrans RX RV αX αV
              (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
              (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                (mapUnit (edsAdjEtale B S hS hsq).unit
                  (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                    ((Stacks.SheafOfModules.Tensor.ringSheaf
                      (smallEtaleRingedSite B S hS W.1 W.2).O))))
                (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E))
          (biprod.desc
            ((Functor.rightDerivedNatTrans RU RP αU αP
              (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
              (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                (Functor.whiskerRight (conjugateEquiv
                    ((edsAdjOpen B S hS hsq).comp (edsLowerShriekAdjOpen B S hS hsq))
                    ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
                    (edsShriekOpenComparison B S hS hsq (edsLowerShriekAdjOpen B S hS hsq)
                      (edsLowerShriekAdjInter B S hS hsq)))
                  (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                    ((Stacks.SheafOfModules.Tensor.ringSheaf
                      (smallEtaleRingedSite B S hS W.1 W.2).O))))
                (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E)
            (-((Functor.rightDerivedNatTrans RV RP αV αP
              (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
              (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                (Functor.whiskerRight (conjugateEquiv
                    ((edsAdjEtale B S hS hsq).comp (edsLowerShriekAdjEtale B S hS hsq))
                    ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
                    (edsShriekEtaleComparison B S hS hsq (edsLowerShriekAdjEtale B S hS hsq)
                      (edsLowerShriekAdjInter B S hS hsq)))
                  (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                    ((Stacks.SheafOfModules.Tensor.ringSheaf
                      (smallEtaleRingedSite B S hS W.1 W.2).O))))
                (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E))) δ ∈
        distTriang (DerivedCategory (ModuleCat.{u + 1} (RingCat.sectionsSubring
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O)).obj)))

AlgebraicGeometry.Space.exists_delta_homologySequence_exact_edsSectionsMayerVietoris_unconditional, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisSectionsNamed.lean, line 823. The attribute's comment: “SECOND CLAUSE: every E of D(O_X) sits in a long exact cohomology sequence ... -> H^n(X,E) -> H^n(U,E) (+) H^n(V,E) -> H^n(U x_X V,E) -> H^{n+1}(X,E) -> ... whose maps are H^n of the NAMED restriction maps -- the triangle it is the homology sequence of has its four first maps written out, the right derived transformations of RGamma(X,-) -> RGamma(U,-), RGamma(V,-) and RGamma(U,-), RGamma(V,-) -> RGamma(U x_X V,-); only the connecting delta is existential, as in the source. No hypothesis beyond the square and the four derived functors presenting RGamma. It is the homology sequence of the triangle of exists_delta_mem_distTriang_edsSectionsMayerVietoris_unconditional; functoriality is exists_delta_natTrans_mem_distTriang_edsSectionsMayerVietoris_unconditional”.

Stacks 0CRS, the long exact cohomology sequence, with nothing granted.

The distinguished triangle of AlgebraicGeometry.Space.exists_delta_mem_distTriang_edsSectionsMayerVietoris_unconditional has an exact homology sequence, which at each n is the six-term exact sequence

H^n(X,E) ⟶ H^n(U,E) ⊕ H^n(V,E) ⟶ H^n(U ×\_X V,E) ⟶ H^\{n+1}(X,E) ⟶ H^\{n+1}(U,E) ⊕ H^\{n+1}(V,E) ⟶ H^\{n+1}(U ×\_X V,E)

— the Mayer–Vietoris long exact sequence of the source, since the homology functor is additive and so carries the biproduct RΓ(U,E) ⊕ RΓ(V,E) to H^n(U,E) ⊕ H^n(V,E).

Its maps are the restriction maps on cohomology, because the triangle whose homology sequence this is carries its four maps written out: they are the right derived transformations of Γ(X, -) applied to the units F ⟶ j_{U,*}F|_U, F ⟶ j_{V,*}F|_V of Stacks 03LU and to the two comparisons j_{U,*}F|_U ⟶ j_{P,*}F|_P, j_{V,*}F|_V ⟶ j_{P,*}F|_P of Stacks 08GW part (1), so the maps of the long exact sequence are H^n of them. Only the connecting map δ, and with it H^n(U ×_X V,E) ⟶ H^{n+1}(X,E), is existentially quantified, as in the source.

This is AlgebraicGeometry.Space.exists_homologySequence_exact_edsSectionsMayerVietoris with its hypothesis hMV — part (1) of Stacks 08GW — discharged and its four maps named.

theorem exists_delta_homologySequence_exact_edsSectionsMayerVietoris_unconditional
    (RX RU RV RP : DerivedCategory (Modules.{u, u} B S hS W.1 W.2) ⥤
      DerivedCategory (ModuleCat.{u + 1} (RingCat.sectionsSubring
        ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS W.1 W.2).O)).obj)))
    (αX : (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
        ((Stacks.SheafOfModules.Tensor.ringSheaf
          (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RX)
    (αU : (edsRestrictPushOpen B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RU)
    (αV : (edsRestrictPushEtale B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RV)
    (αP : (edsRestrictPushInter B S hS hsq ⋙
        Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O))).mapHomotopyCategory
        (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RP)
    (hRX : RX.IsRightDerivedFunctor αX
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRU : RU.IsRightDerivedFunctor αU
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRV : RV.IsRightDerivedFunctor αV
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRP : RP.IsRightDerivedFunctor αP
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2)) :
    ∃ δ : RP.obj E ⟶ (RX.obj E)⟦(1 : ℤ)⟧,
      Triangle.mk
          (biprod.lift
            ((Functor.rightDerivedNatTrans RX RU αX αU
              (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
              (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                (mapUnit (edsAdjOpen B S hS hsq).unit
                  (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                    ((Stacks.SheafOfModules.Tensor.ringSheaf
                      (smallEtaleRingedSite B S hS W.1 W.2).O))))
                (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E)
            ((Functor.rightDerivedNatTrans RX RV αX αV
              (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
              (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                (mapUnit (edsAdjEtale B S hS hsq).unit
                  (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                    ((Stacks.SheafOfModules.Tensor.ringSheaf
                      (smallEtaleRingedSite B S hS W.1 W.2).O))))
                (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E))
          (biprod.desc
            ((Functor.rightDerivedNatTrans RU RP αU αP
              (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
              (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                (Functor.whiskerRight (conjugateEquiv
                    ((edsAdjOpen B S hS hsq).comp (edsLowerShriekAdjOpen B S hS hsq))
                    ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
                    (edsShriekOpenComparison B S hS hsq (edsLowerShriekAdjOpen B S hS hsq)
                      (edsLowerShriekAdjInter B S hS hsq)))
                  (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                    ((Stacks.SheafOfModules.Tensor.ringSheaf
                      (smallEtaleRingedSite B S hS W.1 W.2).O))))
                (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E)
            (-((Functor.rightDerivedNatTrans RV RP αV αP
              (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
              (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                (Functor.whiskerRight (conjugateEquiv
                    ((edsAdjEtale B S hS hsq).comp (edsLowerShriekAdjEtale B S hS hsq))
                    ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
                    (edsShriekEtaleComparison B S hS hsq (edsLowerShriekAdjEtale B S hS hsq)
                      (edsLowerShriekAdjInter B S hS hsq)))
                  (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                    ((Stacks.SheafOfModules.Tensor.ringSheaf
                      (smallEtaleRingedSite B S hS W.1 W.2).O))))
                (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E))) δ ∈
        distTriang (DerivedCategory (ModuleCat.{u + 1} (RingCat.sectionsSubring
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS W.1 W.2).O)).obj))) ∧
      ∀ n : ℤ, ((DerivedCategory.homologyFunctor (ModuleCat.{u + 1} (RingCat.sectionsSubring
          ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS W.1 W.2).O)).obj))
          0).homologySequenceComposableArrows₅
        (Triangle.mk
          (biprod.lift
            ((Functor.rightDerivedNatTrans RX RU αX αU
              (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
              (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                (mapUnit (edsAdjOpen B S hS hsq).unit
                  (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                    ((Stacks.SheafOfModules.Tensor.ringSheaf
                      (smallEtaleRingedSite B S hS W.1 W.2).O))))
                (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E)
            ((Functor.rightDerivedNatTrans RX RV αX αV
              (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
              (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                (mapUnit (edsAdjEtale B S hS hsq).unit
                  (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                    ((Stacks.SheafOfModules.Tensor.ringSheaf
                      (smallEtaleRingedSite B S hS W.1 W.2).O))))
                (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E))
          (biprod.desc
            ((Functor.rightDerivedNatTrans RU RP αU αP
              (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
              (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                (Functor.whiskerRight (conjugateEquiv
                    ((edsAdjOpen B S hS hsq).comp (edsLowerShriekAdjOpen B S hS hsq))
                    ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
                    (edsShriekOpenComparison B S hS hsq (edsLowerShriekAdjOpen B S hS hsq)
                      (edsLowerShriekAdjInter B S hS hsq)))
                  (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                    ((Stacks.SheafOfModules.Tensor.ringSheaf
                      (smallEtaleRingedSite B S hS W.1 W.2).O))))
                (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E)
            (-((Functor.rightDerivedNatTrans RV RP αV αP
              (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ))
              (Functor.whiskerRight (NatTrans.mapHomotopyCategory
                (Functor.whiskerRight (conjugateEquiv
                    ((edsAdjEtale B S hS hsq).comp (edsLowerShriekAdjEtale B S hS hsq))
                    ((edsAdjInter B S hS hsq).comp (edsLowerShriekAdjInter B S hS hsq))
                    (edsShriekEtaleComparison B S hS hsq (edsLowerShriekAdjEtale B S hS hsq)
                      (edsLowerShriekAdjInter B S hS hsq)))
                  (Stacks.Cohomology.SiteModules.globalSectionsFunctor.{u + 1, u, u, u}
                    ((Stacks.SheafOfModules.Tensor.ringSheaf
                      (smallEtaleRingedSite B S hS W.1 W.2).O))))
                (ComplexShape.up ℤ)) DerivedCategory.Qh)).app E))) δ) n (n + 1) rfl).Exact
Tag 08HA, a lemma

Tag 08HA in the Stacks Project.

AlgebraicGeometry.Space.isIso_restrictEtaleModuleLowerShriekMap, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/RestrictEtaleModuleLowerShriek.lean, line 79. The attribute's comment: “on modules, for the constructed extension by zero”.

Stacks 08HA, on sheaves of modules. Let j : U ⟶ X and j_V : V ⟶ X be étale morphisms of algebraic spaces, let W = V ×_X U with projections j_W : W ⟶ V and p : W ⟶ U, and let F be a sheaf of 𝒪_U-modules. Then the canonical map j_{W!}(F|_W) ⟶ (j_!F)|_V is an isomorphism, that is, (j_!F)|_V = j_{W!}(F|_W), where j_! and j_{W!} are the extensions by zero AlgebraicGeometry.Space.etaleModuleLowerShriek.

theorem isIso_restrictEtaleModuleLowerShriekMap :
    IsIso (restrictExtensionByZeroMap B S hS sq hj hjV
      (etaleModuleLowerShriekAdjunction B S hS j hj)
      (etaleModuleLowerShriekAdjunction B S hS jW
        (isEtale_of_isPullback B S hS p jW j jV sq.flip hj)))

AlgebraicGeometry.Space.isIso_derivedRestrictEtaleModuleLowerShriekMap, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/RestrictEtaleModuleLowerShriek.lean, line 135. The attribute's comment: “for the constructed extension by zero, on any model of the derived categories”.

Stacks 08HA. Let j : U ⟶ X and j_V : V ⟶ X be étale morphisms of algebraic spaces, let W = V ×_X U with projections j_W : W ⟶ V and p : W ⟶ U, and let E be an object of the unbounded derived category of 𝒪_U-modules. Then the canonical map j_{W!}(E|_W) ⟶ (j_!E)|_V is an isomorphism, that is, (j_!E)|_V = j_{W!}(E|_W), where j_! and j_{W!} are the derived functors of the exact extensions by zero AlgebraicGeometry.Space.etaleModuleLowerShriek.

theorem isIso_derivedRestrictEtaleModuleLowerShriekMap :
    IsIso (derivedRestrictEtaleModuleLowerShriekMap B S hS sq hj hjV)

AlgebraicGeometry.Space.isIso_restrictExtensionByZeroMap, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/RestrictExtensionByZero.lean, line 211. The attribute's comment: “on modules”.

Stacks 08HA, on sheaves of modules. Let j : U ⟶ X and j_V : V ⟶ X be étale morphisms of algebraic spaces, let W = V ×_X U with projections j_W : W ⟶ V and p : W ⟶ U, and let F be a sheaf of 𝒪_U-modules. Then the canonical map j_{W!}(F|_W) ⟶ (j_!F)|_V is an isomorphism, that is, (j_!F)|_V = j_{W!}(F|_W).

theorem isIso_restrictExtensionByZeroMap :
    IsIso (restrictExtensionByZeroMap B S hS sq hj hjV adj adjW)

AlgebraicGeometry.Space.isIso_derivedRestrictExtensionByZeroMap, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/RestrictExtensionByZero.lean, line 250.

Stacks 08HA. Let j : U ⟶ X and j_V : V ⟶ X be étale morphisms of algebraic spaces, let W = V ×_X U with projections j_W : W ⟶ V and p : W ⟶ U, and let E be an object of the unbounded derived category of 𝒪_U-modules. Then the canonical map j_{W!}(E|_W) ⟶ (j_!E)|_V is an isomorphism, that is, (j_!E)|_V = j_{W!}(E|_W).

theorem isIso_derivedRestrictExtensionByZeroMap :
    IsIso (derivedRestrictExtensionByZeroMap B S hS sq hj hjV adj adjW)
Tag 08GG, a lemma

Tag 08GG in the Stacks Project.

AlgebraicGeometry.Space.isIso_edsEtaleDerivedAdjunction_unit_app_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ExtensionByZeroSupported.lean, line 517. The attribute's comment: “clause (2)(a): F ⟶ (j_!F)|_V is an isomorphism for F supported on j^{-1}T”.

Stacks 08GG, clause (2)(a). Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces and T = |X| \ |U|. For an object F of D(𝒪_V) supported on j^{-1}T the unit F ⟶ (j_!F)|_V of the derived adjunction j_! ⊣ (-)|_V is an isomorphism.

Both functors are exact, so on cohomology the derived unit is the unit at Hⁱ(F), which is an isomorphism by the stalk computation of Equation 08GU, the square having exactly one lift of each geometric point over T.

theorem isIso_edsEtaleDerivedAdjunction_unit_app_of_cohomologySupportedOn
    (F : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2))
    (hF : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (edsEtalePreimageComplementPoints B S hS hsq) F) :
    IsIso ((edsEtaleDerivedAdjunction B S hS hsq).unit.app F)

AlgebraicGeometry.Space.isIso_derivedCounit_edsEtale_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedExtensionByZero.lean, line 126. The attribute's comment: “clause (1)(b): the derived counit j_!(E|_V) ⟶ E is an isomorphism for E in D(O_X) supported on T = |X| \ |U|, unconditionally”.

Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and set T = |X| \ |U|. For E in D(𝒪_X) supported on T, the counit j_!(E|_V) ⟶ E is an isomorphism.

theorem isIso_derivedCounit_edsEtale_of_cohomologySupportedOn
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
    (hE : CohomologySupportedOn B S hS W.1 W.2 (edsComplementPoints B S hS Uo) E) :
    IsIso ((NatTrans.mapDerivedCategory (edsEtaleShriekAdjunction B S hS hsq).counit).app E)

AlgebraicGeometry.Space.isIso_derivedUnit_edsEtale_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedExtensionByZero.lean, line 150. The attribute's comment: “clause (2)(a): the unit F ⟶ (j_!F)|_V is an isomorphism for F in D(O_V) supported on j^{-1}T, unconditionally”.

Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and set T = |X| \ |U|. For F in D(𝒪_V) supported on j⁻¹T, the unit F ⟶ (j_!F)|_V is an isomorphism.

theorem isIso_derivedUnit_edsEtale_of_cohomologySupportedOn
    (F : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2))
    (hF : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (edsEtalePreimageComplementPoints B S hS hsq) F) :
    IsIso ((Adjunction.mapDerivedCategory (edsEtaleShriekAdjunction B S hS hsq)).unit.app F)

AlgebraicGeometry.Space.isIso_counit_mapDerivedCategory_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedOnComplement.lean, line 288. The attribute's comment: “clause (1)(b): the derived counit j_!(E|_V) ⟶ E is an isomorphism for E supported on T = |X| \ |U|. Proved in full from (i) hMV, which is part (1) of Tag 08GV and is a theorem of the library, shortExact_edsShriekMayerVietoris, taken here as an input for arbitrary maps a and b out of the intersection exactly as in mem_distTriang_mayerVietoris, and (ii) hvan, the implication from support on T to the vanishing of the restriction to an etale space over |U|: that is Tag 04K5 plus H^i(E|_Y) = H^i(E)|_Y, and the latter is unavailable because Mathlib records no commutation of Functor.mapDerivedCategory with the homology functors. The two instances of hvan that the proof needs, at the open immersion and at the intersection, are proved here and not assumed. Extension by zero enters as data, as in Tag 08HA”.

Stacks 08GG, clause (1)(b). Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S, let P = U ×_X V and set T = |X| \ |U|. Let E be an object of D(𝒪_X) supported on T. Then the canonical map j_!(E|_V) ⟶ E, the derived counit of the adjunction j_! ⊣ (-)|_V, is an isomorphism.

This is the source's own argument. Stacks 08GV part (2) puts E in a distinguished triangle

j_{P!}E|_P ⟶ j_{U!}E|_U ⊕ j_{V!}E|_V ⟶ E ⟶ (j_{P!}E|_P)[1];

support on T makes E|_U and E|_P vanish, hence also their extensions by zero, so the first term of the triangle vanishes — whence the second map is an isomorphism — and the U-summand of the second term vanishes, so the inclusion of the V-summand is an isomorphism. The composite of the two is the derived counit.

theorem isIso_counit_mapDerivedCategory_of_cohomologySupportedOn
    (a : etaleModulePullback.{u, u} B S hS (edsInterHom B S hS hsq)
          (isEtale_edsInterHom B S hS hsq) ⋙ shriekP ⟶
        etaleModulePullback.{u, u} B S hS (edsOpenHom B S hS hsq)
          (isEtale_edsOpenHom B S hS hsq) ⋙ shriekU)
    (b : etaleModulePullback.{u, u} B S hS (edsInterHom B S hS hsq)
          (isEtale_edsInterHom B S hS hsq) ⋙ shriekP ⟶
        etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
          (isEtale_edsEtaleHom B S hS hsq) ⋙ shriekV)
    (hzero : ∀ F, biprod.lift (a.app F) (-(b.app F)) ≫
      biprod.desc (adjU.counit.app F) (adjV.counit.app F) = 0)
    (hMV : ∀ F, (ShortComplex.mk (biprod.lift (a.app F) (-(b.app F)))
      (biprod.desc (adjU.counit.app F) (adjV.counit.app F)) (hzero F)).ShortExact)
    [HasSheafify (smallEtaleRingedSite B S hS (edsOpen B S hS hsq).1
      (edsOpen B S hS hsq).2).J AddCommGrpCat.{u}]
    [(smallEtaleRingedSite B S hS (edsOpen B S hS hsq).1
      (edsOpen B S hS hsq).2).J.WEqualsLocallyBijective AddCommGrpCat.{u}]
    [HasSheafify (smallEtaleRingedSite B S hS (edsInter B S hS hsq).1
      (edsInter B S hS hsq).2).J AddCommGrpCat.{u}]
    [(smallEtaleRingedSite B S hS (edsInter B S hS hsq).1
      (edsInter B S hS hsq).2).J.WEqualsLocallyBijective AddCommGrpCat.{u}]
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
    (hE : CohomologySupportedOn B S hS W.1 W.2 (edsComplementPoints B S hS Uo) E)
    (hvan : CohomologySupportedOn B S hS W.1 W.2 (edsComplementPoints B S hS Uo) E →
      ∀ {Y : AlgebraicSpaces B S hS} (g : Y ⟶ W) (hg : IsEtale B S hS g.hom),
        Set.range (pointsMap B S hS Y.1 g.hom) ⊆
            Set.range (pointsMap B S hS Uo.toFunctor Uo.ι) →
          IsZero ((etaleModulePullback.{u, u} B S hS g hg).mapDerivedCategory.obj E)) :
    IsIso ((NatTrans.mapDerivedCategory adjV.counit).app E)

AlgebraicGeometry.Space.exists_isIso_derivedRestrictPush_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedOnComplement.lean, line 385. The attribute's comment: “clause (1)(a): E is isomorphic to Rj_*(E|_V) for E supported on T = |X| \ |U|. WEAKER THAN THE CLAUSE IN ONE RESPECT, stated here because the library's Tag 08GW part (2), exists_mem_distTriang_edsDerivedRestrictPushMayerVietoris, quantifies the maps of its triangle existentially as the source does: what is proved is that SOME map E ⟶ R_V E is an isomorphism, not that the canonical derived unit is. Granted (i) hMV, which is part (1) of Tag 08GW and is itself only proved there from part (1) of Tag 08GV plus the surjectivity of Tag 01FW, (ii) hvan, the implication from support on T to the vanishing of the restriction to an etale space over |U| -- Tag 04K5 plus the unavailable commutation of Functor.mapDerivedCategory with the homology functors -- and (iii) hRUzero and hRPzero, the vanishing of the two derived direct images at a vanishing restriction, which is Tag 08GE together with the fact that restriction needs no derivation”.

Stacks 08GG, clause (1)(a), in the existentially quantified form that the library's Stacks 08GW part (2) permits. Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S, let P = U ×_X V and set T = |X| \ |U|. Let R_U, R_V and R_P be right derived functors of the three composites j_{Y,*}((-)|_Y), and suppose part (1) of Stacks 08GW holds. Then an object E of D(𝒪_X) supported on T is isomorphic to Rj_{V,*}(E|_V) by a map E ⟶ R_V E.

This is the source's argument. Stacks 08GW part (2) puts E in a distinguished triangle

E ⟶ Rj_{U,*}E|_U ⊕ Rj_{V,*}E|_V ⟶ Rj_{P,*}E|_P ⟶ E[1];

support on T makes E|_U and E|_P vanish, hence also the two derived direct images, so the third term of the triangle vanishes — whence the first map is an isomorphism — and the U-summand of the second term vanishes, so the projection to the V-summand is an isomorphism. The composite of the two is a map E ⟶ R_V E.

theorem exists_isIso_derivedRestrictPush_of_cohomologySupportedOn
    (RU RV RP : DerivedCategory (Modules.{u, u} B S hS W.1 W.2) ⥤
      DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
    (αU : (edsRestrictPushOpen B S hS hsq).mapHomotopyCategory (ComplexShape.up ℤ) ⋙
      DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RU)
    (αV : (edsRestrictPushEtale B S hS hsq).mapHomotopyCategory (ComplexShape.up ℤ) ⋙
      DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RV)
    (αP : (edsRestrictPushInter B S hS hsq).mapHomotopyCategory (ComplexShape.up ℤ) ⋙
      DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RP)
    (hRU : RU.IsRightDerivedFunctor αU
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRV : RV.IsRightDerivedFunctor αV
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (hRP : RP.IsRightDerivedFunctor αP
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS W.1 W.2) (ComplexShape.up ℤ)))
    (ηU : 𝟭 (Modules.{u, u} B S hS W.1 W.2) ⟶ edsRestrictPushOpen B S hS hsq)
    (ηV : 𝟭 (Modules.{u, u} B S hS W.1 W.2) ⟶ edsRestrictPushEtale B S hS hsq)
    (dU : edsRestrictPushOpen B S hS hsq ⟶ edsRestrictPushInter B S hS hsq)
    (dV : edsRestrictPushEtale B S hS hsq ⟶ edsRestrictPushInter B S hS hsq)
    (hzero : ∀ M, biprod.lift (ηU.app M) (ηV.app M) ≫
      biprod.desc (dU.app M) (-(dV.app M)) = 0)
    (hMV : ∀ M, (ShortComplex.mk (biprod.lift (ηU.app M) (ηV.app M))
      (biprod.desc (dU.app M) (-(dV.app M))) (hzero M)).ShortExact)
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
    (hE : CohomologySupportedOn B S hS W.1 W.2 (edsComplementPoints B S hS Uo) E)
    (hvan : CohomologySupportedOn B S hS W.1 W.2 (edsComplementPoints B S hS Uo) E →
      ∀ {Y : AlgebraicSpaces B S hS} (g : Y ⟶ W) (hg : IsEtale B S hS g.hom),
        Set.range (pointsMap B S hS Y.1 g.hom) ⊆
            Set.range (pointsMap B S hS Uo.toFunctor Uo.ι) →
          IsZero ((etaleModulePullback.{u, u} B S hS g hg).mapDerivedCategory.obj E))
    (hRUzero : IsZero ((etaleModulePullback.{u, u} B S hS (edsOpenHom B S hS hsq)
        (isEtale_edsOpenHom B S hS hsq)).mapDerivedCategory.obj E) → IsZero (RU.obj E))
    (hRPzero : IsZero ((etaleModulePullback.{u, u} B S hS (edsInterHom B S hS hsq)
        (isEtale_edsInterHom B S hS hsq)).mapDerivedCategory.obj E) → IsZero (RP.obj E)) :
    ∃ f : E ⟶ RV.obj E, IsIso f

AlgebraicGeometry.Space.isIso_supportedShriekToPushforward, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedOnComplement.lean, line 499. The attribute's comment: “clause (2)(c): the comparison j_!F ⟶ Rj_F is an isomorphism for F supported on j^{-1}T. CONDITIONAL on the other clauses, which are its named hypotheses: h2a is clause (2)(a), h2b is clause (2)(b), and h1aShriek and h1aPush are clause (1)(a) at the two objects j_!F and Rj_F. NONE of those four is proved in the library -- clauses (2)(a) and (2)(b) need the source's base change of the square to V, where j acquires a section, which the library does not carry; clause (1)(a) is proved here only in the existentially quantified form exists_isIso_derivedRestrictPush_of_cohomologySupportedOn, which does not name the canonical unit that this statement uses. What IS proved here is the implication, which is the source's own passage to (2)(c). Derived extension by zero and derived direct image enter as the two adjunctions of derived restriction, as in Tag 08HA”.

Stacks 08GG, clause (2)(c), granted clauses (2)(a), (2)(b) and (1)(a). Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S, set T = |X| \ |U| and let F be an object of D(𝒪_V) supported on j^{-1}T. Granted that the unit F ⟶ (j_!F)|_V of clause (2)(a) and the counit (Rj_*F)|_V ⟶ F of clause (2)(b) are isomorphisms, and that clause (1)(a) holds at the two objects j_!F and Rj_*F of D(𝒪_X), the comparison j_!F ⟶ Rj_*F is an isomorphism.

The deduction is CategoryTheory.Adjunction.isIso_homEquiv_inv_unit: clauses (2)(a) and (2)(b) make the restriction of the comparison invertible, and clause (1)(a) at its source and at its target then makes the comparison itself invertible, by naturality of the unit of (-)|_V ⊣ Rj_*. The source instead obtains all three clauses at once from the base change of the square to V; this is a cleaner route to (2)(c) from the other two, and it is the only part of the source's part (2) obtained here.

theorem isIso_supportedShriekToPushforward
    (F : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1
      (edsEtale B S hS hsq).2))
    (h2a : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
        (edsEtalePreimageComplementPoints B S hS hsq) F →
      IsIso (adjShriek.unit.app F))
    (h2b : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
        (edsEtalePreimageComplementPoints B S hS hsq) F →
      IsIso (adjPush.counit.app F))
    (h1aShriek : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1
        (edsEtale B S hS hsq).2 (edsEtalePreimageComplementPoints B S hS hsq) F →
      IsIso (adjPush.unit.app (shriekD.obj F)))
    (h1aPush : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1
        (edsEtale B S hS hsq).2 (edsEtalePreimageComplementPoints B S hS hsq) F →
      IsIso (adjPush.unit.app (RpushD.obj F)))
    (hF : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (edsEtalePreimageComplementPoints B S hS hsq) F) :
    IsIso (supportedShriekToPushforward B S hS hsq adjShriek adjPush F (h2a hF))

AlgebraicGeometry.Space.isIso_derivedUnit_edsDerivedRestrictPushEtale_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedOnComplementCanonical.lean, line 130. The attribute's comment: “clause (1)(a): the canonical map E ⟶ Rj_*(E|_V) is an isomorphism for E supported on |X| \ |U|, at the chosen total right derived functors”.

Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and set T = |X| \ |U|. For an object E of D(𝒪_X) supported on T, the canonical map E ⟶ Rj_{V,*}(E|_V) into the chosen total right derived direct image is an isomorphism.

theorem isIso_derivedUnit_edsDerivedRestrictPushEtale_of_cohomologySupportedOn
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
    (hE : CohomologySupportedOn B S hS W.1 W.2 (edsComplementPoints B S hS Uo) E) :
    IsIso ((derivedUnitOfNatTrans (edsAdjEtale B S hS hsq).unit
      (edsDerivedRestrictPushEtale B S hS hsq)
      (edsTotalRightDerivedUnitEtale B S hS hsq)).app E)

AlgebraicGeometry.Space.isIso_unit_derivedRestrict_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedOnComplementClauses.lean, line 280. The attribute's comment: “clause (1)(a): for E in D(O_X) supported on T = |X| \ |U| the map E ⟶ Rj_(E|_V), the unit of the adjunction between derived restriction and the derived direct image, is an isomorphism. Rj_ is any right adjoint of derived restriction, which pins it and its unit; a total right derived functor of j_* is one, by etaleModulePullbackDerivedPushforwardAdjunction”.

Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and set T = |X| \ |U|. Let Rj_* be a right adjoint of derived restriction (-)|_V : D(𝒪_X) ⥤ D(𝒪_V). If E in D(𝒪_X) is supported on T, then the unit E ⟶ Rj_*(E|_V) is an isomorphism.

theorem isIso_unit_derivedRestrict_of_cohomologySupportedOn
    {RpushD : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1
        (edsEtale B S hS hsq).2) ⥤ DerivedCategory (Modules.{u, u} B S hS W.1 W.2)}
    (adjPush : (etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
      (isEtale_edsEtaleHom B S hS hsq)).mapDerivedCategory ⊣ RpushD)
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
    (hE : CohomologySupportedOn B S hS W.1 W.2 (edsComplementPoints B S hS Uo) E) :
    IsIso (adjPush.unit.app E)

AlgebraicGeometry.Space.isIso_counit_derivedRestrict_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedOnComplementClauses.lean, line 300. The attribute's comment: “clause (1)(b): for E in D(O_X) supported on T = |X| \ |U| the map j_!(E|_V) ⟶ E, the counit of the adjunction between derived extension by zero and derived restriction, is an isomorphism. j_! is any left adjoint of derived restriction, which pins it and its counit; the derived functor of etaleModuleLowerShriek is one”.

Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and set T = |X| \ |U|. Let j_! be a left adjoint of derived restriction (-)|_V : D(𝒪_X) ⥤ D(𝒪_V). If E in D(𝒪_X) is supported on T, then the counit j_!(E|_V) ⟶ E is an isomorphism.

theorem isIso_counit_derivedRestrict_of_cohomologySupportedOn
    {shriekD : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1
        (edsEtale B S hS hsq).2) ⥤ DerivedCategory (Modules.{u, u} B S hS W.1 W.2)}
    (adjShriek : shriekD ⊣ (etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
      (isEtale_edsEtaleHom B S hS hsq)).mapDerivedCategory)
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
    (hE : CohomologySupportedOn B S hS W.1 W.2 (edsComplementPoints B S hS Uo) E) :
    IsIso (adjShriek.counit.app E)

AlgebraicGeometry.Space.isIso_unit_derivedShriek_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedOnComplementClauses.lean, line 399. The attribute's comment: “clause (2)(a): for F in D(O_V) supported on the preimage of T = |X| \ |U| the map F ⟶ (j_!F)|_V, the unit of the adjunction between derived extension by zero and derived restriction, is an isomorphism. j_! is any left adjoint of derived restriction, which pins it and its unit; the derived functor of etaleModuleLowerShriek is one”.

Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and set T = |X| \ |U|. Let j_! be a left adjoint of derived restriction (-)|_V : D(𝒪_X) ⥤ D(𝒪_V). If F in D(𝒪_V) is supported on j^{-1}T, then the unit F ⟶ (j_!F)|_V is an isomorphism.

theorem isIso_unit_derivedShriek_of_cohomologySupportedOn
    {shriekD : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1
        (edsEtale B S hS hsq).2) ⥤ DerivedCategory (Modules.{u, u} B S hS W.1 W.2)}
    (adjShriek : shriekD ⊣ (etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
      (isEtale_edsEtaleHom B S hS hsq)).mapDerivedCategory)
    (F : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1
      (edsEtale B S hS hsq).2))
    (hF : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (edsEtalePreimageComplementPoints B S hS hsq) F) :
    IsIso (adjShriek.unit.app F)

AlgebraicGeometry.Space.isIso_counit_derivedPushforward_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedOnComplementClauses.lean, line 446. The attribute's comment: “clause (2)(b): for F in D(O_V) supported on the preimage of T = |X| \ |U| the map (Rj_F)|_V ⟶ F, the counit of the adjunction between derived restriction and the derived direct image, is an isomorphism. Rj_ is any right adjoint of derived restriction, which pins it and its counit; a total right derived functor of j_* is one, by etaleModulePullbackDerivedPushforwardAdjunction”.

Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and set T = |X| \ |U|. Let Rj_* be a right adjoint of derived restriction (-)|_V : D(𝒪_X) ⥤ D(𝒪_V). If F in D(𝒪_V) is supported on j^{-1}T, then the counit (Rj_*F)|_V ⟶ F is an isomorphism.

theorem isIso_counit_derivedPushforward_of_cohomologySupportedOn
    {RpushD : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1
        (edsEtale B S hS hsq).2) ⥤ DerivedCategory (Modules.{u, u} B S hS W.1 W.2)}
    (adjPush : (etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
      (isEtale_edsEtaleHom B S hS hsq)).mapDerivedCategory ⊣ RpushD)
    (F : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1
      (edsEtale B S hS hsq).2))
    (hF : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (edsEtalePreimageComplementPoints B S hS hsq) F) :
    IsIso (adjPush.counit.app F)

AlgebraicGeometry.Space.isIso_supportedShriekToPushforward_of_supported, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedOnComplementClauses.lean, line 478. The attribute's comment: “clause (2)(c): for F in D(O_V) supported on the preimage of T = |X| \ |U| the comparison j_!F ⟶ Rj_F is an isomorphism. The comparison is supportedShriekToPushforward, the adjunct under derived restriction ⊣ Rj_ of the inverse of the unit F ⟶ (j_!F)|_V, which is invertible by clause (2)(a), isIso_unit_derivedShriek_of_cohomologySupportedOn. j_! and Rj_* are any left and right adjoints of derived restriction”.

Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and set T = |X| \ |U|. Let j_! and Rj_* be a left and a right adjoint of derived restriction (-)|_V : D(𝒪_X) ⥤ D(𝒪_V). If F in D(𝒪_V) is supported on j^{-1}T, then the comparison j_!F ⟶ Rj_*F (AlgebraicGeometry.Space.supportedShriekToPushforward) is an isomorphism.

theorem isIso_supportedShriekToPushforward_of_supported
    {shriekD RpushD : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1
        (edsEtale B S hS hsq).2) ⥤ DerivedCategory (Modules.{u, u} B S hS W.1 W.2)}
    (adjShriek : shriekD ⊣ (etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
      (isEtale_edsEtaleHom B S hS hsq)).mapDerivedCategory)
    (adjPush : (etaleModulePullback.{u, u} B S hS (edsEtaleHom B S hS hsq)
      (isEtale_edsEtaleHom B S hS hsq)).mapDerivedCategory ⊣ RpushD)
    (F : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1
      (edsEtale B S hS hsq).2))
    (hF : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (edsEtalePreimageComplementPoints B S hS hsq) F) :
    IsIso (supportedShriekToPushforward B S hS hsq adjShriek adjPush F
      (isIso_unit_derivedShriek_of_cohomologySupportedOn B S hS hsq adjShriek F hF))

AlgebraicGeometry.Space.isIso_derivedCounit_etaleModuleLowerShriek_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedOnComplementUnconditional.lean, line 130. The attribute's comment: “clause (1)(b): the derived counit j_!(E|_V) ⟶ E is an isomorphism for E supported on |X| \ |U|”.

Stacks 08GG, clause (1)(b). Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and set T = |X| \ |U|. Let E be an object of D(𝒪_X) supported on T. Then the derived counit j_!(E|_V) ⟶ E of the adjunction j_! ⊣ (-)|_V is an isomorphism.

The extension by zero is the one the library constructs, part (1) of Stacks 08GV for it is AlgebraicGeometry.Space.shortExact_edsShriekMayerVietoris, and the vanishing of the restrictions to U and to P = U ×_X V is AlgebraicGeometry.Space.isZero_etaleModulePullback_mapDerivedCategory_of_cohomologySupportedOn. The deduction itself is AlgebraicGeometry.Space.isIso_counit_mapDerivedCategory_of_cohomologySupportedOn.

theorem isIso_derivedCounit_etaleModuleLowerShriek_of_cohomologySupportedOn
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
    (hE : CohomologySupportedOn B S hS W.1 W.2 (edsComplementPoints B S hS Uo) E) :
    IsIso ((NatTrans.mapDerivedCategory
      (edsLowerShriekAdjEtale B S hS hsq).counit).app E)

AlgebraicGeometry.Space.isIso_counit_edsEtale_rightAdjoint_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedPushforwardPerfect.lean, line 267. The attribute's comment: “clause (2)(b): the counit (Rj_F)|_V ⟶ F is an isomorphism for F in D(O_V) supported on j^{-1}T, unconditionally; Rj_ is a right adjoint of derived restriction, given with its adjunction”.

Stacks 08GG, clause (2)(b). Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and set T = |X| \ |U|. For F in D(𝒪_V) supported on j⁻¹T, the counit (Rj_*F)|_V ⟶ F is an isomorphism.

Rj_* is a right adjoint of derived restriction, given with its adjunction. The proof is CategoryTheory.Adjunction.isIso_counit_of_isIso_unit_of_isIso_counit applied to j_! ⊣ (-)|_V ⊣ Rj_*; its three inputs are clause (2)(a) at F and at (Rj_*F)|_V, and clause (1)(b) at Rj_*F, which is supported on T because it vanishes on U (isZero_edsDerivedRestrictOpen_rightAdjoint_of_cohomologySupportedOn).

theorem isIso_counit_edsEtale_rightAdjoint_of_cohomologySupportedOn
    (F : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2))
    (hF : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (edsEtalePreimageComplementPoints B S hS hsq) F) :
    IsIso (adjPush.counit.app F)

AlgebraicGeometry.Space.isIso_unit_edsEtale_rightAdjoint_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedPushforwardPerfect.lean, line 315. The attribute's comment: “clause (1)(a): the unit E ⟶ Rj_(E|_V) is an isomorphism for E in D(O_X) supported on T = |X| \ |U|, unconditionally; Rj_ is a right adjoint of derived restriction, given with its adjunction”.

Stacks 08GG, clause (1)(a). Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and set T = |X| \ |U|. For E in D(𝒪_X) supported on T, the unit E ⟶ Rj_*(E|_V) is an isomorphism.

Its restriction to V is a section of the counit at E|_V, which is invertible by clause (2)(b); both E and Rj_*(E|_V) are supported on T, and a map between such objects which is invertible on V is invertible (isIso_of_isIso_edsDerivedRestrictEtale_map).

theorem isIso_unit_edsEtale_rightAdjoint_of_cohomologySupportedOn
    (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
    (hE : CohomologySupportedOn B S hS W.1 W.2 (edsComplementPoints B S hS Uo) E) :
    IsIso (adjPush.unit.app E)

AlgebraicGeometry.Space.isIso_supportedShriekToPushforward_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedPushforwardPerfect.lean, line 344. The attribute's comment: “clause (2)(c): the comparison j_!F ⟶ Rj_F is an isomorphism for F in D(O_V) supported on j^{-1}T, unconditionally; j_! and Rj_ are the left and right adjoints of derived restriction, given with their adjunctions”.

Stacks 08GG, clause (2)(c). Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and set T = |X| \ |U|. For F in D(𝒪_V) supported on j⁻¹T, the comparison j_!F ⟶ Rj_*F is an isomorphism.

The comparison is the library's AlgebraicGeometry.Space.supportedShriekToPushforward, the adjunct of the inverse of the unit of clause (2)(a); its invertibility is AlgebraicGeometry.Space.isIso_supportedShriekToPushforward with all four of its inputs, clauses (2)(a), (2)(b) and (1)(a) at j_!F and at Rj_*F, now theorems.

theorem isIso_supportedShriekToPushforward_of_cohomologySupportedOn
    (F : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2))
    (hF : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (edsEtalePreimageComplementPoints B S hS hsq) F) :
    IsIso (supportedShriekToPushforward B S hS hsq
      (Adjunction.mapDerivedCategory (edsEtaleShriekAdjunction B S hS hsq)) adjPush F
      (isIso_derivedUnit_edsEtale_of_cohomologySupportedOn B S hS hsq F hF))
Tag 08HB, a lemma

Tag 08HB in the Stacks Project.

AlgebraicGeometry.Space.exists_hom_of_glueData, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisGlueing.lean, line 371. The attribute's comment: “second assertion only (the induced morphism F ⟶ E), for a glued datum (F, f, g) given as a hypothesis and granted the Mayer–Vietoris distinguished triangle of Tag 08GV part (2) at F as hT; the first assertion, existence of the glued object, is NOT covered”.

Stacks 08HB, the second assertion, granted the Mayer–Vietoris distinguished triangle of Stacks 08GV part (2). Let (U ⊆ X, j_V : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S, let P = U ×_X V, write (-)|_Y for restriction along j_Y : Y ⟶ X and let j_{Y!} be a left adjoint of it, extension by zero. Let F be an object of D(𝒪_X) glueing an object A of D(𝒪_U) and an object Bo of D(𝒪_V) along an isomorphism c : A|_P ⟶ Bo|_P: isomorphisms f : F|_U ⟶ A and g : F|_V ⟶ Bo with c = g|_P ∘ f^{-1}|_P, which is the hypothesis hc. Suppose F sits in the Mayer–Vietoris distinguished triangle

j_{P!}F|_P ⟶ j_{U!}F|_U ⊕ j_{V!}F|_V ⟶ F ⟶ (j_{P!}F|_P)[1]

of Stacks 08GV part (2), whose second map is the sum of the two counits and whose first map is built from the canonical comparisons of the iterated restrictions; this is the hypothesis hT. Then for every object E of D(𝒪_X) and all morphisms a : A ⟶ E|_U and b : Bo ⟶ E|_V with a|_P = b|_P ∘ c there is a morphism φ : F ⟶ E whose restriction to U is a ∘ f and whose restriction to V is b ∘ g.

The source's object B of D(𝒪_V) is written Bo here, the letter B being the big fppf site. The first assertion of the source — the existence of a glueing (F, f, g) — is not covered by this statement: F, f and g are hypotheses.

theorem exists_hom_of_glueData
    (adjU : shriekU ⊣ edsRestrictOpen B S hS hsq)
    (adjV : shriekV ⊣ edsRestrictEtale B S hS hsq)
    (adjP : shriekP ⊣ edsRestrictInter B S hS hsq)
    (F E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
    (δ : F ⟶ (shriekP.mapDerivedCategory.obj
      ((edsRestrictInter B S hS hsq).mapDerivedCategory.obj F))⟦(1 : ℤ)⟧)
    (hT : Triangle.mk
        (biprod.lift
          (mayerVietorisGlueMap adjP.mapDerivedCategory adjU.mapDerivedCategory
            (edsDerivedRestrictCompOpen B S hS hsq) F)
          (-(mayerVietorisGlueMap adjP.mapDerivedCategory adjV.mapDerivedCategory
            (edsDerivedRestrictCompEtale B S hS hsq) F)))
        (biprod.desc (adjU.mapDerivedCategory.counit.app F)
          (adjV.mapDerivedCategory.counit.app F)) δ ∈
      distTriang (DerivedCategory (Modules.{u, u} B S hS W.1 W.2)))
    {A : DerivedCategory
      (Modules.{u, u} B S hS (edsOpen B S hS hsq).1 (edsOpen B S hS hsq).2)}
    {Bo : DerivedCategory
      (Modules.{u, u} B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2)}
    (f : (edsRestrictOpen B S hS hsq).mapDerivedCategory.obj F ≅ A)
    (g : (edsRestrictEtale B S hS hsq).mapDerivedCategory.obj F ≅ Bo)
    (c : (edsRestrictFst B S hS hsq).mapDerivedCategory.obj A ≅
      (edsRestrictSnd B S hS hsq).mapDerivedCategory.obj Bo)
    (hc : c.hom = (edsRestrictFst B S hS hsq).mapDerivedCategory.map f.inv ≫
      (edsDerivedRestrictCompOpen B S hS hsq).hom.app F ≫
        (edsDerivedRestrictCompEtale B S hS hsq).inv.app F ≫
        (edsRestrictSnd B S hS hsq).mapDerivedCategory.map g.hom)
    (a : A ⟶ (edsRestrictOpen B S hS hsq).mapDerivedCategory.obj E)
    (b : Bo ⟶ (edsRestrictEtale B S hS hsq).mapDerivedCategory.obj E)
    (hab : (edsRestrictFst B S hS hsq).mapDerivedCategory.map a ≫
        (edsDerivedRestrictCompOpen B S hS hsq).hom.app E =
      c.hom ≫ (edsRestrictSnd B S hS hsq).mapDerivedCategory.map b ≫
        (edsDerivedRestrictCompEtale B S hS hsq).hom.app E) :
    ∃ φ : F ⟶ E,
      (edsRestrictOpen B S hS hsq).mapDerivedCategory.map φ = f.hom ≫ a ∧
        (edsRestrictEtale B S hS hsq).mapDerivedCategory.map φ = g.hom ≫ b

AlgebraicGeometry.Space.exists_glued_object_and_hom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/MayerVietorisGlueingTag.lean, line 245. The attribute's comment: “both assertions, for an elementary distinguished square (U ⊆ X, j_V : V ⟶ X) of algebraic spaces over a scheme S with intersection P = U ×_X V and nothing else bound: for an object A of D(O_U), an object Bo of D(O_V) and an isomorphism c : A|_P ≅ Bo|_P, an object F of D(O_X) with isomorphisms f : F|_U ≅ A and g : F|_V ≅ Bo satisfying c = g|_P ∘ f⁻¹|_P, and, for every object E of D(O_X) and all morphisms a : A ⟶ E|_U and b : Bo ⟶ E|_V with a|_P = b|_P ∘ c, a morphism φ : F ⟶ E whose restriction to U is a ∘ f and whose restriction to V is b ∘ g. The compatibility over P is written with the identifications edsDerivedRestrictCompOpen and edsDerivedRestrictCompEtale of the iterated restrictions with the restriction to P”.

Stacks 08HB. Let (U ⊆ X, j_V : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S, let P = U ×_X V be its intersection and write (-)|_Y for restriction of modules along the étale morphism j_Y : Y ⟶ X. Then an object A of D(𝒪_U), an object Bo of D(𝒪_V) and an isomorphism c : A|_P ⟶ Bo|_P are glued by an object F of D(𝒪_X) together with isomorphisms f : F|_U ⟶ A and g : F|_V ⟶ Bo satisfying c = g|_P ∘ f^{-1}|_P; and moreover, for every object E of D(𝒪_X) and all morphisms a : A ⟶ E|_U and b : Bo ⟶ E|_V with a|_P = b|_P ∘ c, there is a morphism φ : F ⟶ E restricting to a ∘ f on U and to b ∘ g on V.

The glued object is the source's own, the fibre of Rj_{U,*}A ⊕ Rj_{V,*}Bo ⟶ Rj_{P,*}(Bo|_P), built in AlgebraicGeometry.Space.exists_glued_object; the induced morphism is AlgebraicGeometry.Space.exists_hom_of_glueData_of_isElementaryDistinguishedSquare at the canonical extension by zero, whose hypothesis hc is in exactly the shape the first conclusion has. The compatibility over P is written with the identifications AlgebraicGeometry.Space.edsDerivedRestrictCompOpen and …edsDerivedRestrictCompEtale of the iterated restrictions with the restriction to P, which the source writes silently.

The source's object B of D(𝒪_V) is written Bo here, the letter B being the big fppf site.

theorem exists_glued_object_and_hom
    (A : DerivedCategory
      (Modules.{u, u} B S hS (edsOpen B S hS hsq).1 (edsOpen B S hS hsq).2))
    (Bo : DerivedCategory
      (Modules.{u, u} B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2))
    (c : (edsRestrictFst B S hS hsq).mapDerivedCategory.obj A ≅
      (edsRestrictSnd B S hS hsq).mapDerivedCategory.obj Bo) :
    ∃ (F : DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
      (f : (edsRestrictOpen B S hS hsq).mapDerivedCategory.obj F ≅ A)
      (g : (edsRestrictEtale B S hS hsq).mapDerivedCategory.obj F ≅ Bo),
      c.hom = (edsRestrictFst B S hS hsq).mapDerivedCategory.map f.inv ≫
          (edsDerivedRestrictCompOpen B S hS hsq).hom.app F ≫
            (edsDerivedRestrictCompEtale B S hS hsq).inv.app F ≫
            (edsRestrictSnd B S hS hsq).mapDerivedCategory.map g.hom ∧
        ∀ (E : DerivedCategory (Modules.{u, u} B S hS W.1 W.2))
          (a : A ⟶ (edsRestrictOpen B S hS hsq).mapDerivedCategory.obj E)
          (b : Bo ⟶ (edsRestrictEtale B S hS hsq).mapDerivedCategory.obj E),
          (edsRestrictFst B S hS hsq).mapDerivedCategory.map a ≫
              (edsDerivedRestrictCompOpen B S hS hsq).hom.app E =
            c.hom ≫ (edsRestrictSnd B S hS hsq).mapDerivedCategory.map b ≫
              (edsDerivedRestrictCompEtale B S hS hsq).hom.app E →
          ∃ φ : F ⟶ E,
            (edsRestrictOpen B S hS hsq).mapDerivedCategory.map φ = f.hom ≫ a ∧
              (edsRestrictEtale B S hS hsq).mapDerivedCategory.map φ = g.hom ≫ b
Sources

Section75.11 The coherator#

Section 75.11 of the Stacks Project, Tag 08GX. 6 tags here are carried by 17 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.

Tag 08GY, a lemma

Tag 08GY in the Stacks Project.

AlgebraicGeometry.Space.isRightDerivedFunctor_quasicoherentPushforwardMapDerivedCategory, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/AffineDerivedQuasicoherentPushforward.lean, line 133. The attribute's comment: “the derived functor”.

[Stacks, Tag 08GY], the derived functor. Let f : X ⟶ Y be an affine morphism of algebraic spaces over a scheme S. Then direct image defines a derived functor f_* : D(QCoh(𝒪_X)) ⥤ D(QCoh(𝒪_Y)): the functor induced on the unbounded derived categories by the exact functor AlgebraicGeometry.Space.quasicoherentPushforward is a total right derived functor of it. No resolutions are involved, and the derived functor is computed by applying f_* to a representative complex, which is how the source states it.

The structure map is CategoryTheory.Functor.mapDerivedCategoryFactorsh.inv, which exhibits the induced functor as a lift through the localization DerivedCategory.Qh; a lift of a functor that inverts the quasi-isomorphisms is a right derived functor for the inverse of the lifting isomorphism.

theorem isRightDerivedFunctor_quasicoherentPushforwardMapDerivedCategory (f : X ⟶ Y)
    (hf : IsAffineHom B S hS f.hom) :
    letI := preservesFiniteColimitsQuasicoherentPushforwardOfIsAffineHom B S hS f hf
    Functor.IsRightDerivedFunctor
      (quasicoherentPushforward B S hS f
        (pushforwardPreservesQuasicoherence_of_isAffineHom B S hS f hf)).mapDerivedCategory
      (quasicoherentPushforward B S hS f
          (pushforwardPreservesQuasicoherence_of_isAffineHom B S hS f
            hf)).mapDerivedCategoryFactorsh.inv
      (HomotopyCategory.quasiIso (QuasicoherentSheaves.{u, u} B S hS X.1 X.2)
        (ComplexShape.up ℤ))

AlgebraicGeometry.Space.derivedQuasicoherentComparisonSquareOfIsAffineHom, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/AffineDerivedQuasicoherentPushforward.lean, line 198. The attribute's comment: “the commuting square”.

[Stacks, Tag 08GY], the commuting square. Let f : X ⟶ Y be an affine morphism of algebraic spaces over a scheme S, and let Rf_* be a total right derived functor of the direct image of all 𝒪_X-modules, with derivation unit α. Then the square

D(QCoh(𝒪_X)) ⟶ D_QCoh(𝒪_X) ⟶^{Rf_*} D_QCoh(𝒪_Y), D(QCoh(𝒪_X)) ⟶^{f_*} D(QCoh(𝒪_Y)) ⟶ D_QCoh(𝒪_Y)

commutes, its rows being the comparison functor of [Stacks, Tag 08F1] and its left edge the derived functor of AlgebraicGeometry.Space.isRightDerivedFunctor_quasicoherentPushforwardMapDerivedCategory.

This is AlgebraicGeometry.Space.derivedQuasicoherentComparisonSquare with both of its inputs supplied: right exactness of the quasi-coherent direct image by AlgebraicGeometry.Space.preservesFiniteColimitsQuasicoherentPushforwardOfIsAffineHom, and that a complex of quasi-coherent modules computes its derived direct image by AlgebraicGeometry.Space.isIso_derivedModulePushforwardUnit_app_of_isQuasicoherentOnSite.

noncomputable def derivedQuasicoherentComparisonSquareOfIsAffineHom :
    letI := preservesFiniteColimitsQuasicoherentPushforwardOfIsAffineHom B S hS f hf
    (quasicoherentPushforward B S hS f
          (pushforwardPreservesQuasicoherence_of_isAffineHom B S hS f hf)).mapDerivedCategory ⋙
        quasicoherentDerivedComparisonSchemeUniverse B S hS Y.1 Y.2 ⋙
          (DerivedCategoryB.derivedCategoryB
            (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
              (Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS Y.1 Y.2).O))).ι ≅
      quasicoherentDerivedComparisonSchemeUniverse B S hS X.1 X.2 ⋙
        (DerivedCategoryB.derivedCategoryB
          (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
            (Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X.1 X.2).O))).ι ⋙
        Rf
Tag 08GZ, a lemma

Tag 08GZ in the Stacks Project.

AlgebraicGeometry.Space.flatPushforwardDerivedCoheratorIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/CoheratorFlatPushforward.lean, line 303. The attribute's comment: “granted Stacks 03M9 that the direct image preserves quasi-coherence, Stacks 03GA that the inverse image does, Stacks 077V part (1) that QCoh(𝒪_X) is Grothendieck abelian, and flatness in the ringed-topos form of Stacks 04JC”.

Stacks Project, Tag 08GZ. Let f : X ⟶ Y be a flat morphism of algebraic spaces whose direct image and inverse image preserve quasi-coherence. Let Rf_* be a total right derived functor of the direct image of all modules, let RQ_X, RQ_Y be total right derived functors of coherators of X and Y, and let Φ be a total right derived functor of the direct image restricted to quasi-coherent modules. Then Rf_* ⋙ RQ_Y ≅ RQ_X ⋙ Φ.

Both sides are right adjoint to the same functor D(QCoh(𝒪_Y)) ⥤ D(𝒪_X): flatness makes the inverse image exact, on all modules and on quasi-coherent modules alike, so it induces functors of derived categories with no derivation, and these compose to one functor in two ways which agree because the inverse image commutes with the inclusion of the quasi-coherent modules already before deriving.

noncomputable def flatPushforwardDerivedCoheratorIso
    (hpush : PushforwardPreservesQuasicoherence B S hS f)
    (Φ : DerivedCategory (QuasicoherentSheaves.{u, u} B S hS X.1 X.2) ⥤
      DerivedCategory (QuasicoherentSheaves.{u, u} B S hS Y.1 Y.2))
    (ΦUnit : (quasicoherentPushforward B S hS f hpush).mapHomologicalComplex
        (ComplexShape.up ℤ) ⋙ QY ⟶ QX ⋙ Φ)
    [Φ.IsRightDerivedFunctor ΦUnit (HomologicalComplex.quasiIso
      (QuasicoherentSheaves.{u, u} B S hS X.1 X.2) (ComplexShape.up ℤ))] :
    Rf ⋙ RQY ≅ RQX ⋙ Φ

AlgebraicGeometry.Space.flatPushforwardDerivedCoheratorIsoOfForallAffine, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/CoheratorFlatPushforward.lean, line 393. The attribute's comment: “in the binders of the source statement, granted the affine-base case of the preservation of quasi-coherence by the direct image, Stacks 03GA that the inverse image preserves quasi-coherence, Stacks 077V part (1) that QCoh(𝒪_X) is Grothendieck abelian, and flatness in the ringed-topos form of Stacks 04JC”.

Stacks Project, Tag 08GZ, in the binders of the source statement. Let f : X ⟶ Y be a quasi-compact, quasi-separated and flat morphism of algebraic spaces whose inverse image preserves quasi-coherence. With Rf_*, RQ_X, RQ_Y and Φ as above, Rf_* ⋙ RQ_Y ≅ RQ_X ⋙ Φ.

Quasi-compactness and quasi-separatedness enter exactly where the source puts them: they are what makes the direct image preserve quasi-coherence, by the reduction of Stacks 03M9 whose residual affine-base case is haffine.

noncomputable def flatPushforwardDerivedCoheratorIsoOfForallAffine
    (hfqc : IsQuasiCompact B S hS f.hom) (hfqs : IsQuasiSeparated B S hS f.hom)
    (haffine : ∀ F : Modules.{u, u} B S hS X.1 X.2, F.IsQuasicoherentOnSite →
      ∀ V : SmallEtale B S hS Y.1,
        IsAffine ((BigFppfOver.toScheme B S hS).obj ((SmallEtale.toOver B S hS Y.1).obj V)) →
        IsQuasiCompact B S hS (chartBaseChangeProjection B S hS f V).hom →
        IsQuasiSeparated B S hS (chartBaseChangeProjection B S hS f V).hom →
        ((chartLocalizedModulePushforward B S hS f V).obj
          ((moduleChartBaseChangeRestriction B S hS f V).obj F)).IsQuasicoherentOnSite)
    (Φ : DerivedCategory (QuasicoherentSheaves.{u, u} B S hS X.1 X.2) ⥤
      DerivedCategory (QuasicoherentSheaves.{u, u} B S hS Y.1 Y.2))
    (ΦUnit : (quasicoherentPushforward B S hS f
        (pushforwardPreservesQuasicoherence_of_forall_affine B S hS f hfqc hfqs
          haffine)).mapHomologicalComplex (ComplexShape.up ℤ) ⋙ QY ⟶ QX ⋙ Φ)
    [Φ.IsRightDerivedFunctor ΦUnit (HomologicalComplex.quasiIso
      (QuasicoherentSheaves.{u, u} B S hS X.1 X.2) (ComplexShape.up ℤ))] :
    Rf ⋙ RQY ≅ RQX ⋙ Φ

AlgebraicGeometry.Space.derivedModulePushforwardCompDerivedCoheratorIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/CoheratorFlatPushforwardQcqs.lean, line 326. The attribute's comment: “RQ_Y ∘ Rf_* = Φ ∘ RQ_X for a flat, quasi-compact, quasi-separated morphism”.

The derived coherator commutes with the direct image along a flat morphism. Let f : X ⟶ Y be a quasi-compact, quasi-separated and flat morphism of algebraic spaces over S, and let Φ : D(QCoh(𝒪_X)) ⥤ D(QCoh(𝒪_Y)) be the right derived functor of f_* : QCoh(𝒪_X) ⥤ QCoh(𝒪_Y). Then RQ_Y ∘ Rf_* = Φ ∘ RQ_X, as a natural isomorphism Rf_* ⋙ RQ_Y ≅ RQ_X ⋙ Φ.

Here Rf_* is AlgebraicGeometry.Space.derivedModulePushforward, RQ_X and RQ_Y are AlgebraicGeometry.Space.derivedCoherator, and Φ is AlgebraicGeometry.Space.derivedQuasicoherentPushforward at the preservation of quasi-coherence of Stacks 03M9.

def derivedModulePushforwardCompDerivedCoheratorIso (f : X ⟶ Y)
    (hfqc : IsQuasiCompact B S hS f.hom) (hfqs : IsQuasiSeparated B S hS f.hom)
    (hflat : IsFlat B S hS f.hom) :
    derivedModulePushforward B S hS f ⋙ derivedCoherator B S hS Y.1 Y.2 ≅
      derivedCoherator B S hS X.1 X.2 ⋙ derivedQuasicoherentPushforward B S hS f
        (pushforwardPreservesQuasicoherence_of_qcqs B S hS f hfqc hfqs)
Tag 08H0, a lemma

Tag 08H0 in the Stacks Project.

AlgebraicGeometry.Space.inclusionAdjunctionGlobalSectionsAssociated, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/AffineCoheratorGlobalSections.lean, line 171. The attribute's comment: “(1): the coherator of an affine algebraic space is the associated module of the global sections; carried are the associated-module equivalence Mod(A) ≌ QCoh(O_X) of the affine case of Stacks 03DX(2) and its adjunction to global sections (Stacks 01BH(4)), neither of which this development has on the small etale site of an algebraic space”.

Stacks 08H0 (1). Let X be an affine algebraic space and A = Γ(X, 𝒪_X). The functor sending an 𝒪_X-module 𝓕 to the quasi-coherent 𝒪_X-module associated to the A-module Γ(X, 𝓕) is a right adjoint of the inclusion QCoh(𝒪_X) ⥤ Mod(𝒪_X); that is, it is a coherator of X.

Carried: the associated-module equivalence assoc : Mod(A) ≌ QCoh(𝒪_X) of the affine case of Stacks 03DX (2) and its adjunction adjAssoc to global sections, Stacks 01BH (4). See "What is carried, and why it is an input and not the conclusion" in the module documentation.

The proof is the source's, and is the one the scheme analogue Stacks 08D9 (1) uses: composing the adjunction assoc.inverse ⊣ assoc.functor of the equivalence with adjAssoc gives assoc.inverse ⋙ assoc.functor ⋙ ι ⊣ Γ(X, -) ⋙ assoc.functor, and the left-hand side is ι by the counit of the equivalence.

def inclusionAdjunctionGlobalSectionsAssociated (_hAffine : IsAffineSpace B S hS F) :
    (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, m}
      ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS F hF).O))).ι ⊣
        moduleGlobalSectionsSmallEtale.{u, m} B S hS F hF ⋙ assoc.functor

AlgebraicGeometry.Space.coheratorIsoAssociatedGlobalSections, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/AffineCoheratorGlobalSections.lean, line 199. The attribute's comment: “(1): every coherator of an affine algebraic space is naturally the associated module of the global sections; carried are a coherator with its adjunction (Stacks 077V(2), which the development has only as an existence statement) and the associated-module equivalence Mod(A) ≌ QCoh(O_X) of the affine case of Stacks 03DX(2) with its adjunction to global sections”.

Stacks 08H0 (1). Let X be an affine algebraic space and A = Γ(X, 𝒪_X). Every coherator Q_X : Mod(𝒪_X) ⥤ QCoh(𝒪_X) of X — every right adjoint of the inclusion QCoh(𝒪_X) ⥤ Mod(𝒪_X), which is what Stacks 077V (2) produces — is naturally isomorphic to the functor sending 𝓕 to the quasi-coherent 𝒪_X-module associated to the A-module Γ(X, 𝓕).

Carried: a coherator Q with its adjunction adjQ, and the associated-module equivalence; see "What is carried, and why it is an input and not the conclusion" in the module documentation. Both sides are right adjoints of the inclusion, by adjQ and by AlgebraicGeometry.Space.inclusionAdjunctionGlobalSectionsAssociated, and a right adjoint is unique up to a unique natural isomorphism.

def coheratorIsoAssociatedGlobalSections
    (Q : Modules.{u, m} B S hS F hF ⥤ QuasicoherentSheaves.{u, m} B S hS F hF)
    (adjQ : (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, m}
      ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS F hF).O))).ι ⊣ Q)
    (hAffine : IsAffineSpace B S hS F) :
    Q ≅ moduleGlobalSectionsSmallEtale.{u, m} B S hS F hF ⋙ assoc.functor

AlgebraicGeometry.Space.derivedCoheratorIsoAssociatedDerivedGlobalSections, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/AffineDerivedCoheratorGlobalSections.lean, line 205. The attribute's comment: “(2): the derived coherator of an affine algebraic space is the associated complex of the derived global sections; carried are a coherator with its adjunction (Stacks 077V(2), which the development has only as an existence statement) and the associated-module equivalence Mod(A) ≌ QCoh(O_X) of the affine case of Stacks 03DX(2) with its adjunction to global sections”.

Let X be an affine algebraic space and A = Γ(X, 𝒪_X). The derived coherator RQ_X : D(𝒪_X) ⥤ D(QCoh(𝒪_X)) sends an object E of D(𝒪_X) to the complex of quasi-coherent 𝒪_X-modules associated to the object RΓ(X, E) of D(A).

def derivedCoheratorIsoAssociatedDerivedGlobalSections (hAffine : IsAffineSpace B S hS F) :
    letI := modulesAbelianSmallEtale B S hS F hF
    letI := quasicoherentSheavesAbelianSmallEtale B S hS F hF
    letI := modulesHasDerivedCategorySmallEtale B S hS F hF
    letI := quasicoherentSheavesHasDerivedCategorySmallEtale B S hS F hF
    letI := additive_assoc_functor B S hS F hF assoc adjAssoc
    letI := additive_coherator B S hS F hF Q adjQ
    letI := isGrothendieckAbelian_modules B S hS F hF
    derivedCoheratorSmallEtale B S hS F hF Q adjQ ≅
      derivedModuleGlobalSectionsSmallEtale B S hS F hF ⋙ assoc.functor.mapDerivedCategory

AlgebraicGeometry.Space.inclusionAdjunctionGlobalSectionsAssociated_of_isAffineSpace, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/AffineSpaceCoheratorAssociatedModule.lean, line 196. The attribute's comment: “part (1)”.

Stacks 08H0 (1). Let X be an affine algebraic space over a scheme S and set A = Γ(X, 𝒪_X). The functor sending an 𝒪_X-module 𝓕 to the quasi-coherent 𝒪_X-module associated to the A-module Γ(X, 𝓕) is a right adjoint of the inclusion QCoh(𝒪_X) ⥤ Mod(𝒪_X); that is, it is a coherator of X in the sense of Stacks 077V (2).

The proof is the source's: composing the adjunction (-)^~ ⋙ ι ⊣ Γ(X, -) of the affine case of Stacks 01BH (4) with the adjunction ((-)^~)^{-1} ⊣ (-)^~ of the associated-module equivalence gives ((-)^~)^{-1} ⋙ (-)^~ ⋙ ι ⊣ Γ(X, -) ⋙ (-)^~, and the left-hand side is ι by the counit of the equivalence.

def inclusionAdjunctionGlobalSectionsAssociated_of_isAffineSpace :
    (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
      ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS F hF).O))).ι ⊣
      affineSpaceGlobalSections B S hS F hF hAffine ⋙
        (affineSpaceAssociatedModuleEquivalence B S hS F hF hAffine).functor

AlgebraicGeometry.Space.coheratorIsoGlobalSectionsAssociated_of_isAffineSpace, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/AffineSpaceCoheratorAssociatedModule.lean, line 225. The attribute's comment: “part (1)”.

Stacks 08H0 (1). Let X be an affine algebraic space over a scheme S and set A = Γ(X, 𝒪_X). The coherator Q_X : Mod(𝒪_X) ⥤ QCoh(𝒪_X) of Stacks 077V (2) is naturally isomorphic to the functor sending 𝓕 to the quasi-coherent 𝒪_X-module associated to the A-module Γ(X, 𝓕).

Both are right adjoints of the inclusion QCoh(𝒪_X) ⥤ Mod(𝒪_X) — the coherator by AlgebraicGeometry.Space.coheratorAdjunction and the other by AlgebraicGeometry.Space.inclusionAdjunctionGlobalSectionsAssociated_of_isAffineSpace — and a right adjoint is unique up to a unique natural isomorphism.

def coheratorIsoGlobalSectionsAssociated_of_isAffineSpace :
    coherator B S hS F hF ≅
      affineSpaceGlobalSections B S hS F hF hAffine ⋙
        (affineSpaceAssociatedModuleEquivalence B S hS F hF hAffine).functor

AlgebraicGeometry.Space.derivedCoheratorIsoComparisonInv_of_isAffineSpace, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/AffineSpaceCoheratorComparisonInverse.lean, line 46. The attribute's comment: “part (3)”.

Stacks 08H0 (3). On an affine algebraic space the derived coherator RQ_X, restricted to the complexes of 𝒪_X-modules with quasi-coherent cohomology, is naturally isomorphic to the inverse of the comparison functor i_X : D(QCoh(𝒪_X)) ⥤ D_QCoh(𝒪_X) of Stacks 08F1.

def derivedCoheratorIsoComparisonInv_of_isAffineSpace (hAffine : IsAffineSpace B S hS F) :
    letI := isEquivalence_quasicoherentDerivedComparison_of_isAffineSpace B S hS F hF hAffine
    (DerivedCategoryB.derivedCategoryB
        (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf
            (smallEtaleRingedSite B S hS F hF).O)))).ι ⋙ derivedCoherator B S hS F hF ≅
      (quasicoherentDerivedComparison B S hS F hF).inv

AlgebraicGeometry.Space.derivedCoheratorIsoDerivedGlobalSectionsAssociated_of_isAffineSpace, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/AffineSpaceDerivedCoheratorAssociatedModule.lean, line 100. The attribute's comment: “part (2)”.

Stacks 08H0 (2). Let X be an affine algebraic space over a scheme S and set A = Γ(X, 𝒪_X). The derived coherator RQ_X : D(𝒪_X) ⥤ D(QCoh(𝒪_X)) sends an object E of D(𝒪_X) to the complex of quasi-coherent 𝒪_X-modules associated to the object RΓ(X, E) of D(A).

def derivedCoheratorIsoDerivedGlobalSectionsAssociated_of_isAffineSpace :
    derivedCoherator B S hS F hF ≅
      affineSpaceDerivedGlobalSections B S hS F hF hAffine ⋙
        (affineSpaceAssociatedModuleEquivalence B S hS F hF hAffine).functor.mapDerivedCategory
Tag 09TG, a lemma

Tag 09TG in the Stacks Project.

AlgebraicGeometry.Space.quasicoherentDerivedComparison_isEquivalence_of_affineEtaleDerivedPushforwardSquareCommutes, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/DerivedCoheratorEquivalence.lean, line 88. The attribute's comment: “equivalence clause”.

Let X be a quasi-compact and quasi-separated algebraic space over S. Suppose that for every étale morphism j : V ⟶ W with W ⊆ X a quasi-compact open and V affine, the right derived functor Φ of j_* : QCoh(𝒪_V) ⥤ QCoh(𝒪_W) fits into the commutative square i_W ∘ Φ ≅ Rj_* ∘ i_V (AlgebraicGeometry.Space.ExistsAffineEtaleDerivedPushforwardSquare). Then the comparison functor i_X : D(QCoh(𝒪_X)) ⥤ D_QCoh(𝒪_X) of Stacks 08F1 is an equivalence.

theorem quasicoherentDerivedComparison_isEquivalence_of_affineEtaleDerivedPushforwardSquareCommutes
    (hXqc : IsQuasiCompactSpace B S hS X.1) (hXqs : IsAbsolutelyQuasiSeparated B S hS hZ X.1)
    (h : ExistsAffineEtaleDerivedPushforwardSquare B S hS X.1 X.2) :
    (quasicoherentDerivedComparison B S hS X.1 X.2).IsEquivalence

AlgebraicGeometry.Space.derivedCoherator_isoInv, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/DerivedCoheratorQuasiInverse.lean, line 366. The attribute's comment: “quasi-inverse clause, given the equivalence”.

[Stacks, Tag 09TG], quasi-inverse clause. Let X be an algebraic space whose comparison functor i_X : D(QCoh(𝒪_X)) ⥤ D_QCoh(𝒪_X) of Stacks 08F1 is an equivalence, and let RQ_X be any total right derived functor of a coherator C_X of X. Then the quasi-inverse of i_X is RQ_X restricted to the complexes with quasi-coherent cohomology.

AlgebraicGeometry.Space.comparisonDerivedCoheratorAdjunction exhibits that restriction as a right adjoint of i_X, the inverse of an equivalence is another, and a right adjoint is unique up to a unique natural isomorphism.

This is the second clause of the conclusion of [Stacks, Tag 09TG], deduced from the first clause rather than from the tag's affine-étale hypothesis AlgebraicGeometry.Space.AffineEtaleDerivedPushforwardCompatible; the first clause — that the comparison functor is an equivalence — is the source's induction over the elementary distinguished squares of a quasi-compact, quasi-separated algebraic space, and is not proved here.

def derivedCoherator_isoInv
    [(quasicoherentDerivedComparison B S hS F hF).IsEquivalence] :
    (DerivedCategoryB.derivedCategoryB
        (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
          ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS F hF).O)))).ι ⋙ RQ ≅
      (quasicoherentDerivedComparison B S hS F hF).inv
Tag 08H1, a proposition

Tag 08H1 in the Stacks Project.

AlgebraicGeometry.Space.quasicoherentDerivedComparison_isEquivalence_of_isAffineHom_diag, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/DerivedCoheratorEquivalence.lean, line 129. The attribute's comment: “equivalence”.

On a quasi-compact algebraic space with affine diagonal over ℤ the comparison functor i_X : D(QCoh(𝒪_X)) ⥤ D_QCoh(𝒪_X) of Stacks 08F1 is an equivalence.

theorem quasicoherentDerivedComparison_isEquivalence_of_isAffineHom_diag
    (hXqc : IsQuasiCompactSpace B S hS X.1)
    (hXdiag : IsAffineHom B (⊤_ Scheme.{u}) hZ (diag (viewOverIntegers B S hS hZ X.1))) :
    (quasicoherentDerivedComparison B S hS X.1 X.2).IsEquivalence

AlgebraicGeometry.Space.exists_equivalence_functor_eq_and_inverse_eq_derivedCoherator, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/DerivedCoheratorEquivalence.lean, line 202. The attribute's comment: “equivalence with quasi-inverse RQ_X”.

Let X be a quasi-compact algebraic space with affine diagonal over ℤ, C_X a coherator of X and RQ_X a total right derived functor of it. Then the comparison functor i_X : D(QCoh(𝒪_X)) ⥤ D_QCoh(𝒪_X) of Stacks 08F1 is an equivalence with quasi-inverse RQ_X restricted to D_QCoh(𝒪_X): there is an equivalence whose functor is i_X and whose inverse is J ⋙ RQ_X, for J : D_QCoh(𝒪_X) ⥤ D(𝒪_X) the inclusion.

theorem exists_equivalence_functor_eq_and_inverse_eq_derivedCoherator :
    ∃ e : DerivedCategory (QuasicoherentSheaves.{u, u} B S hS X.1 X.2) ≌
        QuasicoherentDerivedCategory.{u, u} B S hS X.1 X.2,
      e.functor = quasicoherentDerivedComparison B S hS X.1 X.2 ∧
        e.inverse =
          (DerivedCategoryB.derivedCategoryB
            (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
              ((Stacks.SheafOfModules.Tensor.ringSheaf
                (smallEtaleRingedSite B S hS X.1 X.2).O)))).ι ⋙ RQ
Tag 0CSR, a lemma

Tag 0CSR in the Stacks Project.

AlgebraicGeometry.Space.derivedQuasicoherentPushforwardSquare, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/DerivedPushforwardQuasicoherentSquareTag.lean, line 112.

[Stacks, Tag 0CSR]. Let f : X ⟶ Y be a morphism of algebraic spaces over a scheme S, with X and Y quasi-compact with affine diagonal over ℤ. Let Φ be a right derived functor of f_* : QCoh(𝒪_X) ⥤ QCoh(𝒪_Y) with unit αΦ, and Rf_* a right derived functor of the direct image of all modules with unit α. Then the square

D(QCoh(𝒪_X)) ⟶ D_QCoh(𝒪_X) ⟶^{Rf_*} D_QCoh(𝒪_Y), D(QCoh(𝒪_X)) ⟶^{Φ} D(QCoh(𝒪_Y)) ⟶ D_QCoh(𝒪_Y)

commutes, its rows being the comparison functors of [Stacks, Tag 08F1]; it is stated after the fully faithful inclusion D_QCoh(𝒪_Y) ⥤ D(𝒪_Y), as for [Stacks, Tag 08GY].

f_* preserves quasi-coherence because f is quasi-compact and quasi-separated ([Stacks, Tag 03M9]), by AlgebraicGeometry.Space.pushforwardPreservesQuasicoherence_of_isQuasiCompactWithAffineDiagonal. The isomorphism is the canonical comparison of the two right derived functors.

def derivedQuasicoherentPushforwardSquare {X Y : AlgebraicSpaces B S hS} (f : X ⟶ Y)
    (hXqc : IsQuasiCompactSpace B S hS X.1)
    (hXdiag : IsAffineHom B (⊤_ Scheme.{u}) hZ (diag (viewOverIntegers B S hS hZ X.1)))
    (hYqc : IsQuasiCompactSpace B S hS Y.1)
    (hYdiag : IsAffineHom B (⊤_ Scheme.{u}) hZ (diag (viewOverIntegers B S hS hZ Y.1)))
    (Φ : DerivedCategory (QuasicoherentSheaves.{u, u} B S hS X.1 X.2) ⥤
      DerivedCategory (QuasicoherentSheaves.{u, u} B S hS Y.1 Y.2))
    (αΦ : (quasicoherentPushforward B S hS f
        (pushforwardPreservesQuasicoherence_of_isQuasiCompactWithAffineDiagonal B S hS hZ f
          ⟨hXqc, hXdiag⟩ ⟨hYqc, hYdiag⟩)).mapHomotopyCategory (ComplexShape.up ℤ) ⋙
      DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ Φ)
    [Φ.IsRightDerivedFunctor αΦ
      (HomotopyCategory.quasiIso (QuasicoherentSheaves.{u, u} B S hS X.1 X.2) (ComplexShape.up ℤ))]
    (Rf : DerivedCategory (Modules.{u, u} B S hS X.1 X.2) ⥤
      DerivedCategory (Modules.{u, u} B S hS Y.1 Y.2))
    (α : (modulePushforward B S hS f).mapHomotopyCategory (ComplexShape.up ℤ) ⋙
      DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ Rf)
    [Rf.IsRightDerivedFunctor α
      (HomotopyCategory.quasiIso (Modules.{u, u} B S hS X.1 X.2) (ComplexShape.up ℤ))] :
    Φ ⋙ quasicoherentDerivedComparisonSchemeUniverse B S hS Y.1 Y.2 ⋙
        (DerivedCategoryB.derivedCategoryB
          (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
            (Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS Y.1 Y.2).O))).ι ≅
      quasicoherentDerivedComparisonSchemeUniverse B S hS X.1 X.2 ⋙
        (DerivedCategoryB.derivedCategoryB
          (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
            (Stacks.SheafOfModules.Tensor.ringSheaf
              (smallEtaleRingedSite B S hS X.1 X.2).O))).ι ⋙ Rf
Sources

Section75.12 The coherator for Noetherian spaces#

Section 75.12 of the Stacks Project, Tag 09TH. 6 tags here are carried by 9 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.

Tag 09TI, a lemma

Tag 09TI in the Stacks Project.

AlgebraicGeometry.exists_filtered_colimit_pushforwards_artinian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Cohomology/InjectiveQcoh/ArtinianPushforwardColimit.lean, line 735.

Stacks Project, Tag 09TI. An injective quasi-coherent module on a Noetherian affine scheme is a filtered colimit of pushforwards of coherent modules from Artinian affine schemes.

public theorem exists_filtered_colimit_pushforwards_artinian
    (S : Scheme.{u}) [IsAffine S] [IsLocallyNoetherian S]
    (J : (SheafOfModules.isQuasicoherent S.ringCatSheaf).FullSubcategory)
    [Injective J] :
    ∃ (I : Type u) (inst : SmallCategory I),
      letI := inst
      ∃ (_ : IsFiltered I)
        (D : I ⥤ (SheafOfModules.isQuasicoherent S.ringCatSheaf).FullSubcategory)
        (φ : D ⟶ (Functor.const I).obj J),
        (∀ i, ∃ (R : CommRingCat.{u}) (hR : IsArtinianRing R),
          letI := hR
          ∃ (f : Spec R ⟶ S) (G : (Spec R).Modules),
            G.IsCoherent ∧
              Nonempty ((D.obj i).obj ≅ (Scheme.Modules.pushforward f).obj G)) ∧
          Nonempty (IsColimit (Cocone.mk J φ))
Tag 09TJ, a lemma

Tag 09TJ in the Stacks Project.

AlgebraicGeometry.Space.exists_filtered_colimit_artinian_pushforwards_retract, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Cohomology/InjectiveQcoh/InjectiveQcohSpace.lean, line 338. The attribute's comment: “Granted four inputs at the affine surjective étale chart j : U ⟶ X of Stacks 03H6, bundled as the hypothesis ChartArtinianPresentation: (1) Stacks 03M9 for j, that j_* of a quasi-coherent module is quasi-coherent, which this library has only granted the exact sequence of Stacks 03M8 over the affine charts of the target; (2) Stacks 077V for the chart, that QCoh(𝒪_U) has enough injectives, which this library has only granted the four closure and smallness inputs of Spaces/QuasicoherentGrothendieck.lean; (3) Stacks 07U6 for j read in QCoh, that j_* preserves filtered colimits of quasi-coherent modules — the library's Stacks 07U6 is about R^p f_* of abelian sheaves and does not transport without the missing identification of colimits in QCoh with the ambient ones; and (4) Stacks 09TI transported to the chart. Input (4) is the real gap: Stacks 09TI is formalized here as AlgebraicGeometry.exists_filtered_colimit_pushforwards_artinian, but in Zariski vocabulary for the quasi-coherent modules on the scheme U, whereas the chart's QCoh is on the small étale site, and the comparison of the two is Stacks 03DX, which this library does not have. Granted those four the conclusion is proved in full and is not weakened: the production of the affine surjective étale chart from Stacks 03H6, the local Noetherianity of its source, the quasi-coherence of j^*J, the monomorphy of the transposed map J ⟶ j_*J' — by faithfulness of j^* along a surjective étale chart, which is unconditional here — the splitting of that monomorphism by injectivity of J, which is the whole content of Stacks 09TJ beyond Stacks 09TI, and the identification of j_* of the colimit as a filtered colimit of direct images along the composites Z_i ⟶ U ⟶ X are all proved here.”.

Stacks 09TJ, granted AlgebraicGeometry.Space.ChartArtinianPresentation at the affine surjective étale chart of Stacks 03H6.

Let X be a Noetherian algebraic space over a scheme S of a big fppf site. Every injective object J of the category QCoh(𝒪_X) of quasi-coherent modules on the small étale site of X is a direct summand — a retract — of a filtered colimit of quasi-coherent modules of the form (Z_i ⟶ X)_* 𝒢_i with Z_i the spectrum of an Artinian ring and 𝒢_i a coherent module on Z_i.

theorem exists_filtered_colimit_artinian_pushforwards_retract
    (hZ : B.Contains (⊤_ Scheme.{u})) (X : AlgebraicSpaces B S hS)
    (hX : IsNoetherian B S hS hZ X.1)
    (hchart : ∀ (U : BigFppfOver B S hS)
      (j : schemeSpace U ⟶ X),
      IsAffine ((BigFppfOver.toScheme B S hS).obj U) →
      IsLocallyNoetherian ((BigFppfOver.toScheme B S hS).obj U) →
      (MorphismProperty.inverseImage (@Surjective.{u} : MorphismProperty Scheme.{u})
        (BigFppfOver.toScheme B S hS)).presheaf j.hom →
      IsEtale B S hS j.hom →
      ChartArtinianPresentation B S hS X
        (schemeSpace U) j)
    (J : QuasicoherentSheaves.{u, u} B S hS X.1 X.2) [Injective J] :
    ∃ (I : Type u) (inst : SmallCategory I),
      letI := inst
      ∃ (_ : IsFiltered I) (D : I ⥤ QuasicoherentSheaves.{u, u} B S hS X.1 X.2)
        (c : Cocone D),
        (∀ i, IsArtinianPushforward B S hS X (D.obj i).obj) ∧
          Nonempty (IsColimit c) ∧ Nonempty (Retract J c.pt)

AlgebraicGeometry.Space.exists_filtered_colimit_artinian_pushforwards_retract_of_isNoetherian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Cohomology/InjectiveQcoh/UnconditionalArtinianPresentation.lean, line 98.

Stacks 09TJ. Let X be a Noetherian algebraic space over a scheme S of a big fppf site. Every injective object J of the category QCoh(𝒪_X) of quasi-coherent modules on the small étale site of X is a direct summand — a retract — of a filtered colimit of quasi-coherent modules (Z_i ⟶ X)_*𝒢_i with Z_i the spectrum of an Artinian ring and 𝒢_i coherent on Z_i.

theorem exists_filtered_colimit_artinian_pushforwards_retract_of_isNoetherian
    (hZ : B.Contains (⊤_ Scheme.{u})) (X : AlgebraicSpaces B S hS)
    (hX : IsNoetherian B S hS hZ X.1)
    (J : QuasicoherentSheaves.{u, u} B S hS X.1 X.2) [Injective J] :
    ∃ (I : Type u) (inst : SmallCategory I),
      letI := inst
      ∃ (_ : IsFiltered I) (D : I ⥤ QuasicoherentSheaves.{u, u} B S hS X.1 X.2)
        (c : Cocone D),
        (∀ i, IsArtinianPushforward B S hS X (D.obj i).obj) ∧
          Nonempty (IsColimit c) ∧ Nonempty (Retract J c.pt)
Tag 09TK, a lemma

Tag 09TK in the Stacks Project.

AlgebraicGeometry.Space.injective_quasicoherentPushforward_obj_of_isFlat, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/InjectiveQuasicoherentPushforwardOfFlat.lean, line 112.

Stacks 09TK. Let f : X ⟶ Y be a flat, quasi-compact and quasi-separated morphism of algebraic spaces over S. If J is an injective object of QCoh(𝒪_X), then f_*J is an injective object of QCoh(𝒪_Y).

Since f is quasi-compact and quasi-separated, f_* preserves quasi-coherence (Stacks 03M9); its left adjoint f^* transforms injections into injections because f is flat, so the criterion of Stacks 015Z applies.

theorem injective_quasicoherentPushforward_obj_of_isFlat (f : X ⟶ Y)
    (hf : IsFlat B S hS f.hom) (hfqc : IsQuasiCompact B S hS f.hom)
    (hfqs : IsQuasiSeparated B S hS f.hom)
    (J : QuasicoherentSheaves.{u, u} B S hS X.1 X.2) [Injective J] :
    Injective ((quasicoherentPushforward B S hS f
      (pushforwardPreservesQuasicoherence_of_qcqs B S hS f hfqc hfqs)).obj J)
Tag 09TL, a lemma

Tag 09TL in the Stacks Project.

AlgebraicGeometry.Space.isZero_rightDerived_modulePushforward_injective_isNoetherian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Cohomology/InjectiveQcoh/ChartLocalHigherDirectImage.lean, line 343. The attribute's comment: “part (2)”.

Stacks 09TL, part (2). Let X be a Noetherian algebraic space over a scheme S, let 𝒥 be an injective object of QCoh(𝒪_X) and let f : X ⟶ Y be a morphism of algebraic spaces with Y quasi-separated. Then R^p f_*𝒥 = 0 for p > 0.

This is AlgebraicGeometry.Space.isZero_rightDerived_modulePushforward_of_injective_of_isNoetherian with its input hdetect discharged by AlgebraicGeometry.Space.chartLocalCohomologyDetectsHigherDirectImage.

theorem isZero_rightDerived_modulePushforward_injective_isNoetherian
    (hZ : B.Contains (⊤_ Scheme.{u})) {X Y : AlgebraicSpaces B S hS}
    (hX : IsNoetherian B S hS hZ X.1)
    (hYqs : IsAbsolutelyQuasiSeparated B S hS hZ Y.1)
    (J : QuasicoherentSheaves.{u, u} B S hS X.1 X.2) [Injective J]
    (f : X ⟶ Y) (p : ℕ) (hp : 0 < p) :
    IsZero (((modulePushforward B S hS f).rightDerived p).obj J.obj)

AlgebraicGeometry.Space.isZero_etaleRestrictionCohomology_of_injective_of_isNoetherian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Cohomology/InjectiveQcoh/UnconditionalArtinianPresentation.lean, line 121. The attribute's comment: “part (1)”.

Stacks 09TL, part (1). Let X be a Noetherian algebraic space over a scheme S of a big fppf site and let 𝒥 be an injective object of QCoh(𝒪_X). Then H^p(U, 𝒥|_U) = 0 for p > 0 and every quasi-compact and quasi-separated algebraic space U étale over X.

theorem isZero_etaleRestrictionCohomology_of_injective_of_isNoetherian
    (hZ : B.Contains (⊤_ Scheme.{u})) {X U : AlgebraicSpaces B S hS}
    (hX : IsNoetherian B S hS hZ X.1)
    (J : QuasicoherentSheaves.{u, u} B S hS X.1 X.2) [Injective J]
    (g : U ⟶ X) (hg : IsEtale B S hS g.hom)
    (hUqc : IsQuasiCompactSpace B S hS U.1)
    (hUqs : IsAbsolutelyQuasiSeparated B S hS hZ U.1)
    (p : ℕ) (hp : 0 < p) :
    IsZero ((etaleRestrictionCohomology B S hS g hg p).obj J)
Tag 09TM, a lemma

Tag 09TM in the Stacks Project.

AlgebraicGeometry.Space.exists_quasicoherentPushforwardExtension_comparison, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/NoetherianCoherator/NoetherianExtension.lean, line 122.

Stacks 09TM. Let f : X ⟶ Y be a morphism of Noetherian algebraic spaces over S. Then f_* on quasi-coherent modules has a right derived extension Φ : D(QCoh(𝒪_X)) ⥤ D(QCoh(𝒪_Y)) — the total right derived functor AlgebraicGeometry.Space.quasicoherentPushforwardExtension of f_* : QCoh(𝒪_X) ⥤ QCoh(𝒪_Y), with derivation unit AlgebraicGeometry.Space.quasicoherentPushforwardExtensionUnit — such that the square formed with the comparison functors D(QCoh) ⥤ D_QCoh of Stacks 08F1 and with Rf_* commutes: for every right derived functor Rf_* of the direct image of all modules, the two composites D(QCoh(𝒪_X)) ⥤ D_QCoh(𝒪_Y) ⊆ D(𝒪_Y) are isomorphic.

theorem exists_quasicoherentPushforwardExtension_comparison (hZ : B.Contains (⊤_ Scheme.{u}))
    {X Y : AlgebraicSpaces B S hS} (hX : IsNoetherian B S hS hZ X.1)
    (hY : IsNoetherian B S hS hZ Y.1) (f : X ⟶ Y) :
    ∃ hpush : PushforwardPreservesQuasicoherence B S hS f,
      (quasicoherentPushforwardExtension B S hS f hpush).IsRightDerivedFunctor
          (quasicoherentPushforwardExtensionUnit B S hS f hpush)
          (HomotopyCategory.quasiIso (QuasicoherentSheaves.{u, u} B S hS X.1 X.2)
            (ComplexShape.up ℤ)) ∧
        ∀ (RF : DerivedCategory (Modules.{u, u} B S hS X.1 X.2) ⥤
            DerivedCategory (Modules.{u, u} B S hS Y.1 Y.2))
          (α : (modulePushforward B S hS f).mapHomotopyCategory (ComplexShape.up ℤ) ⋙
            DerivedCategory.Qh ⟶ DerivedCategory.Qh ⋙ RF),
          RF.IsRightDerivedFunctor α
              (HomotopyCategory.quasiIso (Modules.{u, u} B S hS X.1 X.2) (ComplexShape.up ℤ)) →
            Nonempty (quasicoherentDerivedComparisonSchemeUniverse B S hS X.1 X.2 ⋙
                (DerivedCategoryB.derivedCategoryB
                  (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
                    (Stacks.SheafOfModules.Tensor.ringSheaf
                      (smallEtaleRingedSite B S hS X.1 X.2).O))).ι ⋙ RF ≅
              quasicoherentPushforwardExtension B S hS f hpush ⋙
                quasicoherentDerivedComparisonSchemeUniverse B S hS Y.1 Y.2 ⋙
                  (DerivedCategoryB.derivedCategoryB
                    (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
                      (Stacks.SheafOfModules.Tensor.ringSheaf
                        (smallEtaleRingedSite B S hS Y.1 Y.2).O))).ι)
Tag 09TN, a proposition

Tag 09TN in the Stacks Project.

AlgebraicGeometry.Space.quasicoherentDerivedComparison_isEquivalence_of_isNoetherian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/NoetherianDerivedCoheratorEquivalence.lean, line 116. The attribute's comment: “equivalence”.

[Stacks, Tag 09TN], the equivalence. Let X be a Noetherian algebraic space over S. Then the comparison functor i_X : D(QCoh(𝒪_X)) ⥤ D_QCoh(𝒪_X) of Stacks 08F1 is an equivalence.

theorem quasicoherentDerivedComparison_isEquivalence_of_isNoetherian :
    (quasicoherentDerivedComparison B S hS X.1 X.2).IsEquivalence

AlgebraicGeometry.Space.exists_equivalence_functor_eq_and_inverse_eq_derivedCoherator_of_isNoetherian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/NoetherianDerivedCoheratorEquivalence.lean, line 202. The attribute's comment: “equivalence with quasi-inverse RQ_X”.

[Stacks, Tag 09TN]. Let X be a Noetherian algebraic space over S, C_X a coherator of X and RQ_X a total right derived functor of it. Then the comparison functor i_X : D(QCoh(𝒪_X)) ⥤ D_QCoh(𝒪_X) of Stacks 08F1 is an equivalence with quasi-inverse RQ_X restricted to D_QCoh(𝒪_X): there is an equivalence whose functor is i_X and whose inverse is J ⋙ RQ_X, for J : D_QCoh(𝒪_X) ⥤ D(𝒪_X) the inclusion.

theorem exists_equivalence_functor_eq_and_inverse_eq_derivedCoherator_of_isNoetherian
    (X : AlgebraicSpaces B S hS) (hN : IsNoetherian B S hS hZ X.1)
    (CF : Modules.{u, u} B S hS X.1 X.2 ⥤ QuasicoherentSheaves.{u, u} B S hS X.1 X.2)
    (adjF : (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
      ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X.1 X.2).O))).ι ⊣ CF)
    (RQ : DerivedCategory (Modules.{u, u} B S hS X.1 X.2) ⥤
      DerivedCategory (QuasicoherentSheaves.{u, u} B S hS X.1 X.2))
    (RQUnit : letI := adjF.right_adjoint_additive
      CF.mapHomologicalComplex (ComplexShape.up ℤ) ⋙
        DerivedCategory.Q (C := QuasicoherentSheaves.{u, u} B S hS X.1 X.2) ⟶
      DerivedCategory.Q (C := Modules.{u, u} B S hS X.1 X.2) ⋙ RQ)
    (hRQ : letI := adjF.right_adjoint_additive
      RQ.IsRightDerivedFunctor RQUnit
        (HomologicalComplex.quasiIso (Modules.{u, u} B S hS X.1 X.2) (ComplexShape.up ℤ))) :
    ∃ e : DerivedCategory (QuasicoherentSheaves.{u, u} B S hS X.1 X.2) ≌
        QuasicoherentDerivedCategory.{u, u} B S hS X.1 X.2,
      e.functor = quasicoherentDerivedComparison B S hS X.1 X.2 ∧
        e.inverse =
          (DerivedCategoryB.derivedCategoryB
            (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
              ((Stacks.SheafOfModules.Tensor.ringSheaf
                (smallEtaleRingedSite B S hS X.1 X.2).O)))).ι ⋙ RQ
Sources

Section75.13 Pseudo-coherent and perfect complexes#

Section 75.13 of the Stacks Project, Tag 08HC. 11 tags here are carried by 34 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.

Tag 08HD, a lemma

Tag 08HD in the Stacks Project.

AlgebraicGeometry.SmallEtale.isFiniteTypeOnSite_associatedModule, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Descent/AssociatedModule/SmallEtaleFiniteType.lean, line 458. The attribute's comment: “the implication (1) ⇒ (2), with finite type in the categorical form of 03DL (5). The converse is AlgebraicGeometry.SmallEtale.isFiniteTypeOnSite_of_associatedModule.”.

Stacks 08HD, the implication (1) ⇒ (2). The pullback ε^*𝓕 along the morphism of ringed sites ε : (X_étale, 𝒪) ⟶ (X_Zar, 𝒪_X) of an 𝒪_X-module of finite type is of finite type on the small étale site of X.

This is Stacks 03DO at ε: the image open of Stacks 03WT factors every object of the small étale site through an open of X, uniquely, so sections generating 𝓕 over an open have unit images generating ε^*𝓕 over it.

theorem isFiniteTypeOnSite_associatedModule (F : X.Modules)
    (hF : SheafOfModules.IsFiniteTypeOnSite F) :
    SheafOfModules.IsFiniteTypeOnSite ((associatedModule B X hX).obj F)

AlgebraicGeometry.SmallEtale.isFiniteTypeOnSite_of_associatedModule, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Descent/AssociatedModule/SmallEtaleFiniteType.lean, line 896. The attribute's comment: “the implication (2) ⇒ (1), with finite type in the categorical form of 03DL (5). The source deduces it from the stalk description of ε^*; here it is deduced from the zero-detection assertion of 08H8 for an arbitrary 𝒪_X-module, AlgebraicGeometry.SmallEtale.isZero_of_isZero_associatedModule_general.”.

Stacks 08HD, the implication (2) ⇒ (1). An 𝒪_X-module whose pullback ε^*𝓕 along the morphism of ringed sites ε : (X_étale, 𝒪) ⟶ (X_Zar, 𝒪_X) is of finite type on the small étale site of X is itself of finite type, the finite-type condition being in the categorical form SheafOfModules.IsFiniteTypeOnSite of Stacks 03DL (5).

The covering family of opens is the family of all opens of X carrying finitely many generating sections, so no choice of covering is recorded: what has to be shown is that those opens cover, and that is the content of AlgebraicGeometry.SmallEtale.exists_imageOpen_generates. Given a point x of an open W, the finite-type hypothesis at the object of W gives an object of the small étale site whose image contains x and on which ε^*𝓕 has finitely many generating sections; shrinking it replaces those by unit images of sections of 𝓕 over its image open, which is contained in W and contains x.

theorem isFiniteTypeOnSite_of_associatedModule (F : X.Modules)
    (h : SheafOfModules.IsFiniteTypeOnSite ((associatedModule B X hX).obj F)) :
    SheafOfModules.IsFiniteTypeOnSite F
Tag 08HE, a lemma

Tag 08HE in the Stacks Project.

AlgebraicGeometry.SmallEtale.associatedModuleToPseudoCoherent, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Descent/AssociatedModule/SmallEtalePseudoCoherentDescent.lean, line 549. The attribute's comment: “clause (2) ⇒ (1): if ε^*E is m-pseudo-coherent on the small étale site of S then E is m-pseudo-coherent on the small Zariski site of S, ε being the comparison of ringed sites of Stacks 08H7.”.

If ε^*E is m-pseudo-coherent on the small étale site of S then E is m-pseudo-coherent on the small Zariski site of S, ε being the comparison of ringed sites and the derived functor being CategoryTheory.Functor.mapDerivedCategory of the associated-module functor.

public theorem associatedModuleToPseudoCoherent
    (E : DerivedCategory (SheafOfModules.{u} S.ringCatSheaf)) (m : ℤ) :
    AssociatedModuleToPseudoCoherent B S hS E m

AlgebraicGeometry.SmallEtale.pseudoCoherentIffAssociatedModule, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Descent/AssociatedModule/SmallEtalePseudoCoherentDescent.lean, line 565.

Let S be a scheme, let E be an object of D(𝒪_S) and let m be an integer. Then E is m-pseudo-coherent on the small Zariski site of S if and only if ε^*E is m-pseudo-coherent on the small étale site of S, where ε : (S_étale, 𝒪) ⟶ (S_Zar, 𝒪_S) is the comparison of ringed sites.

public theorem pseudoCoherentIffAssociatedModule
    (E : DerivedCategory (SheafOfModules.{u} S.ringCatSheaf)) (m : ℤ) :
    PseudoCoherentIffAssociatedModule B S hS E m

AlgebraicGeometry.SmallEtale.pseudoCoherentToAssociatedModule_of_slice_exact, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Descent/AssociatedModule/SmallEtalePseudoCoherentForward.lean, line 126. The attribute's comment: “clause (1) ⇒ (2) only: if E is m-pseudo-coherent on the small Zariski site of S then ε^*E is m-pseudo-coherent on the small étale site of S, ε being the comparison of Stacks 08H7. Clause (2) ⇒ (1) is AlgebraicGeometry.SmallEtale.associatedModuleToPseudoCoherent.”. References: SGA 6 I (2.13), “special case”.

If E is m-pseudo-coherent on the small Zariski site of S then ε^*E is m-pseudo-coherent on the small étale site of S, where the derived functor is CategoryTheory.Functor.mapDerivedCategory of the associated-module functor.

public theorem pseudoCoherentToAssociatedModule_of_slice_exact
    (E : DerivedCategory
      (SheafOfModules.{u} (Stacks.SheafOfModules.Tensor.ringSheaf S.zariskiRingedSite.O)))
    (m : ℤ) :
    PseudoCoherentToAssociatedModule B S hS E m
Tag 08HF, a lemma

Tag 08HF in the Stacks Project.

AlgebraicGeometry.SmallEtale.hasTorAmplitude_derivedPullback_of_hasTorAmplitude, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Descent/AssociatedModule/SmallEtaleTorAmplitudeComparison.lean, line 130. The attribute's comment: “clause (1): E has tor amplitude in [a, b] ⟺ ε^*E has tor amplitude in [a, b], for ε the comparison morphism of Equation 75.4.0.1 (Stacks 08H7) read on the Type u-presented model AlgebraicGeometry.SmallEtale.smallModelRingedTopos of the small étale ringed topos, and ε^* its derived pullback. Stated for an arbitrary derived tensor product datum on either side rather than for the canonical one. Clause (2) is AlgebraicGeometry.SmallEtale.hasFiniteTorDimension_derivedPullback_of_hasFiniteTorDimension”.

Stacks 08HF, clause (1). An object E of D(𝒪_S) has Tor amplitude in [a, b] for a derived tensor product datum T on the small Zariski ringed site of S if and only if its derived pullback Lε^*E along the comparison ε of Stacks 08H7, read on the Type u-presented model of the small étale ringed topos, has Tor amplitude in [a, b] for a derived tensor product datum T' on the model. Both data are arbitrary.

Forwards this is Stacks 08H5. Backwards it is Stacks.SheafOfModules.DerivedTensorProduct.hasTorAmplitude_of_hasTorAmplitude_derivedPullback, whose two inputs about ε_model — that the degreewise pullback of sheaves of modules is exact and that it detects the zero sheaf — are the two assertions of Stacks 08H8, read on the model in AlgebraicGeometry.SmallEtale.preservesFiniteLimits_pullbackTopos_toZariskiSmallModelHom and AlgebraicGeometry.SmallEtale.isZero_of_isZero_pullbackTopos_toZariskiSmallModelHom.

public theorem hasTorAmplitude_derivedPullback_of_hasTorAmplitude
    (T : DerivedTensorProduct S.zariskiRingedTopos.toRingedSite)
    (T' : DerivedTensorProduct (smallModelRingedTopos B S hS).toRingedSite)
    (E : RingedSite.DerivedModules S.zariskiRingedTopos.toRingedSite) (a b : ℤ) :
    HasTorAmplitude T' ((derivedPullback (toZariskiSmallModelHom B S hS)).obj E) a b ↔
      HasTorAmplitude T E a b

AlgebraicGeometry.SmallEtale.hasFiniteTorDimension_derivedPullback_of_hasFiniteTorDimension, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Descent/AssociatedModule/SmallEtaleTorAmplitudeComparison.lean, line 154. The attribute's comment: “clause (2): E has finite tor dimension ⟺ ε^*E has finite tor dimension, for ε the comparison morphism of Equation 75.4.0.1 (Stacks 08H7) read on the Type u-presented model AlgebraicGeometry.SmallEtale.smallModelRingedTopos of the small étale ringed topos, and ε^* its derived pullback. Stated for an arbitrary derived tensor product datum on either side rather than for the canonical one. Clause (1) is AlgebraicGeometry.SmallEtale.hasTorAmplitude_derivedPullback_of_hasTorAmplitude”.

Stacks 08HF, clause (2). An object E of D(𝒪_S) has finite Tor dimension for a derived tensor product datum T on the small Zariski ringed site of S if and only if its derived pullback Lε^*E has finite Tor dimension for a derived tensor product datum T' on the model. Both data are arbitrary.

This is clause (1) with the interval existentially quantified: an interval containing the Tor amplitude of one of the two objects contains that of the other.

public theorem hasFiniteTorDimension_derivedPullback_of_hasFiniteTorDimension
    (T : DerivedTensorProduct S.zariskiRingedTopos.toRingedSite)
    (T' : DerivedTensorProduct (smallModelRingedTopos B S hS).toRingedSite)
    (E : RingedSite.DerivedModules S.zariskiRingedTopos.toRingedSite) :
    HasFiniteTorDimension T' ((derivedPullback (toZariskiSmallModelHom B S hS)).obj E) ↔
      HasFiniteTorDimension T E
Tag 0DK7, a lemma

Tag 0DK7 in the Stacks Project.

AlgebraicGeometry.SmallEtale.locallyHasFiniteTorDimension_relativeDerivedAssociatedModule, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Descent/AssociatedModule/SmallEtaleRelativeLocalTorDimension.lean, line 523. The attribute's comment: “part (2), with ε⁻¹f⁻¹𝒪_Y for f_small⁻¹𝒪_{Y_étale}; see the implementation notes of the module of part (1). The form with f_small⁻¹𝒪_{Y_étale} itself is, in AlgebraicGeometry.Space, locallyHasFiniteTorDimension_derivedScalarRestriction_iff_representedZariskiDerivedPullback”.

Stacks 0DK7, part (2). Let f : X ⟶ Y be a morphism of schemes and let E be an object of D(f⁻¹𝒪_Y). Then E locally has finite Tor dimension if and only if ε^*E locally has finite Tor dimension as an object of D(ε⁻¹f⁻¹𝒪_Y), in the sense of Stacks 08FZ (3), for any families of derived tensor products on the slices of the two sites.

Both conditions are read at the points of X. An open covering of X with an interval on each member gives, on any object W of the small étale site, the covering by the objects mapping into one of the members, which is the pullback to W of the image of the open covering, a covering because the inclusion of the small Zariski site is cover-preserving. An étale covering of X with an interval on each member gives the open covering of X by the images of the members, open because the members are étale over X, every point of an image having its geometric point lift to the member.

theorem locallyHasFiniteTorDimension_relativeDerivedAssociatedModule
    (TU : ∀ U : (Scheme.Hom.inverseImageRingedSite f).C,
      Stacks.SheafOfModules.DerivedTensorProduct.{u, u, u, d}
        ((Scheme.Hom.inverseImageRingedSite f).over U))
    (TW : ∀ W : (relativeRingedTopos B X hX f).toRingedSite.C,
      Stacks.SheafOfModules.DerivedTensorProduct.{u + 1, u, u, e}
        ((relativeRingedTopos B X hX f).toRingedSite.over W))
    (E : RingedSite.DerivedModules.{u, u, u, d} (Scheme.Hom.inverseImageRingedSite f)) :
    LocallyHasFiniteTorDimension TU E ↔
      LocallyHasFiniteTorDimension TW ((relativeDerivedAssociatedModule B X hX f).obj E)

AlgebraicGeometry.SmallEtale.hasTorAmplitude_relativeDerivedAssociatedModule_iff, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Descent/AssociatedModule/SmallEtaleRelativeTorAmplitude.lean, line 536. The attribute's comment: “part (1), with ε⁻¹f⁻¹𝒪_Y for f_small⁻¹𝒪_{Y_étale}; see the implementation notes. The form with f_small⁻¹𝒪_{Y_étale} itself is, in AlgebraicGeometry.Space, hasTorAmplitude_derivedScalarRestriction_iff_representedZariskiDerivedPullback”.

Stacks 0DK7, part (1). Let f : X ⟶ Y be a morphism of schemes and let E be an object of D(f⁻¹𝒪_Y). Then E has Tor amplitude in [a, b] if and only if ε^*E has Tor amplitude in [a, b] as an object of D(ε⁻¹f⁻¹𝒪_Y).

Both sides are read at the stalks by Stacks 0DJJ: on the small Zariski site of X at the points of X, a conservative family, and on the small étale site at the geometric points of X at the points of X, a conservative family too (AlgebraicGeometry.isConservativeFamilyOfPoints_geometricSitePoints). At the point x the two stalks agree, by Stacks 05V5 for ε (hasTorAmplitudeCanonical_derivedModuleFiber_relativeDerivedAssociatedModule_iff).

theorem hasTorAmplitude_relativeDerivedAssociatedModule_iff
    (E : RingedSite.DerivedModules.{u, u, u, d} (Scheme.Hom.inverseImageRingedSite f))
    (a b : ℤ) :
    Stacks.SheafOfModules.DerivedTensorProduct.HasTorAmplitude T E a b ↔
      Stacks.SheafOfModules.DerivedTensorProduct.HasTorAmplitude T'
        ((relativeDerivedAssociatedModule B X hX f).obj E) a b

AlgebraicGeometry.Space.locallyHasFiniteTorDimension_derivedScalarRestriction_iff_representedZariskiDerivedPullback, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/RepresentedZariskiLocalTorDimension.lean, line 141. The attribute's comment: “part (2)”.

Stacks 0DK7, part (2). Let g₀ : X ⟶ Y be the morphism of schemes underlying a morphism g of the big fppf site and E ∈ D(𝒪_X). Then E read in D(g₀⁻¹𝒪_Y) locally has finite Tor dimension if and only if ε^*E read in D(g_{small}⁻¹𝒪_{Y_étale}) locally has finite Tor dimension, for any family of derived tensor products on the slices.

As in part (1), g_{small}⁻¹𝒪_{Y_étale} is the inverse image of the structure sheaf of yoneda.obj T' on the small étale site of yoneda.obj T, which is that of X by Stacks 04M0. Both conditions are read at the points: an open cover of X with a Tor-amplitude interval on each member gives the étale covers by the charts mapping into the members, and an étale cover of the identity chart gives the open cover of X by the images of its members.

theorem locallyHasFiniteTorDimension_derivedScalarRestriction_iff_representedZariskiDerivedPullback
    (Tfam : ∀ U : (inverseImageRingedSite B S hS (representedSpaceMap B S hS g)).C,
      Stacks.SheafOfModules.DerivedTensorProduct
        ((inverseImageRingedSite B S hS (representedSpaceMap B S hS g)).over U))
    (E : DerivedCategory (representedSchemeRepresentedZariskiRingedToposHom B S hS T).Modules) :
    Stacks.Cohomology.TorAmplitude.LocallyHasFiniteTorDimension
        (RingedSpace.inverseImage
          (representedSchemeRepresentedZariskiRingedToposHom B S hS T').toRingedSpace
          ((BigFppfOver.toScheme B S hS).map g).base)
        ((Scheme.Hom.derivedScalarRestriction ((BigFppfOver.toScheme B S hS).map g)).obj E) ↔
      Stacks.SheafOfModules.DerivedTensorProduct.LocallyHasFiniteTorDimension Tfam
        ((derivedScalarRestriction B S hS (representedSpaceMap B S hS g)).obj
          ((representedZariskiDerivedPullback B S hS T).obj E))

AlgebraicGeometry.Space.hasTorAmplitude_derivedScalarRestriction_iff_representedZariskiDerivedPullback, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/RepresentedZariskiTorAmplitude.lean, line 274. The attribute's comment: “part (1)”.

Stacks 0DK7, part (1). Let g₀ : X ⟶ Y be the morphism of schemes underlying a morphism g of the big fppf site, E ∈ D(𝒪_X) and ε^*E its pullback to the small étale site. Then E read in D(g₀⁻¹𝒪_Y) has Tor amplitude in [a, b] if and only if ε^*E read in D(g_{small}⁻¹𝒪_{Y_étale}) has Tor amplitude in [a, b].

The small étale site of X is the small étale site of the algebraic space yoneda.obj T (Stacks 04M0), on which g_{small}⁻¹𝒪_{Y_étale} is the inverse image of the structure sheaf of yoneda.obj T' along yoneda.map g — the sheaf the source names. An earlier form used ε⁻¹g₀⁻¹𝒪_Y instead; identifying the two needs g₀ ∘ ε_X = ε_Y ∘ g_{small} and Stacks 070S, so that form was not the statement of the source. The proof is the source's, at the stalks.

theorem hasTorAmplitude_derivedScalarRestriction_iff_representedZariskiDerivedPullback
    (Tet : Stacks.SheafOfModules.DerivedTensorProduct
      (inverseImageRingedSite B S hS (representedSpaceMap B S hS g)))
    (E : DerivedCategory (representedSchemeRepresentedZariskiRingedToposHom B S hS T).Modules)
    (a b : ℤ) :
    Stacks.Cohomology.TorAmplitude.HasTorAmplitude
        (RingedSpace.inverseImage
          (representedSchemeRepresentedZariskiRingedToposHom B S hS T').toRingedSpace
          ((BigFppfOver.toScheme B S hS).map g).base)
        ((Scheme.Hom.derivedScalarRestriction ((BigFppfOver.toScheme B S hS).map g)).obj E) a b ↔
      Stacks.SheafOfModules.DerivedTensorProduct.HasTorAmplitude Tet
        ((derivedScalarRestriction B S hS (representedSpaceMap B S hS g)).obj
          ((representedZariskiDerivedPullback B S hS T).obj E)) a b
Tag 08HG, a lemma

Tag 08HG in the Stacks Project.

AlgebraicGeometry.SmallEtale.isPerfectZariski_iff_isPerfectSmallEtale, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SmallEtalePerfectConverse.lean, line 550.

Stacks 08HG. Let S be a scheme and E an object of D(𝒪_S). Then E is a perfect object of D(𝒪_S) if and only if ε^*E is a perfect object of D(𝒪_étale), where ε : (S_étale, 𝒪) ⟶ (S_Zar, 𝒪_S) is the morphism of ringed sites of Stacks 08H7 and ε^* its pullback on the derived category — the termwise associated-module functor, ε being flat (Stacks 08H8).

Perfectness on either side is Stacks 08G5. The direction E perfect ⟹ ε^*E perfect is AlgebraicGeometry.SmallEtale.perfectToAssociatedModule_of_slice_exact; the converse is AlgebraicGeometry.SmallEtale.isPerfectZariski_of_isPerfectSmallEtale.

theorem isPerfectZariski_iff_isPerfectSmallEtale
    (E : DerivedCategory (SheafOfModules.{u}
      (Stacks.SheafOfModules.Tensor.ringSheaf S.zariskiRingedSite.O))) :
    IsPerfectZariski S E ↔ IsPerfectSmallEtale B S hS E

AlgebraicGeometry.SmallEtale.perfectToAssociatedModule_of_slice_exact, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SmallEtalePerfectForward.lean, line 169. The attribute's comment: “the direction E perfect ⟹ ε^*E perfect ONLY. Left exactness of SheafOfModules.pullback (SmallEtale.sliceStructureMap B S hS V) -- the exactness assertion of Stacks 08H8 localized at an open V of S -- is supplied by AlgebraicGeometry.SmallEtale.preservesFiniteLimits_pullback_sliceStructureMap, which localizes the whole-site 08H8 (preservesFiniteLimits_associatedModule) along the open immersion. The converse direction ε^*E perfect ⟹ E perfect is NOT proved: the source derives it from Stacks 08G8 together with the converses of Stacks 08HE and Stacks 08HF, and of those the converse of Stacks 08HE does not exist in this tree.”.

Stacks 08HG, the direction E perfect ⟹ ε^*E perfect.

If E is a perfect object of D(𝒪_S) then ε^*E is a perfect object of D(𝒪_étale), ε being the morphism of ringed sites of Stacks 08H7 and ε^* the termwise associated-module functor on the derived category, which is what ε being flat means.

Left exactness of the associated-module functor on a slice over an open of S is the exactness assertion of Stacks 08H8 localized at that open, proved by AlgebraicGeometry.SmallEtale.preservesFiniteLimits_pullback_sliceStructureMap. Everything else is available: the transfer engine AlgebraicGeometry.RingedSite.isPerfect_mapDerivedCategory_of_hypotheses, the localization square of Stacks 03DV (associatedModuleOverIso), the unit comparison, and the covering (coversTop_obj_opensToSmallEtale).

public theorem perfectToAssociatedModule_of_slice_exact
    (E : DerivedCategory
      (SheafOfModules.{u} (Stacks.SheafOfModules.Tensor.ringSheaf S.zariskiRingedSite.O)))
    (hE : IsPerfectZariski S E) :
    IsPerfectSmallEtale B S hS E
Tag 08JL, a lemma

Tag 08JL in the Stacks Project.

AlgebraicGeometry.Space.isQuasicoherentOnSite_homology_of_isPseudoCoherentFrom_unconditional, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/PseudoCoherentCohomologyUnconditional.lean, line 259. The attribute's comment: “cohomology above the approximation degree”.

Stacks 08JL, first assertion. Let S be a scheme, let F be an algebraic space over S and let E be an object of D(𝒪_F). If E is n-pseudo-coherent, then Hⁱ(E) is a quasi-coherent 𝒪_F-module for every i > n.

The second assertion of the tag is AlgebraicGeometry.Space.derivedCategoryB_of_isPseudoCoherent_unconditional.

This is AlgebraicGeometry.Space.isQuasicoherentOnSite_homology_of_isPseudoCoherentFrom with its two closure hypotheses discharged by AlgebraicGeometry.Space.isClosedUnderKernels_over and AlgebraicGeometry.Space.isClosedUnderCokernels_over.

theorem isQuasicoherentOnSite_homology_of_isPseudoCoherentFrom_unconditional
    (E : DerivedCategory (Modules.{u, u} B S hS F hF)) (n i : ℤ)
    (hE : (smallEtaleRingedSite B S hS F hF).IsPseudoCoherentFrom E n) (hi : n < i) :
    ((DerivedCategory.homologyFunctor
      (Modules.{u, u} B S hS F hF) i).obj E).IsQuasicoherentOnSite

AlgebraicGeometry.Space.derivedCategoryB_of_isPseudoCoherent_unconditional, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/PseudoCoherentCohomologyUnconditional.lean, line 288. The attribute's comment: “pseudo-coherent objects lie in the quasi-coherent derived category”.

Stacks 08JL, second assertion. Let S be a scheme, let F be an algebraic space over S and let E be an object of D(𝒪_F). If E is pseudo-coherent, then E lies in D_QCoh(𝒪_F), that is, every cohomology sheaf of E is quasi-coherent.

The conclusion is the object property whose full subcategory is AlgebraicGeometry.Space.QuasicoherentDerivedCategory, the D_QCoh(𝒪_F) of Stacks 071X. The first assertion of the tag is AlgebraicGeometry.Space.isQuasicoherentOnSite_homology_of_isPseudoCoherentFrom_unconditional.

Apply the first assertion in degree i using a strictly perfect approximation from degree i - 1.

theorem derivedCategoryB_of_isPseudoCoherent_unconditional
    (E : DerivedCategory (Modules.{u, u} B S hS F hF))
    (hE : (smallEtaleRingedSite B S hS F hF).IsPseudoCoherent E) :
    DerivedCategoryB.derivedCategoryB
      (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
        ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS F hF).O))) E
Tag 08IK, a lemma

Tag 08IK in the Stacks Project.

AlgebraicGeometry.Space.isCoherentOnSite_homology_of_isPseudoCoherentFrom_of_isNoetherian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/PseudoCoherent/CoherentCohomology.lean, line 383. The attribute's comment: “(2) gives the coherence clause of (1)”.

Stacks 08IK, the coherence clause of (1) derived from (2). Let S be a scheme, let F be a Noetherian algebraic space over S and let E be an object of D_QCoh(𝒪_F). If E is m-pseudo-coherent then Hⁱ(E) is coherent for every i ≥ m.

The remaining clause of (1), that Hⁱ(E) vanishes for i ≫ 0, and the converse implication (1) ⇒ (2) are not proved in this development; the module documentation names the missing substrate for each.

Only local Noetherianity of F is used, which is the third component of Stacks 03EA; the quasi-compactness and quasi-separatedness components are not. The underlying statement with that hypothesis alone is AlgebraicGeometry.Space.isCoherentOnSite_homology_of_isPseudoCoherentFrom.

The quasi-coherence hypothesis is the hypothesis E ∈ D_QCoh(𝒪_F) of the source, read in the single degree in which it is used, and it is needed only in the degree i = m: AlgebraicGeometry.Space.isCoherentOnSite_homology_of_isPseudoCoherentFrom_of_lt is the same conclusion for i > m with no hypothesis on E beyond pseudo-coherence.

theorem isCoherentOnSite_homology_of_isPseudoCoherentFrom_of_isNoetherian
    (hZ : B.Contains (⊤_ Scheme.{u})) (hFN : IsNoetherian B S hS hZ F)
    (E : DerivedCategory (Modules.{u, u} B S hS F hF)) (m i : ℤ)
    (hE : (smallEtaleRingedSite B S hS F hF).IsPseudoCoherentFrom E m) (hi : m ≤ i)
    (hqc : ((DerivedCategory.homologyFunctor
      (Modules.{u, u} B S hS F hF) i).obj E).IsQuasicoherentOnSite) :
    SheafOfModules.IsCoherentOnSite
      ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS F hF) i).obj E)

AlgebraicGeometry.Space.isCoherentOnSite_homology_of_isPseudoCoherent_of_isNoetherian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/PseudoCoherent/CoherentCohomology.lean, line 402. The attribute's comment: “pseudo-coherent gives coherent cohomology”.

Stacks 08IK, the coherence half of the final statement. Let S be a scheme, let F be a Noetherian algebraic space over S and let E be a pseudo-coherent object of D(𝒪_F). Then Hⁱ(E) is a coherent 𝒪_F-module in every degree.

This is the half of "E is an object of D⁻_Coh(𝒪_F)" that does not mention boundedness; the boundedness half is not proved here, and neither is the converse. No quasi-coherence hypothesis is needed: a pseudo-coherent object lies in D_QCoh(𝒪_F) by Stacks 08JL, AlgebraicGeometry.Space.derivedCategoryB_of_isPseudoCoherent_unconditional.

theorem isCoherentOnSite_homology_of_isPseudoCoherent_of_isNoetherian
    (hZ : B.Contains (⊤_ Scheme.{u})) (hFN : IsNoetherian B S hS hZ F)
    (E : DerivedCategory (Modules.{u, u} B S hS F hF))
    (hE : (smallEtaleRingedSite B S hS F hF).IsPseudoCoherent E) (i : ℤ) :
    SheafOfModules.IsCoherentOnSite
      ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS F hF) i).obj E)

AlgebraicGeometry.Space.isPseudoCoherentFrom_of_isCoherent_homology_of_isNoetherian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/PseudoCoherent/CoherentCohomologyConverse.lean, line 161. The attribute's comment: “(1) ⇒ (2)”.

On a Noetherian algebraic space, an object of D_QCoh(𝒪_X) whose cohomology is coherent in degrees ≥ m and zero in degrees > b is m-pseudo-coherent.

theorem isPseudoCoherentFrom_of_isCoherent_homology_of_isNoetherian
    (hZ : B.Contains (⊤_ Scheme.{u})) (hXN : IsNoetherian B S hS hZ X.1)
    (E : DerivedCategory (Modules.{u, u} B S hS X.1 X.2)) (m b : ℤ)
    (hqc : ∀ i : ℤ,
      ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS X.1 X.2) i).obj
        E).IsQuasicoherentOnSite)
    (hcoh : ∀ i : ℤ, m ≤ i →
      IsCoherent B S hS X.1 X.2 ((DerivedCategory.homologyFunctor _ i).obj E))
    (hb : ∀ i : ℤ, b < i → IsZero ((DerivedCategory.homologyFunctor _ i).obj E)) :
    (smallEtaleRingedSite B S hS X.1 X.2).IsPseudoCoherentFrom E m

AlgebraicGeometry.Space.isPseudoCoherent_of_isCoherent_homology_of_isNoetherian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/PseudoCoherent/CoherentCohomologyConverse.lean, line 176. The attribute's comment: “in particular: an object of D⁻_Coh is pseudo-coherent”.

On a Noetherian algebraic space an object of D(𝒪_X) with coherent cohomology sheaves vanishing in large degrees is pseudo-coherent.

theorem isPseudoCoherent_of_isCoherent_homology_of_isNoetherian
    (hZ : B.Contains (⊤_ Scheme.{u})) (hXN : IsNoetherian B S hS hZ X.1)
    (E : DerivedCategory (Modules.{u, u} B S hS X.1 X.2))
    (hcoh : ∀ i : ℤ, IsCoherent B S hS X.1 X.2 ((DerivedCategory.homologyFunctor _ i).obj E))
    (hb : DerivedCategoryB.IsBoundedAbove E) :
    (smallEtaleRingedSite B S hS X.1 X.2).IsPseudoCoherent E

AlgebraicGeometry.Space.isPseudoCoherentFrom_iff_and_isPseudoCoherent_iff_of_isNoetherian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/PseudoCoherent/CoherentCohomologyEquivalence.lean, line 174.

Stacks 08IK. Let S be a scheme, let F be a Noetherian algebraic space over S and let E be an object of D_QCoh(𝒪_F). For every m ∈ ℤ the following are equivalent:

  1. Hⁱ(E) is coherent for i ≥ m and zero for i ≫ 0, and
  2. E is m-pseudo-coherent.

In particular, E is pseudo-coherent if and only if E is an object of D⁻_Coh(𝒪_F), that is, its cohomology vanishes in all sufficiently large degrees and is coherent in every degree.

The first conjunct is AlgebraicGeometry.Space.isPseudoCoherentFrom_iff_of_isNoetherian and the second AlgebraicGeometry.Space.isPseudoCoherent_iff_of_isNoetherian. Noetherianity of F is Stacks 03EA: quasi-compact, quasi-separated and locally Noetherian. D_QCoh(𝒪_F) is the condition whose full subcategory is AlgebraicGeometry.Space.QuasicoherentDerivedCategory (Stacks 071X).

theorem isPseudoCoherentFrom_iff_and_isPseudoCoherent_iff_of_isNoetherian
    (hZ : B.Contains (⊤_ Scheme.{u})) (hFN : IsNoetherian B S hS hZ F)
    (E : DerivedCategory (Modules.{u, u} B S hS F hF))
    (hE : DerivedCategoryB.derivedCategoryB
      (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
        ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS F hF).O))) E) :
    (∀ m : ℤ,
      ((∀ i : ℤ, m ≤ i → SheafOfModules.IsCoherentOnSite
          ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS F hF) i).obj E)) ∧
        DerivedCategoryB.IsBoundedAbove E) ↔
        (smallEtaleRingedSite B S hS F hF).IsPseudoCoherentFrom E m) ∧
      ((smallEtaleRingedSite B S hS F hF).IsPseudoCoherent E ↔
        (DerivedCategoryB.IsBoundedAbove E ∧
          ∀ i : ℤ, SheafOfModules.IsCoherentOnSite
            ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS F hF) i).obj E)))

AlgebraicGeometry.Space.isCoherentOnSite_homology_and_isBoundedAbove_of_isPseudoCoherentFrom_of_isNoetherian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/PseudoCoherent/CoherentCohomologyVanishing.lean, line 106. The attribute's comment: “(2) gives (1)”.

Let S be a scheme, let F be a Noetherian algebraic space over S and let E be an object of D_QCoh(𝒪_F). If E is m-pseudo-coherent then Hⁱ(E) is coherent for every i ≥ m and Hⁱ(E) vanishes for i ≫ 0.

theorem isCoherentOnSite_homology_and_isBoundedAbove_of_isPseudoCoherentFrom_of_isNoetherian
    (hZ : B.Contains (⊤_ Scheme.{u})) (hFN : IsNoetherian B S hS hZ F)
    (E : DerivedCategory (Modules.{u, u} B S hS F hF)) (m : ℤ)
    (hE : (smallEtaleRingedSite B S hS F hF).IsPseudoCoherentFrom E m)
    (hqc : ∀ i : ℤ, ((DerivedCategory.homologyFunctor
      (Modules.{u, u} B S hS F hF) i).obj E).IsQuasicoherentOnSite) :
    (∀ i : ℤ, m ≤ i → SheafOfModules.IsCoherentOnSite
        ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS F hF) i).obj E)) ∧
      DerivedCategoryB.IsBoundedAbove E

AlgebraicGeometry.Space.isCoherentOnSite_homology_and_isBoundedAbove_of_isPseudoCoherent_of_isNoetherian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/PseudoCoherent/CoherentCohomologyVanishing.lean, line 123. The attribute's comment: “pseudo-coherent gives D⁻_Coh”.

Let S be a scheme, let F be a Noetherian algebraic space over S and let E be a pseudo-coherent object of D(𝒪_F). Then E is an object of D⁻_Coh(𝒪_F): its cohomology vanishes in all sufficiently large degrees and is coherent in every degree.

theorem isCoherentOnSite_homology_and_isBoundedAbove_of_isPseudoCoherent_of_isNoetherian
    (hZ : B.Contains (⊤_ Scheme.{u})) (hFN : IsNoetherian B S hS hZ F)
    (E : DerivedCategory (Modules.{u, u} B S hS F hF))
    (hE : (smallEtaleRingedSite B S hS F hF).IsPseudoCoherent E) :
    DerivedCategoryB.IsBoundedAbove E ∧
      ∀ i : ℤ, SheafOfModules.IsCoherentOnSite
        ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS F hF) i).obj E)

AlgebraicGeometry.Space.isCoherent_homology_iff_isPseudoCoherentFrom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/PseudoCoherent/PseudoCoherentIffCoherentHomology.lean, line 264.

Stacks 08IK. Let S be a scheme, X a Noetherian algebraic space over S and E an object of D_QCoh(𝒪_X). For m ∈ ℤ the following are equivalent: 1. Hⁱ(E) is coherent for i ≥ m and zero for i ≫ 0, and 2. E is m-pseudo-coherent.

theorem isCoherent_homology_iff_isPseudoCoherentFrom (hZ : B.Contains (⊤_ Scheme.{u}))
    (X : AlgebraicSpaces B S hS) (hX : IsNoetherian B S hS hZ X.1)
    (E : QuasicoherentDerivedCategory.{u, u} B S hS X.1 X.2) (m : ℤ) :
    ((∀ i : ℤ, m ≤ i → IsCoherent B S hS X.1 X.2
        ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS X.1 X.2) i).obj E.obj)) ∧
      ∃ b : ℤ, ∀ i : ℤ, b < i →
        IsZero ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS X.1 X.2) i).obj E.obj)) ↔
      (smallEtaleRingedSite B S hS X.1 X.2).IsPseudoCoherentFrom E.obj m

AlgebraicGeometry.Space.isPseudoCoherent_iff_isCoherent_homology, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/PseudoCoherent/PseudoCoherentIffCoherentHomology.lean, line 284. The attribute's comment: “pseudo-coherent objects of D_QCoh are those of D⁻_Coh”.

Stacks 08IK, the final statement. Let X be a Noetherian algebraic space over S. An object E of D_QCoh(𝒪_X) is pseudo-coherent if and only if it lies in D⁻_Coh(𝒪_X): its cohomology sheaves are coherent and vanish in all sufficiently large degrees.

theorem isPseudoCoherent_iff_isCoherent_homology (hZ : B.Contains (⊤_ Scheme.{u}))
    (X : AlgebraicSpaces B S hS) (hX : IsNoetherian B S hS hZ X.1)
    (E : QuasicoherentDerivedCategory.{u, u} B S hS X.1 X.2) :
    (smallEtaleRingedSite B S hS X.1 X.2).IsPseudoCoherent E.obj ↔
      (∃ b : ℤ, ∀ i : ℤ, b < i →
          IsZero ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS X.1 X.2) i).obj E.obj)) ∧
        ∀ i : ℤ, IsCoherent B S hS X.1 X.2
          ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS X.1 X.2) i).obj E.obj)
Tag 08IL, a lemma

Tag 08IL in the Stacks Project.

AlgebraicGeometry.Space.hasTorAmplitude_iff_hasTorAmplitudeOnQuasicoherent_standardModel, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/TorAmplitudeQuasiCoherentDetection.lean, line 84.

Stacks 08IL. Let X be a quasi-separated algebraic space and E an object of D_QCoh(𝒪_X). Then E has Tor amplitude in [a, b] if and only if Hⁱ(E ⊗^L_{𝒪_X} ℱ) = 0 for i ∉ [a, b] and every quasi-coherent 𝒪_X-module ℱ.

This is the form at the standard model of D(𝒪_X), with no hypothesis on the tensor product of sheaves. The derived tensor product is any T; Tor amplitude and condition (2) do not depend on it. The hypothesis a ≤ b of the source is not needed. For (2) ⟹ (1), Tor amplitude is checked on the affine étale charts j : U ⟶ X; condition (2) passes to Lj^*E because X is quasi-separated (AlgebraicGeometry.Space.hasTorAmplitudeOnQuasicoherent_chart), Lj^*E lies in D_QCoh, and the affine case is AlgebraicGeometry.Space.hasTorAmplitude_of_hasTorAmplitudeOnQuasicoherent_representedAffine.

theorem hasTorAmplitude_iff_hasTorAmplitudeOnQuasicoherent_standardModel
    (hZ : B.Contains (⊤_ Scheme.{u}))
    (X : AlgebraicSpaces B S hS) (hXqs : IsAbsolutelyQuasiSeparated B S hS hZ X.1)
    (T : DerivedTensorProduct (smallEtaleRingedSite B S hS X.1 X.2))
    (E : DerivedCategory (Modules.{u, u} B S hS X.1 X.2)) (hE : QcohDerived B S hS X E)
    (a b : ℤ) :
    DerivedTensorProduct.HasTorAmplitude T E a b ↔
      HasTorAmplitudeOnQuasicoherent B S hS X.2 T E a b

AlgebraicGeometry.Space.hasTorAmplitudeOnQuasicoherent_of_hasTorAmplitude, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/TorAmplitudeQuasiCoherentTests.lean, line 97. The attribute's comment: “(1) implies (2)”.

If an object of D(𝒪_X) on an algebraic space X has Tor amplitude in [a, b], then its derived tensor product with every quasi-coherent 𝒪_X-module has vanishing cohomology outside [a, b].

theorem hasTorAmplitudeOnQuasicoherent_of_hasTorAmplitude
    (T : DerivedTensorProduct.{u + 1, u, u, d} (smallEtaleRingedSite B S hS F hF))
    (E : RingedSite.DerivedModules.{u + 1, u, u, d} (smallEtaleRingedSite B S hS F hF))
    (a b : ℤ)
    (hE : Stacks.SheafOfModules.DerivedTensorProduct.HasTorAmplitude T E a b) :
    HasTorAmplitudeOnQuasicoherent B S hS hF T E a b

AlgebraicGeometry.Space.hasTorAmplitude_iff_hasTorAmplitudeOnQuasicoherent, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/TorAmplitudeQuasiCoherentTestsConverse.lean, line 410.

Stacks 08IL. Let X be a quasi-separated algebraic space over S, let E be an object of D_QCoh(𝒪_X), and let T be a derived tensor product on D(𝒪_X). The following are equivalent:

  1. E has Tor amplitude in [a, b];
  2. Hⁱ(E ⊗^L_{𝒪_X} ℱ) = 0 for i ∉ [a, b] and every quasi-coherent 𝒪_X-module ℱ.

The source assumes a ≤ b; neither direction uses it, as in the scheme case Stacks 08EA, so it is not assumed. (1) ⟹ (2) is AlgebraicGeometry.Space.hasTorAmplitudeOnQuasicoherent_of_hasTorAmplitude. For (2) ⟹ (1) the converse AlgebraicGeometry.Space.hasTorAmplitude_of_hasTorAmplitudeOnQuasicoherent_ofSlices is applied at the standard derived categories of X and of its slices, and carried to the given derived category of X and the given datum T along the identity of Mod(𝒪_X), which carries Tor tests to Tor tests (Stacks.SheafOfModules.DerivedTensorProduct.isZero_homology_tensor_single_iff_of_equivalence).

theorem hasTorAmplitude_iff_hasTorAmplitudeOnQuasicoherent
    (hZ : B.Contains (⊤_ Scheme.{u})) (hqs : IsAbsolutelyQuasiSeparated B S hS hZ F)
    (T : DerivedTensorProduct.{u + 1, u, u, d} (smallEtaleRingedSite B S hS F hF))
    (E : RingedSite.DerivedModules.{u + 1, u, u, d} (smallEtaleRingedSite B S hS F hF))
    (hE : DerivedCategoryB.derivedCategoryB
      (_root_.SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
        (Tensor.ringSheaf (smallEtaleRingedSite B S hS F hF).O)) E)
    (a b : ℤ) :
    HasTorAmplitude T E a b ↔ HasTorAmplitudeOnQuasicoherent B S hS hF T E a b
Tag 08JP, a lemma

Tag 08JP in the Stacks Project.

AlgebraicGeometry.SmallEtale.isIso_derivedAssociatedModuleDerivedSheafHomComparison, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/EtaleCohomology/SmallEtaleDerivedSheafHomComparisonIso.lean, line 227. The attribute's comment: “case (2), E in the thick closure of 𝒪_S, over the data T₂, e₂, m”.

Stacks 08JP, case (2), over the mixed-universe data T₂, e₂, m.

The canonical map

ε^* R𝓗om_{𝒪_S}(E, F) ⟶ R𝓗om_𝒪(ε^* E, ε^* F)

of AlgebraicGeometry.SmallEtale.derivedAssociatedModuleDerivedSheafHomComparison, between the two sides AlgebraicGeometry.SmallEtale.raisedDerivedAssociatedModuleDerivedSheafHom and AlgebraicGeometry.SmallEtale.derivedSheafHomOfAssociatedModule, is an isomorphism whenever E lies in the strictly full saturated triangulated subcategory of D(𝒪_S) generated by the structure sheaf, and F is arbitrary — which is the shape of case (2) of Stacks 08JP, whose hypothesis on E is perfection and whose F is unrestricted.

The condition on E is what takes the statement off E = 𝒪_S; the conditions on the data are listed in the module docstring. The two model identifications are isomorphisms, so the conclusion for the canonical map is the conclusion for the comparison at the standard model.

theorem isIso_derivedAssociatedModuleDerivedSheafHomComparison
    (hn₁ : MixedTranspose.TensorHomEquivNatural (Stacks.SheafOfModules.derivedSheafHom S.sheaf)
      (internalHomTensorUncurried S.toRingedSpace) (tensorHomEquiv S.toRingedSpace))
    (hr₁ : MixedTranspose.RightUnitorNatural (internalHomTensorUncurried S.toRingedSpace)
      (zariskiUnitObj S) r₁)
    (hn₂ : MixedTranspose.MixedTensorHomEquivNatural (derivedModuleULift B S hS)
      (derivedSheafHomBifunctor B S hS) T₂ e₂)
    (hr₂ : MixedTranspose.MixedRightUnitorNatural
      (derivedAssociatedModuleFunctorStandardModel B S hS) T₂ (zariskiUnitObj S) r₂)
    (hm : MixedTranspose.MonoidalityUnital
      (derivedAssociatedModuleFunctorStandardModel B S hS) (derivedModuleULift B S hS)
      (internalHomTensorUncurried S.toRingedSpace) T₂ m (zariskiUnitObj S) r₁ r₂)
    (F : DerivedCategory (SheafOfModules.{u} S.ringCatSheaf))
    [(MixedTranspose.comparisonSourceFunctor
      (derivedAssociatedModuleFunctorStandardModel B S hS) (derivedModuleULift B S hS)
      (Stacks.SheafOfModules.derivedSheafHom S.sheaf) F).CommShift ℤ]
    [(MixedTranspose.comparisonTargetFunctor
      (derivedAssociatedModuleFunctorStandardModel B S hS)
      (derivedSheafHomBifunctor B S hS) F).CommShift ℤ]
    [(MixedTranspose.comparisonSourceFunctor
      (derivedAssociatedModuleFunctorStandardModel B S hS) (derivedModuleULift B S hS)
      (Stacks.SheafOfModules.derivedSheafHom S.sheaf) F).IsTriangulated]
    [(MixedTranspose.comparisonTargetFunctor
      (derivedAssociatedModuleFunctorStandardModel B S hS)
      (derivedSheafHomBifunctor B S hS) F).IsTriangulated]
    (η : MixedTranspose.comparisonSourceFunctor
        (derivedAssociatedModuleFunctorStandardModel B S hS) (derivedModuleULift B S hS)
        (Stacks.SheafOfModules.derivedSheafHom S.sheaf) F ⟶
      MixedTranspose.comparisonTargetFunctor
        (derivedAssociatedModuleFunctorStandardModel B S hS)
        (derivedSheafHomBifunctor B S hS) F)
    [NatTrans.CommShift η ℤ]
    (hη : ∀ Z : DerivedCategory (SheafOfModules.{u} S.ringCatSheaf),
      η.app (op Z) = derivedSheafHomPullbackComparisonAtStandardModel B S hS T₂ e₂ m Z F)
    (E : DerivedCategory (SheafOfModules.{u} S.ringCatSheaf))
    (hE : MixedTranspose.GeneratedByOp (zariskiUnitObj S) E) :
    IsIso (derivedAssociatedModuleDerivedSheafHomComparison B S hS T₂ e₂ m E F)

AlgebraicGeometry.SmallEtale.isIso_derivedPullbackSheafHomMap_of_isPerfect, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/EtaleCohomology/SmallEtaleDerivedSheafHomPerfect.lean, line 118. The attribute's comment: “case (2): E perfect, F arbitrary”.

Stacks 08JP, case (2): ε^* commutes with RSheafHom out of a perfect object. Let S be a scheme and ε : (S_étale, 𝒪) ⟶ (S_Zar, 𝒪_S) the morphism of ringed sites of Stacks 08H7, read on the model of the small étale site. For E perfect and F arbitrary in D(𝒪_S), the canonical map ε^* RSheafHom(E, F) ⟶ RSheafHom(ε^* E, ε^* F) of Stacks 08JF, AlgebraicGeometry.RingedToposSiteHom.derivedPullbackSheafHomMap, is an isomorphism.

By isIso_derivedPullbackSheafHomMap_iff_isIso_homComparisonMonoidal it is enough that the comparison of the monoidal functor ε^* is invertible at E, and it is, E being one half of the exact pairing exactPairingDerivedDualZariski with its derived dual.

theorem isIso_derivedPullbackSheafHomMap_of_isPerfect
    (E F : DerivedCategory (SheafOfModules.{u}
      (Stacks.SheafOfModules.Tensor.ringSheaf S.zariskiRingedTopos.O)))
    (hE : S.zariskiRingedSite.IsPerfect E) :
    IsIso (RingedToposSiteHom.derivedPullbackSheafHomMap (toZariskiSmallModelHom B S hS)
      (isMorphismOfSites_toZariskiSmallModelHom_u B S hS) E F)

AlgebraicGeometry.SmallEtale.isIso_derivedPullbackSheafHomMap_of_isPseudoCoherent, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/EtaleCohomology/SmallEtaleDerivedSheafHomPseudoCoherent.lean, line 194. The attribute's comment: “case (1): E pseudo-coherent, F bounded below”.

Stacks 08JP, case (1): ε^* commutes with RSheafHom out of a pseudo-coherent object into a bounded below one. Let S be a scheme and ε : (S_étale, 𝒪) ⟶ (S_Zar, 𝒪_S) the morphism of ringed sites of Stacks 08H7, read on the model of the small étale site. For E pseudo-coherent and F in D^+(𝒪_S), the canonical map ε^* RSheafHom(E, F) ⟶ RSheafHom(ε^* E, ε^* F) of Stacks 08JF, AlgebraicGeometry.RingedToposSiteHom.derivedPullbackSheafHomMap, is an isomorphism.

The only hypotheses are the two of the source: pseudo-coherence of E and boundedness below of F. By isIso_derivedPullbackSheafHomMap_iff_isIso_homComparisonMonoidal it is enough that the comparison of the monoidal functor ε^* is invertible at E and F, which is isIso_homComparisonMonoidal_derivedPullbackSmallModel_of_isPseudoCoherent.

theorem isIso_derivedPullbackSheafHomMap_of_isPseudoCoherent
    (E F : DerivedCategory (SheafOfModules.{u}
      (Stacks.SheafOfModules.Tensor.ringSheaf S.zariskiRingedTopos.O)))
    (hE : S.zariskiRingedSite.IsPseudoCoherent E) (hF : ∃ a : ℤ, F.IsGE a) :
    IsIso (RingedToposSiteHom.derivedPullbackSheafHomMap (toZariskiSmallModelHom B S hS)
      (isMorphismOfSites_toZariskiSmallModelHom_u B S hS) E F)
Tag 0A8A, a lemma

Tag 0A8A in the Stacks Project.

AlgebraicGeometry.Space.qcohDerived_smallEtaleDerivedSheafHom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/DerivedSheafHomQuasicoherent.lean, line 235.

Stacks 0A8A. Let X be an algebraic space and K, L objects of D(𝒪_X). If either L lies in D^+_QCoh(𝒪_X) and K is pseudo-coherent, or L lies in D_QCoh(𝒪_X) and K is perfect, then R𝓗om(K, L) lies in D_QCoh(𝒪_X).

theorem qcohDerived_smallEtaleDerivedSheafHom (X : AlgebraicSpaces B S hS)
    (K L : DerivedCategory (SheafOfModules.{u} (ringedToposStructureRingSheaf B S hS X)))
    (h : (RingedSite.IsPseudoCoherent (smallEtaleRingedSite B S hS X.1 X.2) K ∧
        DerivedCategoryB.derivedCategoryBPlus
          (A := SheafOfModules.{u} (ringedToposStructureRingSheaf B S hS X))
          (SheafOfModules.isQuasicoherentOnSite.{u + 1, u, u, u}
            ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X.1 X.2).O))) L) ∨
      (RingedSite.IsPerfect (smallEtaleRingedSite B S hS X.1 X.2) K ∧ QcohDerived B S hS X L)) :
    QcohDerived B S hS X (((smallEtaleDerivedSheafHom B S hS X).obj (op K)).obj L)
Tag 0E4Q, a lemma

Tag 0E4Q in the Stacks Project.

AlgebraicGeometry.Space.isIso_derivedTensorHomDiagonal_of_isPerfect, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/DerivedTensorHomDiagonal.lean, line 164. The attribute's comment: “case (1): M perfect”.

Stacks 0E4Q case (1). For objects K, L, M of D(𝒪_X) on an algebraic space X with M perfect, the canonical morphism of Stacks 0BYU

K ⊗^L_{𝒪_X} RSheafHom(M, L) ⟶ RSheafHom(M, K ⊗^L_{𝒪_X} L)

is an isomorphism. Nothing is assumed of K or L; in particular quasi-coherence of the cohomology sheaves is not used.

theorem isIso_derivedTensorHomDiagonal_of_isPerfect
    (K L M : DerivedCategory
      (SheafOfModules.{u}
        (Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleModelRingedSite B S hS F hF).O)))
    (hM : (smallEtaleModelRingedSite B S hS F hF).IsPerfect M) :
    IsIso (RingedSite.derivedTensorHomDiagonal
      (smallEtaleModelRingedSite B S hS F hF) K L M)

AlgebraicGeometry.Space.isIso_derivedTensorHomDiagonal_of_isPerfect_tensorFactor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/DerivedTensorHomDiagonal.lean, line 185. The attribute's comment: “case (2): K perfect”.

Stacks 0E4Q case (2). For objects K, L, M of D(𝒪_X) on an algebraic space X with the tensor factor K perfect, the canonical morphism of Stacks 0BYU

K ⊗^L_{𝒪_X} RSheafHom(M, L) ⟶ RSheafHom(M, K ⊗^L_{𝒪_X} L)

is an isomorphism. Nothing is assumed of L or M; neither side need have quasi-coherent cohomology.

theorem isIso_derivedTensorHomDiagonal_of_isPerfect_tensorFactor
    (K L M : DerivedCategory
      (SheafOfModules.{u}
        (Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleModelRingedSite B S hS F hF).O)))
    (hK : (smallEtaleModelRingedSite B S hS F hF).IsPerfect K) :
    IsIso (RingedSite.derivedTensorHomDiagonal
      (smallEtaleModelRingedSite B S hS F hF) K L M)

AlgebraicGeometry.Space.isIso_derivedTensorHomDiagonal_of_isPseudoCoherent, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/DerivedTensorHomDiagonal.lean, line 212. The attribute's comment: “case (3): M pseudo-coherent, L bounded below, K of finite Tor dimension”.

Stacks 0E4Q case (3). For objects K, L, M of D(𝒪_X) on an algebraic space X with M pseudo-coherent, L cohomologically bounded below and K of finite Tor dimension, the canonical morphism of Stacks 0BYU

K ⊗^L_{𝒪_X} RSheafHom(M, L) ⟶ RSheafHom(M, K ⊗^L_{𝒪_X} L)

is an isomorphism.

Nothing is assumed beyond the three conditions the source states; in particular quasi-coherence of the cohomology sheaves is not used. Like the two cases above, this specialises the corresponding part of Stacks 0ATN for an arbitrary ringed site — AlgebraicGeometry.RingedSite.isIso_derivedTensorHomDiagonal_of_isPseudoCoherent — to the model of the small étale ringed site of X.

theorem isIso_derivedTensorHomDiagonal_of_isPseudoCoherent
    (K L M : DerivedCategory
      (SheafOfModules.{u}
        (Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleModelRingedSite B S hS F hF).O)))
    (hM : (smallEtaleModelRingedSite B S hS F hF).IsPseudoCoherent M)
    (hL : DerivedCategoryB.IsBoundedBelow L)
    (hK : Stacks.SheafOfModules.DerivedTensorProduct.HasFiniteTorDimension
      (Stacks.SheafOfModules.canonicalDerivedTensorProduct
        (smallEtaleModelRingedSite B S hS F hF)) K) :
    IsIso (RingedSite.derivedTensorHomDiagonal
      (smallEtaleModelRingedSite B S hS F hF) K L M)
Sources

Section75.14 Approximation by perfect complexes#

Section 75.14 of the Stacks Project, Tag 08HH. 7 tags here are carried by 15 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.

Tag 08HI, a definition

Tag 08HI in the Stacks Project.

AlgebraicGeometry.Space.ApproximationHolds, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/Approximation.lean, line 59.

Approximation holds for the triple (T, E, m): some perfect object of D(𝒪_F) supported on T maps to E by a map inducing isomorphisms on cohomology in every degree above m and a surjection in degree m.

noncomputable abbrev ApproximationHolds (T : Set (points B S hS F))
    (E : QuasicoherentDerivedCategory.{u, m} B S hS F hF) (m : ℤ) : Prop
Tag 08HJ, a definition

Tag 08HJ in the Stacks Project.

AlgebraicGeometry.Space.ApproximationByPerfectComplexes, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/Approximation.lean, line 74.

Approximation by perfect complexes holds on F: for every closed T ⊆ |F| whose open complement has quasi-compact inclusion there is an integer r such that approximation holds for every triple (T, E, m) in which E is (m - r)-pseudo-coherent and Hⁱ(E) is supported on T for every i ≥ m - r.

noncomputable abbrev ApproximationByPerfectComplexes : Prop
Tag 08HK, a lemma

Tag 08HK in the Stacks Project.

AlgebraicGeometry.Space.isPerfect_derivedPushforward_of_isPerfect_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ApproximationExtensionByZero.lean, line 107. The attribute's comment: “Rj_E is a perfect object of D(O_X) for E perfect on V and supported on j^{-1}T, T = |X| \ |U|, for an elementary distinguished square and nothing else bound; Rj_ is any right adjoint of derived restriction, which pins it”.

Stacks 08HK. Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S and set T = |X| \ |U|. If E is a perfect object of D(𝒪_V) supported on j^{-1}T, then Rj_*E is a perfect object of D(𝒪_X).

Rj_* is any right adjoint of derived restriction, which pins it; a total right derived functor of the direct image is one, by AlgebraicGeometry.Space.etaleModulePullbackDerivedPushforwardAdjunction.

theorem isPerfect_derivedPushforward_of_isPerfect_of_cohomologySupportedOn
    {RpushD : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1
        (edsEtale B S hS hsq).2) ⥤ DerivedCategory (Modules.{u, u} B S hS W.1 W.2)}
    (adjPush : edsDerivedRestrictEtale B S hS hsq ⊣ RpushD)
    (E : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2))
    (hE : (smallEtaleRingedSite B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2).IsPerfect E)
    (hEs : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (edsEtalePreimageComplementPoints B S hS hsq) E) :
    (smallEtaleRingedSite B S hS W.1 W.2).IsPerfect (RpushD.obj E)

AlgebraicGeometry.Space.isPerfect_derivedPushforward_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/PushforwardOfSupportedPerfect.lean, line 250. The attribute's comment: “Rj_E is a perfect object of D(O_X) for E perfect on V and supported on j^{-1}T. CONDITIONAL on three named hypotheses, NONE of which is proved in the library, and which together are the whole of the source's argument apart from the two perfectness facts proved in this file. (i) hlocal: perfectness is local on X_etale along {U, V}, the first sentence of the source's proof. The library's form of it, isPerfect_of_locally (Tag 08G5 through Tag 08G6 part (1)), is stated for a RingedSite.{u, u, 0} and the small etale ringed site of an algebraic space is a RingedSite.{u + 1, u, u}, so it does not apply; the obstruction is inherited from Tag 08FR, which needs the objects and the morphisms of the site in one universe, and is NOT a missing covering. (ii) h2b: clause (2)(b) of Tag 08GG, that the counit (Rj_E)|_V to E is an isomorphism for supported E. SupportedOnComplement.lean proves clauses (1)(a), (1)(b) and (2)(c) and records that (2)(a) and (2)(b) are unproved, the source getting them by a base change of the square to V that the library does not carry. (iii) hUzero: the vanishing of (Rj_E)|_U, which the source gets from E|_{V minus j^{-1}T} = 0 and Tag 08GE; the first half needs H^i(E|_Y) = H^i(E)|_Y, unavailable because Mathlib proves no commutation of Functor.mapDerivedCategory with the homology functors, the same gap as the hypothesis hvan there. Tag 08GE itself is proved. What IS proved: the source's deduction, with h2b and hUzero taking the support hypothesis as antecedent so that it is genuinely consumed. Rj_ enters as a right adjoint of derived restriction together with its adjunction, as in Tag 08HA”.

Stacks 08HK. Let S be a scheme, let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over S, and set T = |X| \ |U|. Let E be a perfect object of D(𝒪_V) supported on j^{-1}T. Then Rj_*E is a perfect object of D(𝒪_X).

This is the source's own two-sentence proof, granted its three inputs, each of which is a named hypothesis here because the library does not have it: hlocal is that perfectness is local on X_étale, h2b is clause (2)(b) of Stacks 08GG, and hUzero is the vanishing of the restriction of Rj_*E to U. The implementation notes of this file say exactly what each one is and why it is missing. Both h2b and hUzero are stated as implications from the support hypothesis, which is where the support hypothesis of the source is used.

The two facts about perfectness the passage needs — that a zero object of D(𝒪) is perfect and that perfectness transports along an isomorphism — are proved in this file for a ringed site, unconditionally.

theorem isPerfect_derivedPushforward_of_cohomologySupportedOn
    (E : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1
      (edsEtale B S hS hsq).2))
    (hperf : (smallEtaleRingedSite B S hS (edsEtale B S hS hsq).1
      (edsEtale B S hS hsq).2).IsPerfect E)
    (hE : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (edsEtalePreimageComplementPoints B S hS hsq) E)
    (h2b : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
        (edsEtalePreimageComplementPoints B S hS hsq) E →
      IsIso (adjPush.counit.app E))
    (hUzero : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
        (edsEtalePreimageComplementPoints B S hS hsq) E →
      IsZero ((edsDerivedRestrictOpen B S hS hsq).obj (RpushD.obj E)))
    (hlocal :
      (smallEtaleRingedSite B S hS (edsOpen B S hS hsq).1
          (edsOpen B S hS hsq).2).IsPerfect
          ((edsDerivedRestrictOpen B S hS hsq).obj (RpushD.obj E)) →
        (smallEtaleRingedSite B S hS (edsEtale B S hS hsq).1
            (edsEtale B S hS hsq).2).IsPerfect
            ((edsDerivedRestrictEtale B S hS hsq).obj (RpushD.obj E)) →
          (smallEtaleRingedSite B S hS W.1 W.2).IsPerfect (RpushD.obj E)) :
    (smallEtaleRingedSite B S hS W.1 W.2).IsPerfect (RpushD.obj E)

AlgebraicGeometry.Space.isPerfect_derivedModulePushforward_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/PushforwardOfSupportedPerfectCanonical.lean, line 130.

Stacks 08HK. Let S be a scheme, let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over S, and set T = |X| \ |U|. Let E be a perfect object of D(𝒪_V) supported on j^{-1}T. Then Rj_*E is a perfect object of D(𝒪_X).

Perfectness is local on X_étale along the two morphisms of the square, and Rj_*E is j_!E, whose restriction to U vanishes and whose restriction to V is the perfect E.

theorem isPerfect_derivedModulePushforward_of_cohomologySupportedOn
    (E : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1
      (edsEtale B S hS hsq).2))
    (hperf : (smallEtaleRingedSite B S hS (edsEtale B S hS hsq).1
      (edsEtale B S hS hsq).2).IsPerfect E)
    (hE : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (edsEtalePreimageComplementPoints B S hS hsq) E) :
    (smallEtaleRingedSite B S hS W.1 W.2).IsPerfect
      ((derivedModulePushforward B S hS (edsEtaleHom B S hS hsq)).obj E)

AlgebraicGeometry.Space.isPerfect_rightAdjoint_edsDerivedRestrictEtale_of_cohomologySupportedOn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/SupportedPushforwardPerfect.lean, line 434.

Stacks 08HK. Let S be a scheme, let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over S, and set T = |X| \ |U|. Let E be a perfect object of D(𝒪_V) supported on j⁻¹(T). Then Rj_*E is a perfect object of D(𝒪_X).

Rj_* is a right adjoint of derived restriction (-)|_V, given together with its adjunction, as in AlgebraicGeometry.Space.isPerfect_derivedPushforward_of_cohomologySupportedOn; this determines it up to a unique compatible isomorphism. The proof is the source's: perfectness is local on X_étale (AlgebraicGeometry.Space.isPerfect_of_isPerfect_eds), the restriction of Rj_*E to U vanishes and its restriction to V is E (Stacks 08GG (2)(b)).

theorem isPerfect_rightAdjoint_edsDerivedRestrictEtale_of_cohomologySupportedOn
    (E : DerivedCategory (Modules.{u, u} B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2))
    (hperf : (smallEtaleRingedSite B S hS (edsEtale B S hS hsq).1
      (edsEtale B S hS hsq).2).IsPerfect E)
    (hE : CohomologySupportedOn B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (edsEtalePreimageComplementPoints B S hS hsq) E) :
    (smallEtaleRingedSite B S hS W.1 W.2).IsPerfect (RpushD.obj E)
Tag 08HL, a lemma

Tag 08HL in the Stacks Project.

AlgebraicGeometry.Space.approximationHolds_of_isElementaryDistinguishedSquare, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ApproximationAcrossSquare.lean, line 90.

Stacks 08HL. Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S, let T ⊆ |X| \ |U| and let (T, E, m) be a triple as in Stacks 08HI. If

  1. approximation holds for (j^{-1}T, E|_V, m), and
  2. the sheaves Hⁱ(E) for i ≥ m are supported on T,

then approximation holds for (T, E, m).

theorem approximationHolds_of_isElementaryDistinguishedSquare
    (T : Set (points B S hS W.1)) (hTU : T ⊆ edsComplementPoints B S hS Uo)
    (E : QuasicoherentDerivedCategory.{u, u} B S hS W.1 W.2) (m : ℤ)
    (happrox : ApproximationHolds B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (pointsMap B S hS (edsEtale B S hS hsq).1 (edsEtaleHom B S hS hsq).hom ⁻¹' T)
      ((quasicoherentDerivedEtalePullback B S hS (edsEtaleHom B S hS hsq)
        (isEtale_edsEtaleHom B S hS hsq)).obj E) m)
    (hsupp : ∀ i : ℤ, m ≤ i →
      supportOfSheaf B S hS W.1
        ((SheafOfModules.toSheaf (etaleRingSheaf B S hS W)).obj
          ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS W.1 W.2) i).obj E.obj)) ⊆ T) :
    ApproximationHolds B S hS W.1 W.2 T E m

AlgebraicGeometry.Space.approximationHolds_of_approximationHolds_edsEtale, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ApproximationExtensionByZero.lean, line 204. The attribute's comment: “for an elementary distinguished square (U ⊆ X, j : V ⟶ X), T ⊆ |X| \ |U| and a triple (T, E, m): approximation for (j^{-1}T, E|_V, m) with E|_V = quasicoherentDerivedEtalePullback of E, together with H^i(E) supported on T for i ≥ m, gives approximation for (T, E, m); nothing else is bound. T is any subset of |X| \ |U|, closedness being unused”.

Stacks 08HL. Let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over a scheme S, let T ⊆ |X| \ |U| and let (T, E, m) be a triple as in Stacks 08HI. If

  1. approximation holds for (j^{-1}T, E|_V, m), and
  2. the sheaves Hⁱ(E) for i ≥ m are supported on T,

then approximation holds for (T, E, m).

The approximation produced is j_!P ⟶ j_!(E|_V) ⟶ E for an approximation P ⟶ E|_V of the restricted triple; j_!P = Rj_*P by Stacks 08GG part (2) clause (c).

theorem approximationHolds_of_approximationHolds_edsEtale
    (T : Set (points B S hS W.1)) (hTU : T ⊆ edsComplementPoints B S hS Uo)
    (E : QuasicoherentDerivedCategory.{u, u} B S hS W.1 W.2) (m : ℤ)
    (happrox : ApproximationHolds B S hS (edsEtale B S hS hsq).1 (edsEtale B S hS hsq).2
      (pointsMap B S hS (edsEtale B S hS hsq).1 (edsEtaleHom B S hS hsq).hom ⁻¹' T)
      ((quasicoherentDerivedEtalePullback B S hS (edsEtaleHom B S hS hsq)
        (isEtale_edsEtaleHom B S hS hsq)).obj E) m)
    (hsupp : ∀ i : ℤ, m ≤ i →
      supportOfSheaf B S hS W.1
        ((SheafOfModules.toSheaf
            ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS W.1 W.2).O))).obj
          ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS W.1 W.2) i).obj E.obj)) ⊆ T) :
    ApproximationHolds B S hS W.1 W.2 T E m
Tag 08HM, a lemma

Tag 08HM in the Stacks Project.

AlgebraicGeometry.Space.approximationHolds_of_affineCover, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ApproximationAffine.lean, line 294. The attribute's comment: “approximation for a triple. CONDITIONAL. The assembly is the source's own and the library's Tag 08EQ, approximationHolds_of_zeroLocus, is genuinely applied; see the module docstring for every carried input and why it is missing”.

Stacks 08HM. Let S be a scheme and let X be an algebraic space over S which is representable by an affine scheme, say by Spec R. Then approximation holds for a triple (T, E, m) as in Stacks 08HI as soon as, for some r ≥ 0, E is m-pseudo-coherent, the sheaves Hⁱ(E) are supported on T for i ≥ m - r + 1, and T is the preimage under the comparison of points of a closed subset of Spec R cut out by r elements — which is the form of hypothesis (3) that Stacks 08EQ consumes.

The approximation produced is ε^*P₀ ⟶ ε^*E₀ ≅ E, for P₀ ⟶ E₀ the approximation of (V(f₁, …, f_r), E₀, m) supplied by Stacks 08EQ; the "What is carried" section of this file says what each hypothesis is and which of them the library does not prove.

theorem approximationHolds_of_affineCover
    (R : CommRingCat.{u}) {r : ℕ} (f : Fin r → R)
    (eps : (Spec R).Modules ⥤ Modules.{u, u} B S hS X hX)
    [eps.Additive] [PreservesFiniteLimits eps] [PreservesFiniteColimits eps]
    (ρ : points B S hS X → PrimeSpectrum R) (hρ : Function.Surjective ρ)
    (hstalk : ∀ (G₀ : (Spec R).Modules) (p : points B S hS X),
      p ∉ supportOfSheaf B S hS X
          ((SheafOfModules.toSheaf
              ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X hX).O))).obj (eps.obj G₀)) ↔
        IsZero (TopCat.Presheaf.stalk (X := Spec R) G₀.val.presheaf (ρ p)))
    (E : QuasicoherentDerivedCategory.{u, u} B S hS X hX) (m : ℤ)
    (E₀ : DerivedCategory.{u + 1} (Spec R).Modules)
    (hE₀ : eps.mapDerivedCategory.obj E₀ ≅ E.obj)
    (hqc₀ : ∀ i : ℤ,
      ((DerivedCategory.homologyFunctor (Spec R).Modules i).obj E₀).IsQuasicoherent)
    (hpc : (smallEtaleRingedSite B S hS X hX).IsPseudoCoherentFrom E.obj m)
    (hpcDescend : (smallEtaleRingedSite B S hS X hX).IsPseudoCoherentFrom E.obj m →
      RingedSpace.IsPseudoCoherentFrom (X := (Spec R).toRingedSpace) E₀ m)
    (hperfAscend : ∀ P₀ : DerivedCategory.{u + 1} (Spec R).Modules,
      Stacks.Cohomology.PerfectComplexes.IsPerfect (X := (Spec R).toRingedSpace) P₀ →
        (smallEtaleRingedSite B S hS X hX).IsPerfect (eps.mapDerivedCategory.obj P₀))
    (hsupp : ∀ i : ℤ, m - (r : ℤ) + 1 ≤ i →
      supportOfSheaf B S hS X
        ((SheafOfModules.toSheaf
            ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X hX).O))).obj
          ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS X hX) i).obj E.obj)) ⊆
        ρ ⁻¹' PrimeSpectrum.zeroLocus (Set.range f)) :
    ApproximationHolds B S hS X hX (ρ ⁻¹' PrimeSpectrum.zeroLocus (Set.range f)) E m

AlgebraicGeometry.Space.approximationByPerfectComplexes_of_affine, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ApproximationAffine.lean, line 399. The attribute's comment: “approximation by perfect complexes for an affine space. CONDITIONAL on the same ε-bridge, plus the presentation of each closed subset with quasi-compact open complement as the preimage of a zero locus of r elements; the deduction from the triple statement is proved”.

The "in particular" of Stacks 08HM: approximation by perfect complexes, in the sense of Stacks 08HJ, holds on an algebraic space representable by an affine scheme.

Given, for each closed T whose open complement has quasi-compact inclusion, a presentation of the corresponding closed subset of Spec R as the zero locus of r elements — which is what a closed subset with retrocompact complement has, by Stacks 00E8, and the step Stacks 08EQ identifies as the only missing one in its own hypothesis (3) — the integer of Stacks 08HJ is r, and the hypotheses of AlgebraicGeometry.Space.approximationHolds_of_affineCover follow from those of Stacks 08HJ: m-pseudo-coherence from (m - r)-pseudo-coherence by AlgebraicGeometry.Space.isPseudoCoherentFrom_mono, and support in the degrees ≥ m - r + 1 from support in the degrees ≥ m - r.

theorem approximationByPerfectComplexes_of_affine
    (R : CommRingCat.{u})
    (eps : (Spec R).Modules ⥤ Modules.{u, u} B S hS X hX)
    [eps.Additive] [PreservesFiniteLimits eps] [PreservesFiniteColimits eps]
    (ρ : points B S hS X → PrimeSpectrum R) (hρ : Function.Surjective ρ)
    (hstalk : ∀ (G₀ : (Spec R).Modules) (p : points B S hS X),
      p ∉ supportOfSheaf B S hS X
          ((SheafOfModules.toSheaf
              ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X hX).O))).obj (eps.obj G₀)) ↔
        IsZero (TopCat.Presheaf.stalk (X := Spec R) G₀.val.presheaf (ρ p)))
    (hpres : letI : TopologicalSpace (points B S hS X) := pointTopology B S hS X
      ∀ (T : Set (points B S hS X)) (hT : IsClosed T),
        IsQuasiCompact B S hS
            ((openSubspacesOrderIso B S hS X hX).symm ⟨Tᶜ, hT.isOpen_compl⟩).1.ι →
          ∃ (r : ℕ) (g : Fin r → R), T = ρ ⁻¹' PrimeSpectrum.zeroLocus (Set.range g))
    (E₀ : QuasicoherentDerivedCategory.{u, u} B S hS X hX →
      DerivedCategory.{u + 1} (Spec R).Modules)
    (hE₀ : ∀ E : QuasicoherentDerivedCategory.{u, u} B S hS X hX,
      eps.mapDerivedCategory.obj (E₀ E) ≅ E.obj)
    (hqc₀ : ∀ (E : QuasicoherentDerivedCategory.{u, u} B S hS X hX) (i : ℤ),
      ((DerivedCategory.homologyFunctor (Spec R).Modules i).obj (E₀ E)).IsQuasicoherent)
    (hpcDescend : ∀ (E : QuasicoherentDerivedCategory.{u, u} B S hS X hX) (m : ℤ),
      (smallEtaleRingedSite B S hS X hX).IsPseudoCoherentFrom E.obj m →
        RingedSpace.IsPseudoCoherentFrom (X := (Spec R).toRingedSpace) (E₀ E) m)
    (hperfAscend : ∀ P₀ : DerivedCategory.{u + 1} (Spec R).Modules,
      Stacks.Cohomology.PerfectComplexes.IsPerfect (X := (Spec R).toRingedSpace) P₀ →
        (smallEtaleRingedSite B S hS X hX).IsPerfect (eps.mapDerivedCategory.obj P₀)) :
    ApproximationByPerfectComplexes.{u, u} B S hS X hX

AlgebraicGeometry.Space.approximationHolds_of_isAffineSpace, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ApproximationIso.lean, line 412. The attribute's comment: “first assertion: approximation holds for every triple (T, E, m) with E m-pseudo-coherent, H^i(E) supported on T for i ≥ m - r + 1 and X \ T a union of r affine opens, for X an algebraic space representable by an affine scheme”.

Stacks 08HM. Let S be a scheme and let X be an algebraic space over S which is representable by an affine scheme. Then approximation holds (Stacks 08HI) for every triple (Z, E, m) for which there is an integer r ≥ 0 with

  1. E m-pseudo-coherent,
  2. Hⁱ(E) supported on Z for i ≥ m - r + 1,
  3. X ∖ Z the union of r affine opens V₁, …, V_r of X.

The case X = h_U is AlgebraicGeometry.Space.approximationHolds_of_isAffine_represented; the general case is transported along an isomorphism X ≅ h_U (AlgebraicGeometry.Space.approximationHolds_of_iso).

theorem approximationHolds_of_isAffineSpace (hXa : IsAffineSpace B S hS F)
    (Z : Set (points B S hS F))
    (E : QuasicoherentDerivedCategory.{u, u} B S hS F hF) (m : ℤ) (r : ℕ)
    (hpc : (smallEtaleRingedSite B S hS F hF).IsPseudoCoherentFrom E.obj m)
    (hsupp : ∀ i : ℤ, m - (r : ℤ) + 1 ≤ i →
      supportOfSheaf B S hS F
        ((SheafOfModules.toSheaf
            ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS F hF).O))).obj
          ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS F hF) i).obj E.obj)) ⊆ Z)
    (V : Fin r → {G : Subfunctor F // IsOpenSubspace B S hS G})
    (hV : ∀ k, IsAffineSpace B S hS (V k).1.toFunctor)
    (hcover : ⋃ k, Set.range (pointsMap B S hS (V k).1.toFunctor (V k).1.ι) = Zᶜ) :
    ApproximationHolds B S hS F hF Z E m

AlgebraicGeometry.Space.approximationByPerfectComplexes_of_isAffineSpace, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ApproximationIso.lean, line 444. The attribute's comment: “second assertion: approximation by perfect complexes holds on an algebraic space representable by an affine scheme”.

The "in particular" of Stacks 08HM: approximation by perfect complexes (Stacks 08HJ) holds on an algebraic space representable by an affine scheme.

theorem approximationByPerfectComplexes_of_isAffineSpace (hXa : IsAffineSpace B S hS F) :
    ApproximationByPerfectComplexes.{u, u} B S hS F hF

AlgebraicGeometry.Space.approximationHolds_and_approximationByPerfectComplexes_of_isAffineSpace, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ApproximationIsoTag.lean, line 60.

Stacks 08HM. Let S be a scheme and let X be an algebraic space over S which is representable by an affine scheme. Then

  1. approximation holds (Stacks 08HI) for every triple (Z, E, m) for which there is an integer r ≥ 0 with
  2. E m-pseudo-coherent,
  3. Hⁱ(E) supported on Z for i ≥ m - r + 1,
  4. X ∖ Z the union of r affine opens V₁, …, V_r of X;
  5. in particular, approximation by perfect complexes (Stacks 08HJ) holds for X.
theorem approximationHolds_and_approximationByPerfectComplexes_of_isAffineSpace
    (hXa : IsAffineSpace B S hS F) :
    (∀ (Z : Set (points B S hS F))
      (E : QuasicoherentDerivedCategory.{u, u} B S hS F hF) (m : ℤ) (r : ℕ),
      (smallEtaleRingedSite B S hS F hF).IsPseudoCoherentFrom E.obj m →
      (∀ i : ℤ, m - (r : ℤ) + 1 ≤ i →
        supportOfSheaf B S hS F
          ((SheafOfModules.toSheaf
              ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS F hF).O))).obj
            ((DerivedCategory.homologyFunctor (Modules.{u, u} B S hS F hF) i).obj E.obj)) ⊆ Z) →
      ∀ (V : Fin r → {G : Subfunctor F // IsOpenSubspace B S hS G}),
      (∀ k, IsAffineSpace B S hS (V k).1.toFunctor) →
      ⋃ k, Set.range (pointsMap B S hS (V k).1.toFunctor (V k).1.ι) = Zᶜ →
      ApproximationHolds B S hS F hF Z E m) ∧
    ApproximationByPerfectComplexes.{u, u} B S hS F hF
Tag 08HN, a lemma

Tag 08HN in the Stacks Project.

AlgebraicGeometry.Space.approximationByPerfectComplexes_of_isElementaryDistinguishedSquare, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ApproximationSquare.lean, line 136.

Stacks 08HN. Let S be a scheme and let (U ⊆ X, j : V ⟶ X) be an elementary distinguished square of algebraic spaces over S, with U quasi-compact, V affine and U ×_X V quasi-compact. If approximation by perfect complexes holds on U, then approximation by perfect complexes holds on X.

theorem approximationByPerfectComplexes_of_isElementaryDistinguishedSquare
    {X V : (BigFppfOver B S hS)ᵒᵖ ⥤ Type u} (hX : IsAlgebraicSpace B S hS X)
    (U : Subfunctor X) (f : V ⟶ X)
    (hsq : IsElementaryDistinguishedSquare B S hS hX U f)
    (hUqc : IsQuasiCompactSpace B S hS U.toFunctor)
    (hVaff : IsAffineSpace B S hS V)
    (hUVqc : IsQuasiCompactSpace B S hS (U.preimage f).toFunctor)
    (hU : ApproximationByPerfectComplexes.{u, u} B S hS U.toFunctor hsq.isOpenSubspace.1) :
    ApproximationByPerfectComplexes.{u, u} B S hS X hX
Tag 08HP, a theorem

Tag 08HP in the Stacks Project.

AlgebraicGeometry.Space.approximationByPerfectComplexes_of_qcqs, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/Perfect/ApproximationQcqs.lean, line 62.

Stacks 08HP. Let S be a scheme and let X be a quasi-compact and quasi-separated algebraic space over S. Then approximation by perfect complexes holds on X.

theorem approximationByPerfectComplexes_of_qcqs (hZ : B.Contains (⊤_ Scheme.{u}))
    (X : (BigFppfOver B S hS)ᵒᵖ ⥤ Type u) (hX : IsAlgebraicSpace B S hS X)
    (hXqc : IsQuasiCompactSpace B S hS X) (hXqs : IsAbsolutelyQuasiSeparated B S hS hZ X) :
    ApproximationByPerfectComplexes.{u, u} B S hS X hX
Sources

The dependency explorer needs JavaScript and its graph data.

Download the complete graph data.