56 Functors and Morphisms
Chapter 56 of the Stacks Project, Functors and Morphisms, Tag 0GNG: the 6 sections of its 7 with a tag that a declaration carries, one article each, in the Stacks Project's order. Their 44 tags are carried by 100 declarations of the repository (all in StacksFrontier) and 10 registered declarations.
Section56.2 Functors on module categories#
Section 56.2 of the Stacks Project, Tag 0GNI. 6 tags here are carried by 11 declarations of the repository (all in StacksFrontier) and 2 registered declarations, quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 0GNJ, a lemma
Tag 0GNJ in the Stacks Project.
ModuleCat.filteredColimitExtension, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/Extension.lean, line 71. The attribute's comment: “existence”. References: SGA 4 I (8.7.3), “existence, C=Mod^fp_A”.
A functor on finitely presented modules has an extension to all modules which preserves filtered colimits.
public noncomputable def filteredColimitExtension
[HasFilteredColimitsOfSize.{max u v, max u v} B]
(F : CategoryTheory.Functor (FinitelyPresentedModuleCat.{u, max u v} A) B) :
FilteredColimitExtension A F
ModuleCat.FilteredColimitExtension.existsUnique_iso, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/Extension.lean, line 89. The attribute's comment: “uniqueness”. References: SGA 4 I (8.7.3), “uniqueness, C=Mod^fp_A”; SGA 4 I (8.7.2), “special case”.
Two filtered-colimit-preserving extensions are related by a unique natural isomorphism compatible with their specified identifications on finitely presented modules.
public theorem FilteredColimitExtension.existsUnique_iso
{F : CategoryTheory.Functor (FinitelyPresentedModuleCat.{u, max u v} A) B}
(E₁ E₂ : FilteredColimitExtension A F) :
∃! e : CategoryTheory.Iso E₁.functor E₂.functor,
Functor.whiskerLeft (finitelyPresentedModule.{u, max u v} A).ι e.hom =
(CategoryTheory.Iso.trans E₁.iso E₂.iso.symm).hom
Tag 0GNK, a lemma
Tag 0GNK in the Stacks Project.
ModuleCat.filteredColimitExtension_additive, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/Additivity.lean, line 215. The attribute's comment: “additivity”.
A filtered-colimit-preserving extension of an additive functor from finitely presented modules is additive.
public lemma filteredColimitExtension_additive
(E : FilteredColimitExtension A F) [F.Additive] :
E.functor.Additive
ModuleCat.filteredColimitExtension_preservesCoproducts, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/Additivity.lean, line 222. The attribute's comment: “arbitrary direct sums”.
A filtered-colimit-preserving extension of an additive functor from finitely presented modules preserves arbitrary direct sums.
public lemma filteredColimitExtension_preservesCoproducts
(E : FilteredColimitExtension A F) [F.Additive]
(J : Type (max u v)) :
PreservesColimitsOfShape (Discrete J) E.functor
Tag 0GNL, a lemma
Tag 0GNL in the Stacks Project.
ModuleCat.filteredColimitExtension_functor_additive, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/RightExact.lean, line 620. The attribute's comment: “additivity”.
The extension of a right exact functor on finitely presented modules to all modules is additive.
public lemma filteredColimitExtension_functor_additive :
(filteredColimitExtension A G).functor.Additive
ModuleCat.filteredColimitExtension_functor_preservesFiniteColimits, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/RightExact.lean, line 627. The attribute's comment: “right exactness”.
The extension of a right exact functor on finitely presented modules to all modules is right exact.
public lemma filteredColimitExtension_functor_preservesFiniteColimits :
PreservesFiniteColimits (filteredColimitExtension A G).functor
ModuleCat.filteredColimitExtension_functor_preservesCoproducts, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/RightExact.lean, line 634. The attribute's comment: “arbitrary direct sums”.
The extension of a right exact functor on finitely presented modules to all modules commutes with arbitrary direct sums.
public lemma filteredColimitExtension_functor_preservesCoproducts (J : Type (max u v)) :
PreservesColimitsOfShape (Discrete J) (filteredColimitExtension A G).functor
Tag 0GNM, a lemma
Tag 0GNM in the Stacks Project.
ModuleCat.filteredColimitExtension_preservesFiniteLimits, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/LeftExact.lean, line 385. The attribute's comment: “left exactness”.
If filtered colimits commute with kernels in the target, the filtered-colimit extension of a left exact functor on finitely presented modules is left exact.
public lemma filteredColimitExtension_preservesFiniteLimits
[IsCoherentRing A] (E : FilteredColimitExtension A F) [HasKernels B]
[PreservesFiniteLimits F]
[HasFilteredColimitsOfSize.{max u v, max u v} B]
[∀ (J : Type (max u v)) [Category.{max u v} J] [IsFiltered J],
∀ {X Y : J ⥤ B} (f : X ⟶ Y),
PreservesLimit (parallelPair f 0) (colim : (J ⥤ B) ⥤ B)] :
PreservesFiniteLimits E.functor
Declarations registered for the tag:
ModuleCat.filteredColimitExtension_additive, declared in the repository, registered withadd_to_stacksin StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/LeftExact.lean, line 379 (StacksFrontier): “additivity”.ModuleCat.filteredColimitExtension_preservesCoproducts, declared in the repository, registered withadd_to_stacksin StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/LeftExact.lean, line 380 (StacksFrontier): “arbitrary direct sums”.
Tag 0GNN, a lemma
Tag 0GNN in the Stacks Project.
ModuleCat.rightExactFunctor_additive, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/ModuleAction.lean, line 235. The attribute's comment: “automatic additivity”.
A right exact functor on finitely presented modules is automatically additive.
public lemma rightExactFunctor_additive (A : Type u) (B : Type v) [Ring A]
[Category.{w} B] [Preadditive B] [HasFiniteBiproducts B]
(F : FPModule A ⥤ᵣ B) : F.obj.Additive
ModuleCat.evaluationFunctor_isEquivalence, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/ModuleActionEquivalence.lean, line 889.
Evaluation on the rank-one free module, with its natural action, classifies right exact functors on finitely presented modules.
public lemma evaluationFunctor_isEquivalence (A : Type u) (B : Type v) [Ring A]
[Category.{w} B] [Preadditive B] [HasFiniteBiproducts B] [HasCokernels B] :
(evaluationFunctor A B).IsEquivalence
Tag 0GNQ, a lemma
Tag 0GNQ in the Stacks Project.
ModuleCat.functorToRingActions_isEquivalence, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/RingActions.lean, line 475. References: EGA III (7.2.6).
Evaluation on the right regular module, with its natural
A-action, classifies right exact functors which preserve arbitrary coproducts.
public lemma functorToRingActions_isEquivalence :
(functorToRingActions A B).IsEquivalence
Sources
Section56.3 Functors between categories of modules#
Section 56.3 of the Stacks Project, Tag 0GNR. 8 tags here are carried by 24 declarations of the repository (all in StacksFrontier) and 1 registered declaration, quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 0GNS, a lemma
Tag 0GNS in the Stacks Project.
ModuleCat.tfae_iso_tensorFunctor_preserves_colimits_isLeftAdjoint, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/BimoduleTensor.lean, line 311. References: EGA III (7.3.1), “(a) <=> (e)”; EGA III (7.2.6), “(1) <=> (2)”; EGA III (7.2.5), “(a) <=> (c)”.
A functor between module categories is tensoring with a bimodule iff it is right exact and commutes with arbitrary direct sums; these are also equivalent to preserving all colimits and to having a right adjoint.
public lemma tfae_iso_tensorFunctor_preserves_colimits_isLeftAdjoint
(F : ModuleCat.{u} A ⥤ ModuleCat.{u} B) :
List.TFAE
[ ∃ K : ModuleCat.{u} (A ⊗[ℤ] B),
Nonempty (tensorFunctorOverInt A B K ≅ F),
PreservesFiniteColimits F ∧
∀ J : Type u, PreservesColimitsOfShape (Discrete J) F,
PreservesColimits F,
F.IsLeftAdjoint ]
Tag 0GNT, an example
Tag 0GNT in the Stacks Project.
ModuleCat.tensorFunctor, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/TensorFunctor.lean, line 72. The attribute's comment: “the functor”.
Tensoring with an
A ⊗[R] B-module, regarded as a functor fromA-modules toB-modules.
public noncomputable def tensorFunctor
(K : ModuleCat.{u} (A ⊗[R] B)) : ModuleCat.{u} A ⥤ ModuleCat.{u} B
ModuleCat.tensorFunctor_linear, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/TensorFunctor.lean, line 82. The attribute's comment: “R-linearity”.
Tensoring with an
A ⊗[R] B-module isR-linear.
public lemma tensorFunctor_linear (K : ModuleCat.{u} (A ⊗[R] B)) :
(tensorFunctor R A B K).Linear R
ModuleCat.tensorFunctor_preservesFiniteColimits, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/TensorFunctor.lean, line 95. The attribute's comment: “right exactness”.
Tensoring with an
A ⊗[R] B-module is right exact.
public lemma tensorFunctor_preservesFiniteColimits (K : ModuleCat.{u} (A ⊗[R] B)) :
PreservesFiniteColimits (tensorFunctor R A B K)
ModuleCat.tensorFunctor_preservesDirectSums, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/TensorFunctor.lean, line 100. The attribute's comment: “arbitrary direct sums”.
Tensoring with an
A ⊗[R] B-module commutes with arbitrary direct sums.
public lemma tensorFunctor_preservesDirectSums (K : ModuleCat.{u} (A ⊗[R] B))
(J : Type u) :
PreservesColimitsOfShape (Discrete J) (tensorFunctor R A B K)
ModuleCat.tensorFunctor_preservesColimits, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/TensorFunctor.lean, line 107. The attribute's comment: “all colimits”.
Tensoring with an
A ⊗[R] B-module commutes with all colimits.
public lemma tensorFunctor_preservesColimits (K : ModuleCat.{u} (A ⊗[R] B)) :
PreservesColimits (tensorFunctor R A B K)
ModuleCat.tensorFunctor_isLeftAdjoint, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/TensorFunctor.lean, line 112. The attribute's comment: “right adjoint”.
Tensoring with an
A ⊗[R] B-module has a right adjoint.
public lemma tensorFunctor_isLeftAdjoint (K : ModuleCat.{u} (A ⊗[R] B)) :
(tensorFunctor R A B K).IsLeftAdjoint
Tag 0GNV, a lemma
Tag 0GNV in the Stacks Project.
ModuleCat.tensorFunctorEquivalence, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/LinearTensorEquivalence.lean, line 782. The attribute's comment: “the equivalence”. References: EGA III (7.2.6), “commutative rings”.
Modules over
A ⊗[R] Bare equivalent toR-linear right exact functors fromA-modules toB-modules which preserve arbitrary direct sums.
public noncomputable def tensorFunctorEquivalence :
ModuleCat.{u} (A ⊗[R] B) ≌
ObjectProperty.FullSubcategory
(IsLinearRightExactAndPreservesDirectSums R A B)
ModuleCat.tensorFunctorEquivalence_functorIso, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/LinearTensorEquivalence.lean, line 793. The attribute's comment: “given by tensoring”. References: EGA III (7.2.6), “N ↦ T_N”.
The functor underlying
tensorFunctorEquivalenceis naturally isomorphic to the functor which sends a moduleKto tensoring withK.
public lemma tensorFunctorEquivalence_functorIso :
Nonempty
((tensorFunctorEquivalence R A B).functor ≅ moduleTensorFunctorLift R A B)
Tag 0GNW, a remark
Tag 0GNW in the Stacks Project.
ModuleCat.moduleTensorFunctor_comp, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/TensorComposition.lean, line 254.
The tensor product over the middle algebra represents the composite of two tensor functors. The equation on pure tensors records the canonical action of
A ⊗[R] C, and the functor isomorphism includes naturality in the inputA-module.
public lemma moduleTensorFunctor_comp
(K : ModuleCat.{u} (A ⊗[R] B)) (K' : ModuleCat.{u} (B ⊗[R] C)) :
letI : Module A K := Module.compHom K
(Algebra.TensorProduct.includeLeftRingHom (R := R) (A := A) (B := B))
letI : Module B K := Module.compHom K
(Algebra.TensorProduct.includeRight (R := R) (A := A) (B := B)).toRingHom
letI : Module B K' := Module.compHom K'
(Algebra.TensorProduct.includeLeftRingHom (R := R) (A := B) (B := C))
letI : Module C K' := Module.compHom K'
(Algebra.TensorProduct.includeRight (R := R) (A := B) (B := C)).toRingHom
∃ inst : Module (A ⊗[R] C) (K ⊗[B] K'),
letI : Module (A ⊗[R] C) (K ⊗[B] K') := inst
(∀ (a : A) (c : C) (k : K) (k' : K'),
(a ⊗ₜ[R] c) • (k ⊗ₜ[B] k') = (a • k) ⊗ₜ[B] (c • k')) ∧
Nonempty
((moduleTensorFunctor R A C).obj
(ModuleCat.of (A ⊗[R] C) (K ⊗[B] K')) ≅
((moduleTensorFunctor R A B).obj K ⋙
(moduleTensorFunctor R B C).obj K'))
Tag 0GNX, a remark
Tag 0GNX in the Stacks Project.
ModuleCat.tensorFunctor_exact_iff_flat, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/TensorFunctorExactness.lean, line 139. References: EGA 0 (6.1.1), “more general”.
Tensoring with an
A ⊗[R] B-moduleKis an exact functor fromA-modules toB-modules if and only ifKis flat as anA-module.
public theorem tensorFunctor_exact_iff_flat
(R A B : Type u) [CommRing R] [CommRing A] [CommRing B] [Algebra R A] [Algebra R B]
(K : ModuleCat.{u} (A ⊗[R] B)) :
exactFunctor (ModuleCat.{u} A) (ModuleCat.{u} B) (tensorFunctor R A B K) ↔
Module.Flat A ((restrictScalars
(Algebra.TensorProduct.includeLeftRingHom (R := R) (A := A) (B := B))).obj K)
Tag 0GP0, a lemma
Tag 0GP0 in the Stacks Project.
ModuleCat.exists_ringEquiv_invertible_iso_extensionTensorFunctor, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/ModuleEquivalences.lean, line 627.
Stacks Project, Tag 0GP0. Every equivalence between categories of modules is extension of scalars along an isomorphism of the rings, followed by tensoring with an invertible module.
public lemma exists_ringEquiv_invertible_iso_extensionTensorFunctor
(A B : Type u) [CommRing A] [CommRing B]
(F : ModuleCat.{u} A ⥤ ModuleCat.{u} B) [F.IsEquivalence] :
∃ (e : A ≃+* B) (L : ModuleCat.{u} B),
Module.Invertible B L ∧ Nonempty (F ≅ extensionTensorFunctor A B e L)
Tag 0GP1, a lemma
Tag 0GP1 in the Stacks Project.
ModuleCat.exists_algEquiv_invertible_iso_extensionTensorFunctor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/LinearModuleEquivalences.lean, line 89.
Stacks Project, Tag 0GP1. An equivalence of module categories linear over the base ring is extension of scalars along an algebra isomorphism, followed by tensoring with an invertible module.
public theorem exists_algEquiv_invertible_iso_extensionTensorFunctor
(R : Type v) (A B : Type u) [CommRing R] [CommRing A] [CommRing B]
[Algebra R A] [Algebra R B]
(F : ModuleCat.{u} A ⥤ ModuleCat.{u} B) [F.IsEquivalence]
[F.Linear R] :
∃ (e : A ≃ₐ[R] B) (L : ModuleCat.{u} B),
Module.Invertible B L ∧
Nonempty (F ≅ extensionTensorFunctor A B e.toRingEquiv L)
Tag 0GP2, a remark
Tag 0GP2 in the Stacks Project.
ModuleCat.monoidHomOfMonoidal, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/MonoidalFunctors.lean, line 101. The attribute's comment: “part (2): multiplicative scalar map”.
A monoidal functor canonically induces a multiplicative map on scalars.
public noncomputable def monoidHomOfMonoidal
(F : ModuleCat.{u} A ⥤ ModuleCat.{u} B) [F.Monoidal] :
{ φ : A →* B // ∀ a, φ a = scalarValue F a }
ModuleCat.scalarValue_add, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/MonoidalFunctors.lean, line 147. The attribute's comment: “part (4): additive scalar map”.
The scalar map of an additive monoidal functor preserves addition.
public theorem scalarValue_add (F : ModuleCat.{u} A ⥤ ModuleCat.{u} B)
[F.Monoidal] [F.Additive] (a b : A) :
scalarValue F (a + b) = scalarValue F a + scalarValue F b
ModuleCat.ringHomOfAdditive, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/MonoidalFunctors.lean, line 172. The attribute's comment: “part (4): ring homomorphism”.
An additive monoidal functor induces a ring homomorphism.
public noncomputable def ringHomOfAdditive
(F : ModuleCat.{u} A ⥤ ModuleCat.{u} B) [F.Monoidal] [F.Additive] :
{ φ : A →+* B // ∀ a, φ a = scalarValue F a }
ModuleCat.tensorSquare, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/MonoidalFunctors.lean, line 185. The attribute's comment: “part (3): tensor-square example”.
Tensor squaring is a monoidal functor whose scalar map is squaring.
public theorem tensorSquare (A : Type u) [CommRing A] :
∃ h : (tensorSquareFunctor A).Monoidal,
∀ a : A, letI : (tensorSquareFunctor A).Monoidal := h
scalarValue (tensorSquareFunctor A) a = a ^ 2
ModuleCat.torsionFreeQuotient, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/MonoidalFunctors.lean, line 302. The attribute's comment: “part (5): monoidal torsion-free quotient”.
Quotienting abelian groups by torsion is monoidal.
public theorem torsionFreeQuotient :
Nonempty torsionFreeQuotientFunctor.{u}.Monoidal
ModuleCat.torsionFreeQuotient_scalarValue, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/MonoidalFunctors.lean, line 383. The attribute's comment: “part (5): induced scalar map is the identity”.
For any monoidal structure on torsion-free quotient, conjugating the image of each scalar endomorphism of the monoidal unit gives that same scalar endomorphism. This expresses that the induced scalar map is the identity in every module universe.
public theorem torsionFreeQuotient_scalarValue
(h : torsionFreeQuotientFunctor.{u}.Monoidal) (a : ℤ) :
letI : torsionFreeQuotientFunctor.{u}.Monoidal := h
(Functor.Monoidal.εIso torsionFreeQuotientFunctor.{u}).hom ≫
torsionFreeQuotientFunctor.{u}.map
(a • (𝟙 (𝟙_ (ModuleCat.{u} ℤ)))) ≫
(Functor.Monoidal.εIso torsionFreeQuotientFunctor.{u}).inv =
a • (𝟙 (𝟙_ (ModuleCat.{u} ℤ)))
ModuleCat.torsionFreeQuotient_scalar_action, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/MonoidalFunctors.lean, line 409. The attribute's comment: “part (5): scalar endomorphisms on all modules”.
Torsion-free quotient preserves multiplication by every integer on every module.
public theorem torsionFreeQuotient_scalar_action (M : ModuleCat.{u} ℤ) (a : ℤ) :
torsionFreeQuotientFunctor.{u}.map
(ModuleCat.ofHom (a • (LinearMap.id : M →ₗ[ℤ] M))) =
ModuleCat.ofHom (a • (LinearMap.id :
torsionFreeQuotientFunctor.{u}.obj M →ₗ[ℤ]
torsionFreeQuotientFunctor.{u}.obj M))
ModuleCat.torsionFreeQuotient_not_iso_id, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/MonoidalFunctors.lean, line 419. The attribute's comment: “part (5): nonidentity example”.
Torsion-free quotient is not naturally isomorphic to the identity functor.
public theorem torsionFreeQuotient_not_iso_id :
¬ Nonempty (torsionFreeQuotientFunctor.{u} ≅ 𝟭 (ModuleCat.{u} ℤ))
ModuleCat.iso_extendScalars_of_rightExact_preservesDirectSums, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/MonoidalFunctors.lean, line 634. The attribute's comment: “part (6): extension of scalars”.
A right-exact monoidal functor commuting with direct sums is extension of scalars along its induced ring map, compatibly with the monoidal structures.
public theorem iso_extendScalars_of_rightExact_preservesDirectSums
(F : ModuleCat.{u} A ⥤ ModuleCat.{u} B) [F.Monoidal]
[PreservesFiniteColimits F]
(hF : ∀ J : Type u, PreservesColimitsOfShape (Discrete J) F) :
∃ φ : A →+* B,
(∀ a, φ a = scalarValue F a) ∧
∃ i : F ≅ ModuleCat.extendScalars φ,
NatTrans.IsMonoidal i.hom
ModuleCat.extendScalars_injective_up_to_iso, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/MonoidalFunctors.lean, line 672. The attribute's comment: “classification: uniqueness”.
Ring maps are uniquely determined by the corresponding monoidal extension-of-scalars functors, up to natural isomorphism.
public theorem extendScalars_injective_up_to_iso (φ ψ : A →+* B)
(h : Nonempty (ModuleCat.extendScalars.{u, u, u} φ ≅
ModuleCat.extendScalars.{u, u, u} ψ)) :
φ = ψ
ModuleCat.extendScalars_monoidal_preservesColimits, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/MonoidalFunctors.lean, line 694. The attribute's comment: “classification: existence”.
Every ring map gives a cocontinuous monoidal extension-of-scalars functor.
public theorem extendScalars_monoidal_preservesColimits (φ : A →+* B) :
Nonempty (ModuleCat.extendScalars.{u, u, u} φ).Monoidal ∧
PreservesColimits (ModuleCat.extendScalars.{u, u, u} φ)
Declarations registered for the tag:
CategoryTheory.Functor.Monoidal.εIsoregistered withadd_to_stacksin StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsBetweenCategories/MonoidalFunctors.lean, line 97 (StacksFrontier): “part (1): the unit isomorphism”.
Sources
Section56.4 Extending functors on categories of modules#
Section 56.4 of the Stacks Project, Tag 0GP3. 5 tags here are carried by 12 declarations of the repository (all in StacksFrontier) and 3 registered declarations, quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 0GP4, a lemma
Tag 0GP4 in the Stacks Project.
ModuleCat.filteredColimitExtension, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/Extension.lean, line 71. The attribute's comment: “existence, at the target category of all B-modules”. References: SGA 4 I (8.7.3), “existence, C=Mod^fp_A”.
A functor on finitely presented modules has an extension to all modules which preserves filtered colimits.
public noncomputable def filteredColimitExtension
[HasFilteredColimitsOfSize.{max u v, max u v} B]
(F : CategoryTheory.Functor (FinitelyPresentedModuleCat.{u, max u v} A) B) :
FilteredColimitExtension A F
ModuleCat.FilteredColimitExtension.existsUnique_iso, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/FunctorsModuleCategories/Extension.lean, line 89. The attribute's comment: “existence, at the target category of all B-modules”. References: SGA 4 I (8.7.3), “uniqueness, C=Mod^fp_A”; SGA 4 I (8.7.2), “special case”.
Two filtered-colimit-preserving extensions are related by a unique natural isomorphism compatible with their specified identifications on finitely presented modules.
public theorem FilteredColimitExtension.existsUnique_iso
{F : CategoryTheory.Functor (FinitelyPresentedModuleCat.{u, max u v} A) B}
(E₁ E₂ : FilteredColimitExtension A F) :
∃! e : CategoryTheory.Iso E₁.functor E₂.functor,
Functor.whiskerLeft (finitelyPresentedModule.{u, max u v} A).ι e.hom =
(CategoryTheory.Iso.trans E₁.iso E₂.iso.symm).hom
Tag 0GP5, a remark
Tag 0GP5 in the Stacks Project.
ModuleCat.finitelyPresentedModule_isMonoidal, an instance in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/ExtendingFunctorsCategories/Monoidal.lean, line 153. The attribute's comment: “monoidal structure on finitely presented modules”.
Finitely presented modules form a monoidal full subcategory of modules.
instance finitelyPresentedModule_isMonoidal :
(finitelyPresentedModule.{u, max u v} R).IsMonoidal
ModuleCat.filteredColimitExtension_monoidal, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/ExtendingFunctorsCategories/Monoidal.lean, line 302. The attribute's comment: “monoidal extension”.
A monoidal functor on finitely presented modules has a monoidal filtered-colimit-preserving extension to all modules.
theorem filteredColimitExtension_monoidal
(F : FinitelyPresentedModuleCat.{u, max u v} R ⥤
FinitelyPresentedModuleCat.{w, max w x} S)
[F.Monoidal]
(E : FilteredColimitExtension R
(F ⋙ (finitelyPresentedModule.{w, max w x} S).ι)) :
∃ h : E.functor.Monoidal,
letI := h
NatTrans.IsMonoidal E.iso.hom
Tag 0GP6, a lemma
Tag 0GP6 in the Stacks Project.
Declarations registered for the tag:
ModuleCat.filteredColimitExtension_additive, declared in the repository, registered withadd_to_stacksin StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/ExtendingFunctorsCategories/RightExactness.lean, line 47 (StacksFrontier): “part (1), additivity”.ModuleCat.filteredColimitExtension_preservesCoproducts, declared in the repository, registered withadd_to_stacksin StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/ExtendingFunctorsCategories/RightExactness.lean, line 48 (StacksFrontier): “part (1), arbitrary direct sums”.ModuleCat.filteredColimitExtension_preservesFiniteColimits, declared in the repository, registered withadd_to_stacksin StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/ExtendingFunctorsCategories/RightExactness.lean, line 50 (StacksFrontier): “part (2)”.
Tag 0GP8, a lemma
Tag 0GP8 in the Stacks Project.
ModuleCat.filteredColimitExtension_preservesFiniteLimits_moduleValued, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/ExtendingFunctorsCategories/LeftExactness.lean, line 204.
Stacks Project, Tag 0GP8. The filtered-colimit-preserving extension of a left exact functor on finitely presented modules is left exact when the source ring is coherent. This is the module-valued form: the functor takes values in all modules over the second ring, not only in the finitely presented ones.
theorem filteredColimitExtension_preservesFiniteLimits_moduleValued
(A : Type u) [CommRing A] [IsCoherentRing A]
(B : Type w) [Ring B]
(F : FinitelyPresentedModuleCat.{u, max u v} A ⥤
ModuleCat.{max w x} B)
(E : FilteredColimitExtension A F)
[PreservesFiniteLimits F] :
PreservesFiniteLimits E.functor
Tag 0GP9, a lemma
Tag 0GP9 in the Stacks Project.
ModuleCat.fgFilteredColimitExtension_additive, an instance in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/ExtendingFunctorsCategories/Additivity.lean, line 46. The attribute's comment: “additivity”.
Stacks Project, Tag 0GP9. Every filtered-colimit-preserving extension of an additive functor on finite modules is additive.
instance fgFilteredColimitExtension_additive
{F : FGModuleCat.{v} A ⥤ FGModuleCat.{v} B}
(E : FGFilteredColimitExtension.{u, v, w} A B F) [F.Additive] :
E.functor.Additive
ModuleCat.FGFilteredColimitExtension.preservesCoproducts, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/ExtendingFunctorsCategories/DirectSums.lean, line 44. The attribute's comment: “direct_sums”.
Stacks Project, Tag 0GP9. An additive functor on finite modules has a direct-sum-preserving filtered-colimit extension to all modules.
lemma FGFilteredColimitExtension.preservesCoproducts
(A : Type u) [CommRing A] [IsNoetherianRing A]
(B : Type w) [CommRing B]
{F : FGModuleCat.{v} A ⥤ FGModuleCat.{v} B}
(E : FGFilteredColimitExtension.{u, v, w} A B F)
[F.Additive] (J : Type v) :
PreservesColimitsOfShape (Discrete J) E.functor
ModuleCat.FGFilteredColimitExtension.exactFunctor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/ExtendingFunctorsCategories/ExactFunctor.lean, line 43. The attribute's comment: “exactness”.
Stacks Project, Tag 0GP9. A filtered-colimit extension of an exact functor between finite module categories over Noetherian rings is exact.
theorem FGFilteredColimitExtension.exactFunctor
(A : Type u) [CommRing A] [IsNoetherianRing A]
(B : Type w) [CommRing B] [IsNoetherianRing B]
(F : FGModuleCat.{v} A ⥤ FGModuleCat.{v} B)
(E : FGFilteredColimitExtension.{u, v, w} A B F)
(hF : exactFunctor (FGModuleCat.{v} A) (FGModuleCat.{v} B) F) :
exactFunctor (ModuleCat.{v} A) (ModuleCat.{v} B) E.functor
ModuleCat.fgFilteredColimitExtension, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/ExtendingFunctorsCategories/Extension.lean, line 384. The attribute's comment: “extension”.
Stacks Project, Tag 0GP9. A functor between finite module categories over Noetherian rings extends to all modules and commutes with filtered colimits.
noncomputable def fgFilteredColimitExtension
[IsNoetherianRing A]
(F : FGModuleCat.{v} A ⥤ FGModuleCat.{v} B) :
FGFilteredColimitExtension.{u, v, w} A B F
ModuleCat.FGFilteredColimitExtension.existsUnique_iso, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/ExtendingFunctorsCategories/Extension.lean, line 443. The attribute's comment: “extension”.
Stacks Project, Tag 0GP9. Two filtered-colimit-preserving extensions are related by a unique natural isomorphism compatible with their specified identifications on finite modules.
theorem FGFilteredColimitExtension.existsUnique_iso
{F : FGModuleCat.{v} A ⥤ FGModuleCat.{v} B}
(E₁ E₂ : FGFilteredColimitExtension.{u, v, w} A B F) :
∃! e : E₁.functor ≅ E₂.functor,
Functor.whiskerLeft (forget₂ (FGModuleCat.{v} A) (ModuleCat.{v} A)) e.hom =
(E₁.iso.trans E₂.iso.symm).hom
ModuleCat.fgFilteredColimitExtension_preservesFiniteLimits, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/ExtendingFunctorsCategories/LeftExactness.lean, line 262. The attribute's comment: “left_exactness”.
Stacks Project, Tag 0GP9. A left exact functor on finite modules over Noetherian rings has a left exact filtered-colimit-preserving extension to all modules.
theorem fgFilteredColimitExtension_preservesFiniteLimits
(A : Type u) [CommRing A] [IsNoetherianRing A]
(B : Type w) [CommRing B] [IsNoetherianRing B]
(F : FGModuleCat.{v} A ⥤ FGModuleCat.{v} B)
(E : FGFilteredColimitExtension.{u, v, w} A B F)
[PreservesFiniteLimits F] :
PreservesFiniteLimits E.functor
ModuleCat.FGFilteredColimitExtension.preservesFiniteColimits, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/ExtendingFunctorsCategories/RightExactness.lean, line 56. The attribute's comment: “right_exactness”.
Stacks Project, Tag 0GP9. A filtered-colimit extension of a right exact functor on finite modules is right exact. The Noetherian hypothesis on
Ais what supplies the extension in the first place; the proof below only uses the extension.
lemma FGFilteredColimitExtension.preservesFiniteColimits
(A : Type u) [CommRing A] [IsNoetherianRing A] (B : Type w) [CommRing B]
{F : FGModuleCat.{v} A ⥤ FGModuleCat.{v} B}
(E : FGFilteredColimitExtension.{u, v, w} A B F)
[PreservesFiniteColimits F] :
PreservesFiniteColimits E.functor
Sources
Section56.5 Functors between categories of quasi-coherent modules#
Section 56.5 of the Stacks Project, Tag 0FZA. 11 tags here are carried by 22 declarations of the repository (all in StacksFrontier) and 4 registered declarations, quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 0FZB, an example
Tag 0FZB in the Stacks Project.
AlgebraicGeometry.quasicoherentIntegralTransformData, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Basic.lean, line 153. The attribute's comment: “the functor”.
Stacks Project, Tag 0FZB (the functor). A quasi-coherent kernel on
X ×_R Ydefines the pullback--tensor--pushforward functor from quasi-coherent modules onXto quasi-coherent modules onY.
noncomputable def quasicoherentIntegralTransformData
(R : Type u) [CommRing R] (X Y : Over (Spec (.of R)))
[CompactSpace X.left] [QuasiSeparatedSpace X.left]
(K : (SheafOfModules.isQuasicoherent
(pullback X.hom Y.hom).ringCatSheaf).FullSubcategory) :
IntegralTransformData R X Y K
AlgebraicGeometry.quasicoherentIntegralTransform_additive, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Basic.lean, line 425. The attribute's comment: “additivity”.
The integral transform is additive on morphisms.
theorem quasicoherentIntegralTransform_additive
(R : Type u) [CommRing R] (X Y : Over (Spec (.of R)))
[CompactSpace X.left] [QuasiSeparatedSpace X.left]
(K : (SheafOfModules.isQuasicoherent
(pullback X.hom Y.hom).ringCatSheaf).FullSubcategory) :
(quasicoherentIntegralTransform R X Y K).Additive
AlgebraicGeometry.quasicoherentIntegralTransform_isLinearOverBase, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Basic.lean, line 480. The attribute's comment: “R-linearity”.
Stacks Project, Tag 0FZB (linearity). The integral transform associated to a quasi-coherent kernel is linear over the base ring.
theorem quasicoherentIntegralTransform_isLinearOverBase
(R : Type u) [CommRing R] (X Y : Over (Spec (.of R)))
[CompactSpace X.left] [QuasiSeparatedSpace X.left]
(K : (SheafOfModules.isQuasicoherent
(pullback X.hom Y.hom).ringCatSheaf).FullSubcategory) :
letI : Linear R (SheafOfModules.{u} X.left.ringCatSheaf) := modulesLinear R X
letI : Linear R (SheafOfModules.{u} Y.left.ringCatSheaf) := modulesLinear R Y
(quasicoherentIntegralTransform R X Y K).Linear R
AlgebraicGeometry.quasicoherentIntegralTransform_preservesDirectSums, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Basic.lean, line 598. The attribute's comment: “arbitrary direct sums”.
Stacks Project, Tag 0FZB (direct sums). The integral transform associated to a quasi-coherent kernel commutes with arbitrary direct sums.
theorem quasicoherentIntegralTransform_preservesDirectSums
(R : Type u) [CommRing R] (X Y : Over (Spec (.of R)))
[CompactSpace X.left] [QuasiSeparatedSpace X.left]
(K : (SheafOfModules.isQuasicoherent
(pullback X.hom Y.hom).ringCatSheaf).FullSubcategory) (I : Type u) :
PreservesColimitsOfShape (Discrete I)
(quasicoherentIntegralTransform R X Y K)
Declarations registered for the tag:
AlgebraicGeometry.quasiCompact_of_compactSpaceregistered withadd_to_stacksin StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Basic.lean, line 82 (StacksFrontier): “quasi-compactness: source criterion”. References: EGA IV (1.2.4), “Case Z = Spec ℤ”; SGA 3 VIB (11.1), “special case”; SGA 3 VIB (12.9), “special case”; SGA 4 VI (1.14), “(i), special case”; SGA 4 VI (1.8), “(iv), special case”; SGA 4 VI (1.9.1), “(iv), special case”.AlgebraicGeometry.quasiCompact_isStableUnderBaseChangeregistered withadd_to_stacksin StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Basic.lean, line 90 (StacksFrontier): “quasi-compactness: base change”. References: EGA I (6.3.4), “clause (iv)”; EGA I (6.6.4); EGA III (6.9.1), “partial”; EGA III (6.9.4), “more general”; EGA III (7.7.2), “quasi-compactness of f'”; EGA IV (1.1.2); EGA IV (2.3.7), “(i)”; EGA IV (2.6.4), “necessity in (v)”; SGA 1 VIII (3.3), “quasi-compact clause”; SGA 4 VI (1.8), “(ii), special case”; SGA 4 VI (1.9.1), “(ii), special case”; SGA 4 VIII (5.1), “partial”; SGA 7 VII (1.3.8), “partial”.AlgebraicGeometry.QuasiSeparated.of_quasiSeparatedSpaceregistered withadd_to_stacksin StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Basic.lean, line 107 (StacksFrontier): “quasi-separatedness: source criterion”. References: EGA IV (1.2.2), “(v), special case”; EGA IV (1.2.3); EGA IV (1.2.6), “partial”.AlgebraicGeometry.quasiSeparated_isStableUnderBaseChangeregistered withadd_to_stacksin StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Basic.lean, line 112 (StacksFrontier): “quasi-separatedness: base change”. References: EGA IV (1.2.2); EGA IV (2.7.1), “(ii)”; SGA 4 VI (1.8), “(ii), special case”; SGA 4 VI (1.9.1), “(ii), special case”; SGA 4 VIII (5.1), “partial”; SGA 7 VII (1.3.8), “partial”.
Tag 0FZD, a lemma
Tag 0FZD in the Stacks Project.
AlgebraicGeometry.integralTransformQcohFunctorLift, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Equivalence.lean, line 1967. The attribute's comment: “the functor from quasi-coherent kernels to right exact linear functors”.
Stacks Project, Tag 0FZD. For
Xaffine, the integral transform of a quasi-coherent kernel onX ×_R Y, as a functor of the kernel, with codomain theR-linear right exact functors from quasi-coherent modules onXto quasi-coherent modules onYwhich commute with arbitrary direct sums.
noncomputable def integralTransformQcohFunctorLift
(R : Type u) [CommRing R] (X Y : Over (Spec (.of R))) [IsAffine X.left] :
(SheafOfModules.isQuasicoherent
(pullback X.hom Y.hom).ringCatSheaf).FullSubcategory ⥤
(rightExactLinearCoproductFunctor R X Y).FullSubcategory
AlgebraicGeometry.integralTransformQcohFunctorLift_obj_obj, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Equivalence.lean, line 1979. The attribute's comment: “the functor sends a kernel to its integral transform”.
Stacks Project, Tag 0FZD. For
Xaffine, the integral transform of a quasi-coherent kernel onX ×_R Yis, on objects, the functorF ↦ pr_{2,*}(pr_1^* F ⊗ K)of Tag 0FZB.
theorem integralTransformQcohFunctorLift_obj_obj
(R : Type u) [CommRing R] (X Y : Over (Spec (.of R))) [IsAffine X.left]
(K : (SheafOfModules.isQuasicoherent
(pullback X.hom Y.hom).ringCatSheaf).FullSubcategory) :
((integralTransformQcohFunctorLift R X Y).obj K).obj =
quasicoherentIntegralTransform R X Y K
AlgebraicGeometry.faithful_integralTransformQcohFunctorLift, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Equivalence.lean, line 1989. The attribute's comment: “the functor is faithful”.
Stacks Project, Tag 0FZD. For
Xaffine, the functor sending a quasi-coherent kernel onX ×_R Yto its integral transform is faithful.
theorem faithful_integralTransformQcohFunctorLift
(R : Type u) [CommRing R] (X Y : Over (Spec (.of R))) [IsAffine X.left] :
(integralTransformQcohFunctorLift R X Y).Faithful
AlgebraicGeometry.full_integralTransformQcohFunctorLift, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Equivalence.lean, line 2010. The attribute's comment: “the functor is full”.
Stacks Project, Tag 0FZD. For
Xaffine, the functor sending a quasi-coherent kernel onX ×_R Yto its integral transform is full.
theorem full_integralTransformQcohFunctorLift
(R : Type u) [CommRing R] (X Y : Over (Spec (.of R))) [IsAffine X.left] :
(integralTransformQcohFunctorLift R X Y).Full
AlgebraicGeometry.essSurj_integralTransformQcohFunctorLift, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Equivalence.lean, line 2032. The attribute's comment: “the functor is essentially surjective”.
Stacks Project, Tag 0FZD. For
Xaffine, everyR-linear right exact functor from quasi-coherent modules onXto quasi-coherent modules onYwhich commutes with arbitrary direct sums is the integral transform of a quasi-coherent kernel onX ×_R Y.
theorem essSurj_integralTransformQcohFunctorLift
(R : Type u) [CommRing R] (X Y : Over (Spec (.of R))) [IsAffine X.left] :
(integralTransformQcohFunctorLift R X Y).EssSurj
AlgebraicGeometry.integralTransformQcohEquivalence, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Equivalence.lean, line 2044. The attribute's comment: “the equivalence of categories”.
Stacks Project, Tag 0FZD. For
Xaffine, the integral transform of a quasi-coherent kernel is an equivalence from the quasi-coherent modules onX ×_R Yto theR-linear right exact functors from quasi-coherent modules onXto quasi-coherent modules onYwhich commute with arbitrary direct sums.
noncomputable def integralTransformQcohEquivalence
(R : Type u) [CommRing R] (X Y : Over (Spec (.of R))) [IsAffine X.left] :
(SheafOfModules.isQuasicoherent (pullback X.hom Y.hom).ringCatSheaf).FullSubcategory ≌
(rightExactLinearCoproductFunctor R X Y).FullSubcategory
AlgebraicGeometry.integralTransformQcohEquivalence_functor_obj_obj, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Equivalence.lean, line 2057. The attribute's comment: “the equivalence sends a kernel to its integral transform”.
Stacks Project, Tag 0FZD. The equivalence sends a quasi-coherent kernel on
X ×_R Yto its integral transformF ↦ pr_{2,*}(pr_1^* F ⊗ K).
theorem integralTransformQcohEquivalence_functor_obj_obj
(R : Type u) [CommRing R] (X Y : Over (Spec (.of R))) [IsAffine X.left]
(K : (SheafOfModules.isQuasicoherent
(pullback X.hom Y.hom).ringCatSheaf).FullSubcategory) :
((integralTransformQcohEquivalence R X Y).functor.obj K).obj =
quasicoherentIntegralTransform R X Y K
Tag 0FZE, a remark
Tag 0FZE in the Stacks Project.
Stacks.AlgebraicGeometry.ProjectionFormula.isIso_projectionFormulaMap, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Duality/ProjectionFormulaLocal.lean, line 469.
Let
h : T ⟶ Sbe an affine morphism of schemes,Ga quasi-coherent𝒪_T-module andHa quasi-coherent𝒪_S-module. Then the canonical projection-formula morphism
h_*G ⊗_{𝒪_S} H ⟶ h_*(G ⊗_{𝒪_T} h^*H)is invertible.
theorem isIso_projectionFormulaMap [IsAffineHom h] (hG : G.IsQuasicoherent)
(hH : H.IsQuasicoherent) : IsIso (projectionFormulaMap h G H)
Tag 0FZF, a lemma
Tag 0FZF in the Stacks Project.
AlgebraicGeometry.quasicoherentIntegralTransformSourceChangeIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/ChangeOfSpaces.lean, line 321. The attribute's comment: “affine source change”.
Let
Xbe an affine scheme overR, letf : X' ⟶ Xbe an affine morphism of schemes overRand letKbe a quasi-coherent module onX ×_R Y. Then the integral transform ofKprecomposed with the direct image alongfis the integral transform of(f × id_Y)^*K.
def quasicoherentIntegralTransformSourceChangeIso (R : Type u) [CommRing R]
(X X' Y : Over (Spec (.of R))) [IsAffine X.left] (f : X' ⟶ X) [IsAffineHom f.left]
(K : Scheme.QuasicoherentModules (pullback X.hom Y.hom)) :
letI : IsAffine X'.left := isAffine_of_isAffineHom f.left
quasicoherentPushforward f.left ⋙ quasicoherentIntegralTransform R X Y K ≅
quasicoherentIntegralTransform R X' Y (sourceChangeKernel R X X' Y f K)
AlgebraicGeometry.quasicoherentIntegralTransformTargetChangeIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/ChangeOfSpaces.lean, line 420. The attribute's comment: “flat target change”.
Let
Xbe an affine scheme overR, letg : Y' ⟶ Ybe a flat morphism of schemes overRand letKbe a quasi-coherent module onX ×_R Y. Then the integral transform ofKfollowed by the inverse image alonggis the integral transform of(id_X × g)^*K.
def quasicoherentIntegralTransformTargetChangeIso (R : Type u) [CommRing R]
(X Y Y' : Over (Spec (.of R))) [IsAffine X.left] (g : Y' ⟶ Y) [Flat g.left]
(K : Scheme.QuasicoherentModules (pullback X.hom Y.hom)) :
quasicoherentIntegralTransform R X Y K ⋙ quasicoherentPullback g.left ≅
quasicoherentIntegralTransform R X Y' (targetChangeKernel R X Y Y' g K)
AlgebraicGeometry.quasicoherentIntegralTransformOpenTargetIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/ChangeOfSpaces.lean, line 472. The attribute's comment: “open target restriction”.
Let
Xbe an affine scheme overR, letj : V ⟶ Ybe an open immersion of schemes and letKbe a quasi-coherent module onX ×_R Y. Then the integral transform ofKfollowed by restriction toVis the integral transform of the restriction ofKtoX ×_R V.
def quasicoherentIntegralTransformOpenTargetIso (R : Type u) [CommRing R]
(X Y : Over (Spec (.of R))) [IsAffine X.left] {V : Scheme.{u}} (j : V ⟶ Y.left)
[IsOpenImmersion j] (K : Scheme.QuasicoherentModules (pullback X.hom Y.hom)) :
quasicoherentIntegralTransform R X Y K ⋙ quasicoherentRestriction j ≅
quasicoherentIntegralTransform R X (Over.mk (j ≫ Y.hom))
(openTargetKernel R X Y j K)
Tag 0GPA, a lemma
Tag 0GPA in the Stacks Project.
AlgebraicGeometry.exists_kernel_natTrans_isIso_whiskerLeft_pushforward, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/KernelOfFunctor.lean, line 957.
Tag 0GPA. Let
Rbe a ring, letXandYbe schemes overRwithXquasi-compact with affine diagonal, and letF : QCoh(𝒪_X) ⥤ QCoh(𝒪_Y)beR-linear, right exact and commute with arbitrary direct sums. Then there are a quasi-coherent moduleKonX ×_R Yand a natural transformationt : F ⟶ F_Ksuch thatt ∘ f_* : F ∘ f_* ⟶ F_K ∘ f_*is an isomorphism for every morphismf : X' ⟶ Xwhose source is an affine scheme.The kernel is
AlgebraicGeometry.AffineChartKernels.gluedofAlgebraicGeometry.openKernelSystem, glued from the kernels ofF ∘ j_{U,*}over the affine opensUofX, andtisAlgebraicGeometry.kernelTransform.
theorem exists_kernel_natTrans_isIso_whiskerLeft_pushforward [CompactSpace X.left]
[IsAffineHom (pullback.diagonal (terminal.from X.left))]
(hF : rightExactLinearCoproductFunctor R X Y F) :
∃ (K : Scheme.QuasicoherentModules (pullback X.hom Y.hom))
(t : F ⟶ quasicoherentIntegralTransform R X Y K),
∀ (X' : Scheme.{u}) [IsAffine X'] (f : X' ⟶ X.left),
letI : IsAffineHom f :=
Stacks.AlgebraicGeometry.RelativeCechComplex.isAffineHom_of_isAffine_source f
IsIso (Functor.whiskerLeft (quasicoherentPushforward f) t)
Tag 0FZG, a lemma
Tag 0FZG in the Stacks Project.
AlgebraicGeometry.isFlatOver_kernel_of_exactFunctor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/KernelFlatnessGlued.lean, line 160. The attribute's comment: “the kernel corresponding to an exact functor is flat over X, both for X affine and for X quasi-compact with affine diagonal”.
The kernel of an exact functor is flat. In the situation of Tag 0FZD or of Tag 0GPA, if
Fis an exact functor, then the corresponding objectKofQCoh(𝒪_{X ×_R Y})is flat overX.The four conjuncts are: 1. the situation of Tag 0FZD (
Xaffine,Yarbitrary), for every kernelKwhose integral transform is isomorphic toF; 2. the same, for the kernel attached toFby the inverse of the equivalence of Tag 0FZD; 3. the situation of Tag 0GPA (Xquasi-compact with affine diagonal), for every kernelKwith a natural transformationt : F ⟶ F_Ksuch thatt ∘ f_*is an isomorphism for every morphismf : X' ⟶ XwithX'affine; 4. the same, for the glued kernel constructed in Tag 0GPA from anR-linear right exact functor commuting with arbitrary direct sums.
theorem isFlatOver_kernel_of_exactFunctor (R : Type u) [CommRing R] :
(∀ (X Y : Over (Spec (.of R))) [IsAffine X.left]
(K : Scheme.QuasicoherentModules (pullback X.hom Y.hom))
(F : Scheme.QuasicoherentModules X.left ⥤ Scheme.QuasicoherentModules Y.left),
(F ≅ quasicoherentIntegralTransform R X Y K) → exactFunctor _ _ F →
IsFlatOver (pullback.fst X.hom Y.hom).toLRSHom.toShHom K.obj) ∧
(∀ (X Y : Over (Spec (.of R))) [IsAffine X.left]
(F : (rightExactLinearCoproductFunctor R X Y).FullSubcategory),
exactFunctor _ _ F.obj →
IsFlatOver (pullback.fst X.hom Y.hom).toLRSHom.toShHom
((integralTransformQcohEquivalence R X Y).inverse.obj F).obj) ∧
(∀ (X Y : Over (Spec (.of R))) [CompactSpace X.left]
[IsAffineHom (pullback.diagonal (terminal.from X.left))]
(F : Scheme.QuasicoherentModules X.left ⥤ Scheme.QuasicoherentModules Y.left)
(K : Scheme.QuasicoherentModules (pullback X.hom Y.hom))
(t : F ⟶ quasicoherentIntegralTransform R X Y K),
(∀ (X' : Scheme.{u}) [IsAffine X'] (f : X' ⟶ X.left),
letI : IsAffineHom f :=
Stacks.AlgebraicGeometry.RelativeCechComplex.isAffineHom_of_isAffine_source f
IsIso (Functor.whiskerLeft (quasicoherentPushforward f) t)) →
exactFunctor _ _ F →
IsFlatOver (pullback.fst X.hom Y.hom).toLRSHom.toShHom K.obj) ∧
(∀ (X Y : Over (Spec (.of R))) [CompactSpace X.left]
[IsAffineHom (pullback.diagonal (terminal.from X.left))]
(F : Scheme.QuasicoherentModules X.left ⥤ Scheme.QuasicoherentModules Y.left)
(hF : rightExactLinearCoproductFunctor R X Y F),
exactFunctor _ _ F →
IsFlatOver (pullback.fst X.hom Y.hom).toLRSHom.toShHom
(openKernelSystem R X Y F
(affineOpenRightExactLinearCoproductFunctor_of_rightExact R X Y F hF)).glued.obj)
Tag 0FZH, a lemma
Tag 0FZH in the Stacks Project.
AlgebraicGeometry.isEquivalence_integralTransformExactKernelFunctor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/ExactKernelEquivalence.lean, line 74. The attribute's comment: “the functor sending a kernel K on X ×_R Y to its integral transform is an equivalence from the kernels flat over X with vanishing higher direct images of pr_1^*F ⊗ K onto the R-linear exact functors QCoh(X) ⥤ QCoh(Y) commuting with arbitrary direct sums”.
Let
Rbe a ring and letXandYbe schemes overRwithXquasi-compact and with affine diagonal. The functor sending a quasi-coherent kernelKonX ×_R Yto its integral transformF ↦ pr_{2,*}(pr_1^*F ⊗ K)is an equivalence of categories between
- the full subcategory of
QCoh(𝒪_{X ×_R Y})of the kernelsKwhich are flat overXand satisfyR^q pr_{2,*}(pr_1^*F ⊗ K) = 0for all quasi-coherentFonXand allq > 0(AlgebraicGeometry.integralTransformExactKernel), and- the category of
R-linear exact functorsQCoh(𝒪_X) ⥤ QCoh(𝒪_Y)which commute with arbitrary direct sums (AlgebraicGeometry.exactLinearCoproductFunctor).
theorem isEquivalence_integralTransformExactKernelFunctor :
(integralTransformExactKernelFunctor R X Y).IsEquivalence
Tag 0GPB, a remark
Tag 0GPB in the Stacks Project.
AlgebraicGeometry.nonempty_iso_quasicoherentIntegralTransform_iff, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Characterization.lean, line 851.
Stacks Project, Tag 0GPB. Let
Rbe a ring and letXandYbe schemes overR, withXquasi-compact with affine diagonal. A functorF : QCoh(𝒪_X) ⥤ QCoh(𝒪_Y)is isomorphic to the integral transformF_K = pr_{2,*}(pr_1^*(−) ⊗ K)of a quasi-coherent moduleKonX ×_R Yif and only if
FisR-linear (in particular additive) and commutes with arbitrary direct sums,F ∘ j_*is right exact for the inclusionj : U ⟶ Xof every affine openU(AlgebraicGeometry.PreservesFiniteColimitsAfterAffineOpens), and0 ⟶ F(F) ⟶ F(G) ⟶ F(H)is exact for every short exact sequence0 ⟶ F ⟶ G ⟶ H ⟶ 0of quasi-coherent modules whose sequences of stalks are split short exact sequences of𝒪_{X,x}-modules (AlgebraicGeometry.IsStalkwiseSplitLeftExact).
theorem nonempty_iso_quasicoherentIntegralTransform_iff
(F : Scheme.QuasicoherentModules X.left ⥤ Scheme.QuasicoherentModules Y.left) :
letI : Linear R (SheafOfModules.{u} X.left.ringCatSheaf) := modulesLinear R X
letI : Linear R (SheafOfModules.{u} Y.left.ringCatSheaf) := modulesLinear R Y
(∃ K : Scheme.QuasicoherentModules (pullback X.hom Y.hom),
Nonempty (F ≅ quasicoherentIntegralTransform R X Y K)) ↔
∃ _ : F.Additive, F.Linear R ∧ (∀ I : Type u, PreservesColimitsOfShape (Discrete I) F) ∧
PreservesFiniteColimitsAfterAffineOpens R X F ∧ IsStalkwiseSplitLeftExact F
Tag 0GPC, a lemma
Tag 0GPC in the Stacks Project.
AlgebraicGeometry.quasicoherentIntegralTransformConvolutionIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/Convolution.lean, line 567. The attribute's comment: “the composition formula F_L ∘ F_K ≅ F_{pr13,(pr12^K ⊗ pr23^*L)} as a natural isomorphism of functors QCoh(O_X) to QCoh(O_Z), for L a kernel of category (2) of 0FZH (so F_L is R-linear, exact and commutes with direct sums), K arbitrary, X quasi-compact with affine diagonal and Y quasi-compact and quasi-separated”.
Stacks Project, Tag 0GPC. Let
Rbe a ring and letX,Y,Zbe schemes overR, withXquasi-compact with affine diagonal andYquasi-compact and quasi-separated. LetKbe a quasi-coherent kernel onX ×_R YandLa quasi-coherent kernel onY ×_R Zin category (2) of Tag 0FZH, that is, flat overYwith vanishing higher direct images, so that its integral transformF_L : QCoh(𝒪_Y) ⥤ QCoh(𝒪_Z)isR-linear, exact and commutes with direct sums. Then
F_L ∘ F_K ≅ F_{pr_{13,*}(pr_{12}^*K ⊗ pr_{23}^*L)}as functors
QCoh(𝒪_X) ⥤ QCoh(𝒪_Z).This is the source's statement for exact functors
FandGwith kernelsKandL(G ∘ F ≅ F_L ∘ F_K), in greater generality: nothing is assumed ofK, and ofYonly quasi-compactness and quasi-separatedness. That, whenKis of category (2) as well, the convolution is up to isomorphism the kernel of category (2) which Tag 0FZH attaches toG ∘ FisAlgebraicGeometry.exists_integralTransformExactKernel_iso_convolutionKernel.Exactness of
F_Lcannot be dropped. LetEbe an elliptic curve over a fieldkwith origino, letC = E ∖ {e}for a pointe ≠ o,R = Γ(C, 𝒪_C),X = E ×_k CoverR,Y = Spec R,Z = Spec kthe pointoofC,L = 𝒪_ZonY ×_R Z = Z, andK = 𝒪(Δ - {o} × C)onX ×_R Y = X, withΔthe graph ofC ⊆ E. The fibre ofKoverc ∈ Cis𝒪_E(c - o), nontrivial of degree zero forc ≠ o, soΓ(X, K), a torsion-freeR-module with zero generic fibre, vanishes andF_L(F_K(𝒪_X)) = 0. ButX ×_R Y ×_R Z = E, the convolution kernel isK|_{E × {o}} ≅ 𝒪_E, andF_{K * L}(𝒪_X) = Γ(E, 𝒪_E) = k. HereF_L = - ⊗_R kis not left exact.
def quasicoherentIntegralTransformConvolutionIso (hL : integralTransformExactKernel R Y Z L) :
quasicoherentIntegralTransform R X Y K ⋙ quasicoherentIntegralTransform R Y Z L ≅
quasicoherentIntegralTransform R X Z (convolutionKernel R X Y Z K L)
Tag 0FZI, a lemma
Tag 0FZI in the Stacks Project.
AlgebraicGeometry.isZero_rightDerived_pushforward_baseChangeKernel, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/BaseChangeAcyclicity.lean, line 536. The attribute's comment: “the positive higher direct images of pr_12^F ⊗ pr_23^K along pr_13 vanish”.
Higher direct images of an integral-transform kernel after base change. Let
Rbe a ring, letXandYbe schemes overRwith the structure morphism ofXquasi-compact and quasi-separated, and letKbe a quasi-coherent kernel onX ×_R Ysatisfying the two conditions of Tag 0FZH part (2). Then for every schemeToverR,R ^q pr_{13,*}(pr_{12}^*F ⊗ pr_{23}^*K) = 0for every quasi-coherentFonT ×_R Xand everyq > 0.
theorem isZero_rightDerived_pushforward_baseChangeKernel (T X Y : Over (Spec (.of R)))
[QuasiCompact X.hom] [QuasiSeparated X.hom]
(K : Scheme.QuasicoherentModules (pullback X.hom Y.hom))
(hK : integralTransformExactKernel R X Y K)
(F : Scheme.QuasicoherentModules (baseChangeSourceOver R T X).left) (q : ℕ) (hq : 0 < q) :
IsZero (((Scheme.Modules.pushforward (baseChangeTargetMap R T X Y)).rightDerived q).obj
((integralTransformIntegrand R (baseChangeSourceOver R T X) Y
(baseChangeKernel R T X Y K)).obj F))
Tag 0FZJ, a lemma
Tag 0FZJ in the Stacks Project.
AlgebraicGeometry.exists_epi_externalTensorProduct_unit, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/IntegralTransformQcoh/DiagonalSurjection.lean, line 485. The attribute's comment: “the surjection O_X ⊠ F(O_X) ⟶ K”.
Stacks Project, Tag 0FZJ. Let
Rbe a ring, letXandYbe schemes overRwithXquasi-compact, separated and flat overR, and letKbe a quasi-coherent kernel onX ×_R Ysatisfying the two conditions of [Stacks, Tag 0FZH] part (2). Then there is a surjection𝒪_X ⊠ F_K(𝒪_X) ⟶ K, whereF_Kis the integral transform ofK.The diagonal short exact sequence
0 → I → 𝒪_{X ×_R X} → 𝒪_Δ → 0is sent by the exact integrandpr_{12}^*(-) ⊗ pr_{23}^*Kto a short exact sequence onX ×_R X ×_R Y, and [Stacks, Tag 0FZI] makes its direct image alongpr_{13}short exact again; the surjection it exhibits is the one asserted, once flat base change identifies its source withpr_2^*pr_{2,*}K = 𝒪_X ⊠ F_K(𝒪_X)and the projection formula identifies its target withK.
theorem exists_epi_externalTensorProduct_unit (X Y : Over (Spec (.of R)))
[CompactSpace X.left] [IsSeparated X.hom] [Flat X.hom]
(K : Scheme.QuasicoherentModules (pullback X.hom Y.hom))
(hK : integralTransformExactKernel R X Y K) :
∃ e : externalTensorProduct X.hom Y.hom (SheafOfModules.unit X.left.ringCatSheaf)
((quasicoherentIntegralTransform R X Y K).obj
⟨SheafOfModules.unit X.left.ringCatSheaf,
Stacks.AlgebraicGeometry.AffineQcohPushforward.isQuasicoherent_unit
X.left⟩).obj ⟶ K.obj, Epi e
Sources
Section56.6 Gabriel-Rosenberg reconstruction#
Section 56.6 of the Stacks Project, Tag 0GPD. 6 tags here are carried by 18 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 0GPE, a lemma
Tag 0GPE in the Stacks Project.
AlgebraicGeometry.isFinitelyPresentable_iff_isFinitePresentation, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/CompactObjects.lean, line 152.
Stacks Project, Tag 0GPE. A quasi-coherent module on a quasi-compact and quasi-separated scheme is a categorically compact object of the category of quasi-coherent modules if and only if it is of finite presentation.
theorem isFinitelyPresentable_iff_isFinitePresentation
(X : Scheme.{u}) [CompactSpace X] [QuasiSeparatedSpace X]
(F : (SheafOfModules.isQuasicoherent X.ringCatSheaf).FullSubcategory) :
IsFinitelyPresentable.{u} F ↔ F.obj.IsFinitePresentation
Tag 0GPF, a lemma
Tag 0GPF in the Stacks Project.
AlgebraicGeometry.exists_nonzero_hom_of_supp_subset, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/SupportedNonzeroHom.lean, line 358. References: SGA 2 VII (1.3), “affine case”.
Stacks Project, Tag 0GPF. If the support of a nonzero quasi-coherent module on an affine scheme is contained in that of a finitely presented module, then there is a nonzero morphism from the latter to the former.
theorem exists_nonzero_hom_of_supp_subset
(X : Scheme.{u}) [IsAffine X]
(F E : X.Modules) [F.IsFinitePresentation] [E.IsQuasicoherent]
(hE : ¬ IsZero E)
(hsupp : SheafOfModules.supp E ⊆ SheafOfModules.supp F) :
∃ f : F ⟶ E, f ≠ 0
Tag 0GPG, a lemma
Tag 0GPG in the Stacks Project.
AlgebraicGeometry.supportContained_eq_serreCoproductClosure, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/SupportedSerreSubcategory.lean, line 780.
Stacks Project, Tag 0GPG. On a quasi-compact and quasi-separated scheme, the quasi-coherent modules supported on the support of a finitely presented module are exactly the smallest Serre subcategory containing it and closed under arbitrary direct sums.
theorem supportContained_eq_serreCoproductClosure (X : Scheme.{u}) [CompactSpace X]
[QuasiSeparatedSpace X] (F : X.Modules)
[SheafOfModules.IsFinitePresentation (R := X.ringCatSheaf) F] :
(fun E : (SheafOfModules.isQuasicoherent X.ringCatSheaf).FullSubcategory ↦
IsSupportedOn E.obj F) =
serreCoproductClosure
(C := (SheafOfModules.isQuasicoherent X.ringCatSheaf).FullSubcategory)
⟨F, by
constructor
exact ⟨(SheafOfModules.IsFinitePresentation.exists_quasicoherentData F).choose⟩⟩
Tag 0GPH, a lemma
Tag 0GPH in the Stacks Project.
AlgebraicGeometry.quasicoherentSupportedOn_isSerreClass, an instance in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/SupportedSerreQuotient.lean, line 229. The attribute's comment: “the full subcategory of modules supported on Z is a Serre subcategory”.
Quasi-coherent modules supported on a fixed subset of a scheme form a Serre subcategory of the category of all quasi-coherent modules.
public instance quasicoherentSupportedOn_isSerreClass (X : Scheme.{u}) (Z : Set X) :
(quasicoherentSupportedOn X Z).IsSerreClass
AlgebraicGeometry.quasicoherentRestriction_isLocalization, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/SupportedSerreQuotient.lean, line 307. The attribute's comment: “restriction is the localization at the supported Serre subcategory”.
[Stacks, Tag 0GPH]. Let
Xbe a quasi-compact and quasi-separated scheme and letUbe a quasi-compact open whose complement is the closed subsetZ. Restriction alongU ↪ XexhibitsQCoh(𝒪_U)as the localization ofQCoh(𝒪_X)at the morphisms whose kernel and cokernel are supported onZ, that is, as the Serre quotient ofQCoh(𝒪_X)by the full subcategory of quasi-coherent modules supported onZ.
public theorem quasicoherentRestriction_isLocalization (X : Scheme.{u}) [CompactSpace X]
[QuasiSeparatedSpace X] (Z : Set X) (U : X.Opens) (hUZ : (U : Set X) = Zᶜ)
(hU : IsCompact (U : Set X)) :
(quasicoherentRestriction U.ι).IsLocalization
(quasicoherentSupportedOn X Z).isoModSerre
AlgebraicGeometry.quasicoherentSupportedQuotientEquivalence, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/SupportedSerreQuotient.lean, line 378. The attribute's comment: “the induced equivalence from the quotient category”.
[Stacks, Tag 0GPH]. The equivalence
QCoh(𝒪_X)/𝒜 ≌ QCoh(𝒪_U)induced by restriction, where𝒜is the Serre subcategory of quasi-coherent modules supported on the closed complementZof the quasi-compact openU, andQCoh(𝒪_X)/𝒜is the Serre quotient, that is the localization ofQCoh(𝒪_X)at the morphisms that are isomorphisms modulo𝒜.
public noncomputable def quasicoherentSupportedQuotientEquivalence (X : Scheme.{u})
[CompactSpace X] [QuasiSeparatedSpace X] (Z : Set X) (U : X.Opens)
(hUZ : (U : Set X) = Zᶜ) (hU : IsCompact (U : Set X)) :
(quasicoherentSupportedOn X Z).isoModSerre.Localization ≌
(SheafOfModules.isQuasicoherent U.toScheme.ringCatSheaf).FullSubcategory
AlgebraicGeometry.quasicoherentSupportedQuotientEquivalenceFunctorIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/SupportedSerreQuotient.lean, line 390. The attribute's comment: “the equivalence is induced by the restriction functor”.
The equivalence
QCoh(𝒪_X)/𝒜 ≌ QCoh(𝒪_U)of [Stacks, Tag 0GPH] is the one induced by the restriction functor: composing it with the quotient functor gives back restriction.
public noncomputable def quasicoherentSupportedQuotientEquivalenceFunctorIso (X : Scheme.{u})
[CompactSpace X] [QuasiSeparatedSpace X] (Z : Set X) (U : X.Opens)
(hUZ : (U : Set X) = Zᶜ) (hU : IsCompact (U : Set X)) :
(quasicoherentSupportedOn X Z).isoModSerre.Q ⋙
(quasicoherentSupportedQuotientEquivalence X Z U hUZ hU).functor ≅
quasicoherentRestriction U.ι
Tag 0GPI, a lemma
Tag 0GPI in the Stacks Project.
AlgebraicGeometry.AffineOfModuleCategory.isAffine_of_quasicoherentModules_equivalent_moduleCat, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/AffineOfModuleCategory.lean, line 1141. The attribute's comment: “[CommRing R] reads the tag's a ring: the rank-one step needs End P commutative. For noncommutative R the conclusion still holds by Morita equivalence (Mod (M₂ k) ≌ Mod k), but that rank-one step fails outright.”.
Stacks Project, Tag 0GPI. A quasi-compact and quasi-separated scheme whose category of quasi-coherent modules is equivalent to the category of modules over a commutative ring is affine.
The commutativity of
Ris a reading of the tag'sa ring. It is used through the separatorP, whose endomorphism ring must be commutative for the rank ofPto be forced to be1.
public theorem isAffine_of_quasicoherentModules_equivalent_moduleCat
(X : Scheme.{u}) [CompactSpace X] [QuasiSeparatedSpace X]
(R : Type v) [CommRing R]
(e : ModuleCat.{u} R ≌
(SheafOfModules.isQuasicoherent X.ringCatSheaf).FullSubcategory) :
IsAffine X
AlgebraicGeometry.AffineOfModuleCategory.isAffine_of_quasicoherentModules_equivalence_moduleCat, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/AffineOfModuleCategory.lean, line 1164. The attribute's comment: “the hypothesis in the orientation of the source, QCoh(𝒪_X) ≌ Mod R; [CommRing R] reads the tag's a ring, exactly as for the mirror form isAffine_of_quasicoherentModules_equivalent_moduleCat”.
Stacks Project, Tag 0GPI, with the equivalence written in the orientation of the source: a quasi-compact and quasi-separated scheme whose category of quasi-coherent modules is equivalent to the category of modules over a commutative ring is affine.
As for the mirror form, the commutativity of
Ris a reading of the tag'sa ring.
public theorem isAffine_of_quasicoherentModules_equivalence_moduleCat
(X : Scheme.{u}) [CompactSpace X] [QuasiSeparatedSpace X]
(R : Type v) [CommRing R]
(e : (SheafOfModules.isQuasicoherent X.ringCatSheaf).FullSubcategory ≌
ModuleCat.{u} R) :
IsAffine X
Tag 0GPJ, a proposition
Tag 0GPJ in the Stacks Project.
AlgebraicGeometry.exists_schemeIso_invertible_of_quasicoherentEquivalence, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/AffineReconstruction.lean, line 185. The attribute's comment: “affine case: for X and Y affine, with the tensoring by the invertible module read on ModuleCat Γ(Y, ⊤) through the affine comparison AlgebraicGeometry.affineQuasicoherentModulesEquiv rather than as the tensor product of sheaves of 𝒪_Y-modules. This is the form in which the Tag 0GP0 argument produces the conclusion; the source's own sheaf-level form is AlgebraicGeometry.exists_schemeIso_invertibleSheaf_of_quasicoherentEquivalence, proved from this one in the same file. What is NOT proved here is the general quasi-compact quasi-separated case; its local form, steps 3 to 8 of the source's argument, is AlgebraicGeometry.exists_isAffineOpen_schemeIso_invertibleSheaf_of_isFinitePresentation, and what remains beyond that is step 2 and the gluing step 9 that the source itself omits”.
If
XandYare affine schemes andF : QCoh(𝒪_X) ⥤ QCoh(𝒪_Y)is an equivalence, then there are an isomorphism of schemesf : Y ≅ Xand an invertibleΓ(Y, ⊤)-moduleLsuch thatFis inverse image alongffollowed by tensoring withL.
theorem exists_schemeIso_invertible_of_quasicoherentEquivalence
(F : (SheafOfModules.isQuasicoherent X.ringCatSheaf).FullSubcategory ⥤
(SheafOfModules.isQuasicoherent Y.ringCatSheaf).FullSubcategory) [F.IsEquivalence] :
∃ (f : Y ≅ X) (L : ModuleCat.{u} Γ(Y, ⊤)), Module.Invertible Γ(Y, ⊤) L ∧
Nonempty (F ≅ (quasicoherentModulesEquivOfSchemeIso f).symm.functor ⋙
affineTensorFunctor Y L)
AlgebraicGeometry.exists_schemeIso_invertibleSheaf_of_quasicoherentEquivalence, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/AffineReconstruction.lean, line 438. The attribute's comment: “affine case: for X and Y affine. The invertible object is a sheaf of 𝒪_Y-modules, invertible in the sense of Tag 01CS (Stacks.SheafOfModules.IsInvertible), and the tensoring is - ⊗_{𝒪_Y} L. Two deviations from the source statement. First, the general quasi-compact quasi-separated case is not proved; its local form, steps 3 to 8 of the source's argument, is AlgebraicGeometry.exists_isAffineOpen_schemeIso_invertibleSheaf_of_isFinitePresentation, which quotes this theorem for its affine input, and what remains beyond that is step 2 (the existence of a finitely presented module supported on the complement of a given affine open) and the gluing step 9 that the source itself omits. Second, the comparison of functors is stated after forgetting quasi-coherence, i.e. between functors into all 𝒪_Y-modules, so that the statement does not depend on quasi-coherence being stable under inverse image and tensor product; since the inclusion of the quasi-coherent modules is fully faithful and quasi-coherence is invariant under isomorphism, nothing of the source's content is lost”.
If
XandYare affine schemes andF : QCoh(𝒪_X) ⥤ QCoh(𝒪_Y)is an equivalence, then there are an isomorphism of schemesf : Y ≅ Xand an invertible sheafLof𝒪_Y-modules such thatFis inverse image alongffollowed by- ⊗_{𝒪_Y} L.
theorem exists_schemeIso_invertibleSheaf_of_quasicoherentEquivalence
(F : (SheafOfModules.isQuasicoherent X.ringCatSheaf).FullSubcategory ⥤
(SheafOfModules.isQuasicoherent Y.ringCatSheaf).FullSubcategory) [F.IsEquivalence] :
∃ (f : Y ≅ X) (L : SheafOfModules.{u} Y.ringCatSheaf),
Stacks.SheafOfModules.IsInvertible Y.presheaf Y.ringCatSheaf.2 L ∧
Nonempty (F ⋙ ObjectProperty.ι (SheafOfModules.isQuasicoherent Y.ringCatSheaf) ≅
pullbackTensorFunctor f.hom L)
AlgebraicGeometry.exists_natIso_pullbackTensorFunctor_of_quasicoherentEquivalence, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/ReconstructionGlobalComparison.lean, line 89. The attribute's comment: “the tag IN FULL, for X and Y quasi-compact and quasi-separated: an equivalence of the categories of quasi-coherent modules gives an isomorphism of schemes g : Y ≅ X, an invertible 𝒪_Y-module M, and a NATURAL isomorphism e(𝓕) ≅ g^*𝓕 ⊗ M. No cover, no affineness and no further hypothesis of any kind beyond qcqs. The scheme half is exists_schemeIso_of_quasicoherentEquivalence and the module half isInvertible_map_quasicoherentUnit_of_quasicoherentEquivalence, both already unconditional; what is new is the comparison of functors, which the Stacks source dismisses with "We omit the details". It is glued from the per-chart comparisons chartComparisonIso by exists_natIso_of_chartComparison, whose agreement hypothesis is discharged by the rigidity natIso_eq_of_app_unit_eq_of_iso once the comparisons are normalised at 𝒪_X; the normalisation is chartComparisonIso_hom_app_quasicoherentUnit and it is automatic, because the module is e(𝒪_X) and the identification of its restriction with the chart's L is restrictMapUnitIsoOfChartIso, built from the same α and β. As in the affine case the comparison is stated after forgetting quasi-coherence, between functors into all 𝒪_Y-modules”.
Stacks Project, Tag 0GPJ. Let
XandYbe quasi-compact and quasi-separated schemes and lete : QCoh(𝒪_X) ≌ QCoh(𝒪_Y)be an equivalence of their categories of quasi-coherent modules. Then there are an isomorphism of schemesg : Y ≅ Xand an invertible𝒪_Y-moduleMwithe(𝓕) ≅ g^*𝓕 ⊗ M, naturally in the quasi-coherent𝒪_X-module𝓕.The module is
e(𝒪_X); the isomorphism is the one glued from the reconstruction charts. As in the affine case the comparison of functors is stated after forgetting quasi-coherence, between functors into all𝒪_Y-modules, which loses nothing because the inclusion of the quasi-coherent modules is fully faithful and quasi-coherence is invariant under isomorphism.Nothing is assumed beyond the equivalence and quasi-compactness and quasi-separatedness of the two schemes.
theorem exists_natIso_pullbackTensorFunctor_of_quasicoherentEquivalence {X Y : Scheme.{u}}
[CompactSpace X] [QuasiSeparatedSpace X] [CompactSpace Y] [QuasiSeparatedSpace Y]
(e : (SheafOfModules.isQuasicoherent X.ringCatSheaf).FullSubcategory ≌
(SheafOfModules.isQuasicoherent Y.ringCatSheaf).FullSubcategory) :
∃ (g : Y ≅ X) (M : Y.Modules),
Stacks.SheafOfModules.IsInvertible Y.presheaf Y.ringCatSheaf.2 M ∧
Nonempty (e.functor ⋙ ObjectProperty.ι
(SheafOfModules.isQuasicoherent Y.ringCatSheaf) ≅
pullbackTensorFunctor g.hom M)
AlgebraicGeometry.exists_isOpenCover_schemeIso_invertibleSheaf_of_isFinitePresentation, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/ReconstructionGlobalForm.lean, line 169. The attribute's comment: “the GLOBAL form — X and Y quasi-compact and quasi-separated, no affineness and no restriction to a single open U. Steps 3 to 8 together with the covering assertion of step 9, which is PROVED here and no longer hypothesised: AlgebraicGeometry.isOpenCover_of_supportedCorrespondence shows the opens V_U cover Y, and AlgebraicGeometry.exists_gluedQuasicoherentFunctor_restrictIso runs the functor-level gluing with that hypothesis discharged. The module G of step 2 is a hypothesis here, one per member of the cover; it need not be, and AlgebraicGeometry.exists_isOpenCover_schemeIso_invertibleSheaf_of_isAffineOpenCover below is this statement with G and hG deleted, the module produced instead as 𝒪_X/I for the Tag 01PH ideal. The per-chart data IS glued downstream: the f_U into one isomorphism Y ≅ X by exists_schemeIso_of_quasicoherentEquivalence (ReconstructionGlobalSchemeIso.lean) and the L_U into one invertible 𝒪_Y-module by exists_isOpenCover_invertibleModule_restrictIso_of_isAffineOpenCover (ReconstructionGlobalModule.lean). The single natural isomorphism e(F) ≅ g^*F ⊗ M comparing e with that glued pair — the stated conclusion of 0GPJ, which the source dismisses with "We omit the details" — is exists_natIso_pullbackTensorFunctor_of_quasicoherentEquivalence (ReconstructionGlobalComparison.lean). As in the affine case the comparison of functors is stated after forgetting quasi-coherence, between functors into all 𝒪_V-modules”.
Stacks Project, Tag 0GPJ in its global form. Let
XandYbe quasi-compact and quasi-separated schemes and lete : QCoh(𝒪_X) ≌ QCoh(𝒪_Y)be an equivalence. LetU ibe an affine open cover ofXand letG ibe a finitely presented quasi-coherent𝒪_X-module whose support is the complement ofU i. Then there are opensV i ⊆ Ywhich coverYand are each affine and quasi-compact, and for eachian equivalenceF\_i : QCoh(𝒪\_\{U i}) ≌ QCoh(𝒪\_\{V i})compatible witheand the two restrictions, an isomorphism of schemesf_i : V i ≅ U iand an invertible sheafL_iof𝒪_{V i}-modules such thatF_iis inverse image alongf_ifollowed by- ⊗_{𝒪_{V i}} L_i.The chart
V iis the complement of the support ofe.functor.obj (G i), as inAlgebraicGeometry.exists_isAffineOpen_schemeIso_invertibleSheaf_of_isFinitePresentation; what is new here is that these opens coverY, which isAlgebraicGeometry.isOpenCover_of_supportedCorrespondence.
theorem exists_isOpenCover_schemeIso_invertibleSheaf_of_isFinitePresentation {ι : Type u}
(U : ι → X.Opens) (hUaff : ∀ i, IsAffineOpen (U i)) (hUcover : IsOpenCover U)
(G : ι → (SheafOfModules.isQuasicoherent X.ringCatSheaf).FullSubcategory)
[∀ i, SheafOfModules.IsFinitePresentation (R := X.ringCatSheaf) (G i).obj]
(hG : ∀ i, supportSet (G i).obj = (U i : Set X)ᶜ) :
∃ V : ι → Y.Opens, IsOpenCover V ∧
∀ i, IsAffineOpen (V i) ∧ IsCompact (V i : Set Y) ∧
∃ (F : (SheafOfModules.isQuasicoherent (U i).toScheme.ringCatSheaf).FullSubcategory ⥤
(SheafOfModules.isQuasicoherent (V i).toScheme.ringCatSheaf).FullSubcategory)
(f : (V i).toScheme ≅ (U i).toScheme)
(L : SheafOfModules.{u} (V i).toScheme.ringCatSheaf),
F.IsEquivalence ∧
Stacks.SheafOfModules.IsInvertible (V i).toScheme.presheaf
(V i).toScheme.ringCatSheaf.2 L ∧
Nonempty (e.functor ⋙ quasicoherentRestriction (V i).ι ≅
quasicoherentRestriction (U i).ι ⋙ F) ∧
Nonempty (F ⋙ ObjectProperty.ι
(SheafOfModules.isQuasicoherent (V i).toScheme.ringCatSheaf) ≅
pullbackTensorFunctor f.hom L)
AlgebraicGeometry.exists_isOpenCover_schemeIso_invertibleSheaf_of_isAffineOpenCover, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/ReconstructionGlobalForm.lean, line 265. The attribute's comment: “the GLOBAL form with step 2 DISCHARGED — X and Y quasi-compact and quasi-separated, an affine open cover U i of X, and no module hypothesised. The G i is 𝒪_X/I i for the finite type ideal sheaf I i of Tag 01PH, finitely presented by Stacks.AlgebraicGeometry.IdealSheafQuotient.isFinitePresentation_structureQuotient and with support V(I i) by Stacks.AlgebraicGeometry.IdealSheafQuotient.supp_structureQuotient. Steps 2 to 8 and the covering assertion of step 9 are therefore all proved. The per-chart data IS glued downstream: the f_i into one isomorphism Y ≅ X by exists_schemeIso_of_quasicoherentEquivalence (ReconstructionGlobalSchemeIso.lean) and the L_i into one invertible 𝒪_Y-module by exists_isOpenCover_invertibleModule_restrictIso_of_isAffineOpenCover (ReconstructionGlobalModule.lean). The single natural isomorphism e(F) ≅ g^*F ⊗ M comparing e with that glued pair — the stated conclusion of 0GPJ, which the Stacks source dismisses with "We omit the details" — is exists_natIso_pullbackTensorFunctor_of_quasicoherentEquivalence (ReconstructionGlobalComparison.lean). As in the affine case the comparison of functors is stated after forgetting quasi-coherence, between functors into all 𝒪_V-modules”.
Stacks Project, Tag 0GPJ in its global form, with step 2 discharged. Let
XandYbe quasi-compact and quasi-separated schemes, lete : QCoh(𝒪_X) ≌ QCoh(𝒪_Y)be an equivalence and letU ibe an affine open cover ofX. Then there are opensV i ⊆ Ywhich coverYand are each affine and quasi-compact, and for eachian equivalenceF_i : QCoh(𝒪_{U i}) ≌ QCoh(𝒪_{V i})compatible witheand the two restrictions, an isomorphism of schemesf_i : V i ≅ U iand an invertible sheafL_iof𝒪_{V i}-modules such thatF_iis inverse image alongf_ifollowed by- ⊗_{𝒪_{V i}} L_i.This is
AlgebraicGeometry.exists_isOpenCover_schemeIso_invertibleSheaf_of_isFinitePresentationwith its hypothesesGandhGdeleted: the modules are produced byAlgebraicGeometry.exists_isFinitePresentation_supportSet_eq_compl. Only the affine open cover ofXis given.The module family is kept opaque, by
chooseagainst the single-index statement above, for the reason recorded in the implementation notes: handing over an explicit composite instead makes the conclusion unfold definitionally once per index and per conjunct.
theorem exists_isOpenCover_schemeIso_invertibleSheaf_of_isAffineOpenCover {ι : Type u}
(U : ι → X.Opens) (hUaff : ∀ i, IsAffineOpen (U i)) (hUcover : IsOpenCover U) :
∃ V : ι → Y.Opens, IsOpenCover V ∧
∀ i, IsAffineOpen (V i) ∧ IsCompact (V i : Set Y) ∧
∃ (F : (SheafOfModules.isQuasicoherent (U i).toScheme.ringCatSheaf).FullSubcategory ⥤
(SheafOfModules.isQuasicoherent (V i).toScheme.ringCatSheaf).FullSubcategory)
(f : (V i).toScheme ≅ (U i).toScheme)
(L : SheafOfModules.{u} (V i).toScheme.ringCatSheaf),
F.IsEquivalence ∧
Stacks.SheafOfModules.IsInvertible (V i).toScheme.presheaf
(V i).toScheme.ringCatSheaf.2 L ∧
Nonempty (e.functor ⋙ quasicoherentRestriction (V i).ι ≅
quasicoherentRestriction (U i).ι ⋙ F) ∧
Nonempty (F ⋙ ObjectProperty.ι
(SheafOfModules.isQuasicoherent (V i).toScheme.ringCatSheaf) ≅
pullbackTensorFunctor f.hom L)
AlgebraicGeometry.isInvertible_map_quasicoherentUnit_of_quasicoherentEquivalence, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/ReconstructionGlobalModule.lean, line 240. The attribute's comment: “the MODULE half of the tag's conclusion, unconditionally: X and Y quasi-compact and quasi-separated and an equivalence e of their categories of quasi-coherent modules make e(𝒪_X) an invertible 𝒪_Y-module. No cover, no affineness and no further hypothesis of any kind beyond qcqs. This identifies WHICH module the tag's L is and proves it invertible: were the tag's comparison e(F) ≅ f^*F ⊗ L available, F = 𝒪_X would give L ≅ f^*𝒪_X ⊗ L ≅ e(𝒪_X), so no other module can serve. The statement is not an existential — ∃ L, IsInvertible L is satisfied by 𝒪_Y and would say nothing — it names the module. The per-chart invertible sheaves L i of the reconstruction are its restrictions (restrictMapUnitIsoOfChartIso), which is also what supplies the transition data the gluing of ReconstructionGluedModule.lean:197 asks for; that gluing run on the reconstruction's own charts is exists_isOpenCover_invertibleModule_restrictIso_of_isAffineOpenCover below. The SCHEME half is exists_schemeIso_of_quasicoherentEquivalence (ReconstructionGlobalSchemeIso.lean:324). The comparison of functors — 0GPJ also asserts e(F) ≅ f^*F ⊗ L naturally in F — is NOT produced here: it is exists_natIso_pullbackTensorFunctor_of_quasicoherentEquivalence (ReconstructionGlobalComparison.lean), glued from the per-chart chartComparisonIso (ReconstructionGlobalNatIso.lean) by exists_natIso_of_chartComparison (ReconstructionChartGlue.lean), the two comparisons over a common affine open being made equal by the rigidity natIso_eq_of_app_unit_eq_of_iso (ReconstructionChartRigidity.lean) once they are normalised at 𝒪_X (chartComparisonIso_hom_app_quasicoherentUnit). Nothing below assumes any of it”.
The image of the structure sheaf under an equivalence of categories of quasi-coherent modules is invertible. Let
XandYbe quasi-compact and quasi-separated schemes and lete : QCoh(𝒪_X) ≌ QCoh(𝒪_Y)be an equivalence. Thene(𝒪_X)is an invertible𝒪_Y-module.Invertibility of a module on a scheme is local on the base (
Stacks.Modules.isInvertible_of_isInvertible_restrict_isOpenCover), the opensV iof the reconstruction coverY, and over each of theme(𝒪_X)is the invertible sheafL iof that chart byAlgebraicGeometry.restrictMapUnitIsoOfChartIso.
theorem isInvertible_map_quasicoherentUnit_of_quasicoherentEquivalence :
Stacks.SheafOfModules.IsInvertible Y.presheaf Y.ringCatSheaf.2
(e.functor.obj (quasicoherentUnit X)).obj
AlgebraicGeometry.exists_isOpenCover_invertibleModule_restrictIso_of_isAffineOpenCover, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/ReconstructionGlobalModule.lean, line 288. The attribute's comment: “the GLOBAL form with the per-chart invertible sheaves GLUED into one invertible 𝒪_Y-module: X and Y quasi-compact and quasi-separated, an affine open cover U i of X, and no further hypothesis. The chart data is exists_isOpenCover_schemeIso_invertibleSheaf_of_isAffineOpenCover (ReconstructionGlobalForm.lean:236) with the families pulled out of the per-index existential; what is new is the last conjunct, a SINGLE invertible 𝒪_Y-module restricting to every L i. It is exists_invertibleModule_of_isOpenCover_of_overlapCompatible (ReconstructionGluedModule.lean:197) run on these charts, its transition data being transOfRestrictIso for the module e(𝒪_X), which restricts to each L i by restrictMapUnitIsoOfChartIso. The SCHEME half of the tag is exists_schemeIso_of_quasicoherentEquivalence (ReconstructionGlobalSchemeIso.lean:324). The comparison of functors e(F) ≅ f^*F ⊗ M, naturally in F, is NOT produced here: it is exists_natIso_pullbackTensorFunctor_of_quasicoherentEquivalence (ReconstructionGlobalComparison.lean), and it is stated for the module e(𝒪_X) rather than for the M glued here — taking e(𝒪_X) is what makes the per-chart comparisons agree at 𝒪_X, because then the identification of its restriction with L i is restrictMapUnitIsoOfChartIso, built from the same α i and β i. Nothing in this statement assumes it”.
The global form of [Stacks, Tag 0GPJ] with the per-chart invertible sheaves glued into one invertible module. Let
XandYbe quasi-compact and quasi-separated schemes, lete : QCoh(𝒪_X) ≌ QCoh(𝒪_Y)be an equivalence and letU ibe an affine open cover ofX. Then there are opensV icoveringY, each affine, and for eachian equivalenceF i : QCoh(𝒪_{U i}) ≌ QCoh(𝒪_{V i})compatible witheand the two restrictions, an isomorphism of schemesf i : V i ≅ U iand an invertible sheafL iof𝒪_{V i}-modules withF iinverse image alongf ifollowed by- ⊗ L i— and a single invertible𝒪_Y-moduleMwhose restriction to eachV iisL i.This is
AlgebraicGeometry.exists_isOpenCover_schemeIso_invertibleSheaf_of_isAffineOpenCoverwith the families pulled out of the per-index existential, together withAlgebraicGeometry.exists_invertibleModule_of_isOpenCover_of_overlapCompatiblerun on those charts. The three transition hypotheses of the gluing areAlgebraicGeometry.transOfRestrictIso,AlgebraicGeometry.transOfRestrictIso_resLEandAlgebraicGeometry.transOfRestrictIso_transfor the modulee(𝒪_X), which restricts to eachL ibyAlgebraicGeometry.restrictMapUnitIsoOfChartIso.
theorem exists_isOpenCover_invertibleModule_restrictIso_of_isAffineOpenCover {κ : Type u}
(U : κ → X.Opens) (hUaff : ∀ i, IsAffineOpen (U i)) (hUcover : IsOpenCover U) :
∃ (V : κ → Y.Opens)
(F : ∀ i, (SheafOfModules.isQuasicoherent (U i).toScheme.ringCatSheaf).FullSubcategory ⥤
(SheafOfModules.isQuasicoherent (V i).toScheme.ringCatSheaf).FullSubcategory)
(f : ∀ i, (V i).toScheme ≅ (U i).toScheme)
(L : ∀ i, SheafOfModules.{u} (V i).toScheme.ringCatSheaf) (M : Y.Modules),
IsOpenCover V ∧ (∀ i, IsAffineOpen (V i)) ∧ (∀ i, (F i).IsEquivalence) ∧
(∀ i, Stacks.SheafOfModules.IsInvertible (V i).toScheme.presheaf
(V i).toScheme.ringCatSheaf.2 (L i)) ∧
(∀ i, Nonempty (e.functor ⋙ quasicoherentRestriction (V i).ι ≅
quasicoherentRestriction (U i).ι ⋙ F i)) ∧
(∀ i, Nonempty (F i ⋙ ObjectProperty.ι
(SheafOfModules.isQuasicoherent (V i).toScheme.ringCatSheaf) ≅
pullbackTensorFunctor (f i).hom (L i))) ∧
Stacks.SheafOfModules.IsInvertible Y.presheaf Y.ringCatSheaf.2 M ∧
∀ i, Nonempty (Scheme.Modules.restrict M (V i).ι ≅ L i)
AlgebraicGeometry.exists_schemeIso_of_quasicoherentEquivalence, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/ReconstructionGlobalSchemeIso.lean, line 369. The attribute's comment: “the SCHEME HALF of the tag's conclusion, unconditionally: X and Y quasi-compact and quasi-separated and an equivalence of their categories of quasi-coherent modules give an isomorphism of schemes Y ≅ X. No cover, no affineness, no invertible module and no further hypothesis of any kind beyond qcqs. This is the step the Stacks source dismisses with "We omit the details", carried out: the charts are matched (ReconstructionGlobalForm.lean), they cover Y (ReconstructionCover.lean:164), they agree on overlaps in both directions (ReconstructionOverlapCompatible.lean:256, ReconstructionGlobalSchemeIso.lean:223) because the matched pair is rigid (ReconstructionRigidity.lean:141), and they glue (ReconstructionGluedIso.lean:113). The MODULE half — 0GPJ also asserts a single invertible 𝒪_Y-module L with e(F) ≅ f^*F ⊗ L — is NOT produced here: it is isInvertible_map_quasicoherentUnit_of_quasicoherentEquivalence (ReconstructionGlobalModule.lean), the module being e(𝒪_X), and the comparison of functors is exists_natIso_pullbackTensorFunctor_of_quasicoherentEquivalence (ReconstructionGlobalComparison.lean). Nothing in this statement assumes either”.
The scheme half of [Stacks, Tag 0GPJ] with no cover hypothesised. Two quasi-compact quasi-separated schemes with equivalent categories of quasi-coherent modules are isomorphic.
This is the statement above with the affine open cover of
Xdeleted:Xis covered by its own affine opens,AlgebraicGeometry.iSup_affineOpens_eq_top, and that family is indexed byAlgebraicGeometry.Scheme.affineOpens, a type in the same universe.
theorem exists_schemeIso_of_quasicoherentEquivalence {X Y : Scheme.{u}} [CompactSpace X]
[QuasiSeparatedSpace X] [CompactSpace Y] [QuasiSeparatedSpace Y]
(e : (SheafOfModules.isQuasicoherent X.ringCatSheaf).FullSubcategory ≌
(SheafOfModules.isQuasicoherent Y.ringCatSheaf).FullSubcategory) :
Nonempty (Y ≅ X)
AlgebraicGeometry.exists_isAffineOpen_schemeIso_invertibleSheaf_of_isFinitePresentation, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/ReconstructionLocalForm.lean, line 78. The attribute's comment: “steps 3 to 8 only: the statement LOCALIZED at one affine open U ⊆ X, with the module G of step 2 given as a hypothesis. This is the per-chart building block; the statement over a whole cover is AlgebraicGeometry.exists_isOpenCover_schemeIso_invertibleSheaf_of_isAffineOpenCover, where the covering of Y is proved (AlgebraicGeometry.isOpenCover_of_supportedCorrespondence) and G is produced rather than hypothesised, so nothing in this clause is left open by this file alone. Step 9's descent datum is available too: AlgebraicGeometry.restrictionSquareFunctor makes F_U explicit with rfl section formulas (the localization lift has no formula on sections, which is why it is rebuilt), and AlgebraicGeometry.ReconstructionGlue.glueData is a complete FunctorGlueData, all five fields, its covering hypothesis discharged by AlgebraicGeometry.exists_gluedQuasicoherentFunctor_restrictIso. What remains open for 0GPJ as a whole is the gluing of the per-chart f_U and L_U into a single isomorphism Y ≅ X and a single invertible 𝒪_Y-module, which the source dismisses with "We omit the details". As in the affine case the comparison of functors is stated after forgetting quasi-coherence, between functors into all 𝒪_V-modules”.
Stacks Project, Tag 0GPJ, steps 3 to 8: the local form of the proposition. Let
XandYbe quasi-compact and quasi-separated schemes and lete : QCoh(𝒪_X) ≌ QCoh(𝒪_Y)be an equivalence. LetU ⊆ Xbe an affine open and letGbe a finitely presented quasi-coherent𝒪_X-module whose support is the complement ofU. Then there is a quasi-compact openV ⊆ Y— namely the complement of the support ofe.functor.obj G— which is affine, and there are an equivalenceF_U : QCoh(𝒪_U) ≌ QCoh(𝒪_V)compatible witheand the two restrictions, an isomorphism of schemesf_U : V ≅ Uand an invertible sheafL_Uof𝒪_V-modules such thatF_Uis inverse image alongf_Ufollowed by- ⊗_{𝒪_V} L_U.
theorem exists_isAffineOpen_schemeIso_invertibleSheaf_of_isFinitePresentation (U : X.Opens)
(hUaff : IsAffineOpen U)
(G : (SheafOfModules.isQuasicoherent X.ringCatSheaf).FullSubcategory)
[SheafOfModules.IsFinitePresentation (R := X.ringCatSheaf) G.obj]
(hG : supportSet G.obj = (U : Set X)ᶜ) :
∃ V : Y.Opens, IsAffineOpen V ∧ IsCompact (V : Set Y) ∧
∃ (F : (SheafOfModules.isQuasicoherent U.toScheme.ringCatSheaf).FullSubcategory ⥤
(SheafOfModules.isQuasicoherent V.toScheme.ringCatSheaf).FullSubcategory)
(f : V.toScheme ≅ U.toScheme) (L : SheafOfModules.{u} V.toScheme.ringCatSheaf),
F.IsEquivalence ∧
Stacks.SheafOfModules.IsInvertible V.toScheme.presheaf V.toScheme.ringCatSheaf.2 L ∧
Nonempty (e.functor ⋙ quasicoherentRestriction V.ι ≅
quasicoherentRestriction U.ι ⋙ F) ∧
Nonempty (F ⋙ ObjectProperty.ι
(SheafOfModules.isQuasicoherent V.toScheme.ringCatSheaf) ≅
pullbackTensorFunctor f.hom L)
Sources
Section56.7 Functors between categories of coherent modules#
Section 56.7 of the Stacks Project, Tag 0FZK. 8 tags here are carried by 13 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 0FZL, a lemma
Tag 0FZL in the Stacks Project.
AlgebraicGeometry.CoherentModuleFunctors.FilteredColimitExtension.preservesCoproducts, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/CoherentModuleFunctors/DirectSums.lean, line 269. The attribute's comment: “direct_sums”.
Stacks Project, Tag 0FZL. An extension of an additive functor on coherent modules commutes with arbitrary direct sums of quasi-coherent modules.
lemma FilteredColimitExtension.preservesCoproducts (E : FilteredColimitExtension X Y F)
(J : Type u) : PreservesColimitsOfShape (Discrete J) E.functor
AlgebraicGeometry.CoherentModuleFunctors.FilteredColimitExtension.preservesFiniteLimits, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/CoherentModuleFunctors/Exactness.lean, line 554. The attribute's comment: “left_exactness”.
Stacks Project, Tag 0FZL. The extension of a left exact functor on the coherent modules of a Noetherian scheme is left exact.
theorem FilteredColimitExtension.preservesFiniteLimits {X Y : Scheme.{u}}
[IsNoetherian X] [IsNoetherian Y]
{F : CoherentModules X.ringCatSheaf ⥤ CoherentModules Y.ringCatSheaf}
(E : FilteredColimitExtension X Y F) [PreservesFiniteLimits F] :
PreservesFiniteLimits E.functor
AlgebraicGeometry.CoherentModuleFunctors.FilteredColimitExtension.preservesFiniteColimits, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/CoherentModuleFunctors/Exactness.lean, line 567. The attribute's comment: “right_exactness”.
Stacks Project, Tag 0FZL. The extension of a right exact functor on the coherent modules of a Noetherian scheme is right exact.
theorem FilteredColimitExtension.preservesFiniteColimits {X Y : Scheme.{u}}
[IsNoetherian X] [IsNoetherian Y]
{F : CoherentModules X.ringCatSheaf ⥤ CoherentModules Y.ringCatSheaf}
(E : FilteredColimitExtension X Y F) [PreservesFiniteColimits F] :
PreservesFiniteColimits E.functor
AlgebraicGeometry.CoherentModuleFunctors.FilteredColimitExtension.exactFunctor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/CoherentModuleFunctors/Exactness.lean, line 580. The attribute's comment: “exactness”.
Stacks Project, Tag 0FZL. The extension of an exact functor on the coherent modules of a Noetherian scheme is exact.
theorem FilteredColimitExtension.exactFunctor {X Y : Scheme.{u}}
[IsNoetherian X] [IsNoetherian Y]
{F : CoherentModules X.ringCatSheaf ⥤ CoherentModules Y.ringCatSheaf}
(E : FilteredColimitExtension X Y F)
(hF : exactFunctor (CoherentModules X.ringCatSheaf) (CoherentModules Y.ringCatSheaf) F) :
exactFunctor (SheafOfModules.isQuasicoherent X.ringCatSheaf).FullSubcategory
(SheafOfModules.isQuasicoherent Y.ringCatSheaf).FullSubcategory E.functor
AlgebraicGeometry.CoherentModuleFunctors.filteredColimitExtension, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/CoherentModuleFunctors/Extension.lean, line 389. The attribute's comment: “extension”.
Stacks Project, Tag 0FZL. A functor from the coherent modules on a Noetherian scheme to the coherent modules on a scheme extends to a functor on quasi-coherent modules which commutes with filtered colimits.
noncomputable def filteredColimitExtension (X Y : Scheme.{u}) [IsNoetherian X]
(F : CoherentModules X.ringCatSheaf ⥤
CoherentModules Y.ringCatSheaf) :
FilteredColimitExtension X Y F
AlgebraicGeometry.CoherentModuleFunctors.FilteredColimitExtension.existsUnique_iso, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/CoherentModuleFunctors/Extension.lean, line 416. The attribute's comment: “extension”.
Stacks Project, Tag 0FZL. Two filtered-colimit-preserving extensions are related by a unique natural isomorphism compatible with their specified identifications on the coherent modules.
theorem FilteredColimitExtension.existsUnique_iso {X Y : Scheme.{u}} [IsNoetherian X]
{F : CoherentModules X.ringCatSheaf ⥤
CoherentModules Y.ringCatSheaf}
(E₁ E₂ : FilteredColimitExtension X Y F) :
∃! e : E₁.functor ≅ E₂.functor,
Functor.whiskerLeft (coherentToQuasicoherent X) e.hom =
(E₁.iso.trans E₂.iso.symm).hom
Tag 0GPK, a lemma
Tag 0GPK in the Stacks Project.
AlgebraicGeometry.CoherentModuleFunctors.exists_iso_pullbackTensor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/CoherentModuleFunctors/EquivalenceReconstruction.lean, line 193.
Stacks Project, Tag 0GPK. Let
XandYbe Noetherian schemes and letF : Coh(𝒪_X) ⥤ Coh(𝒪_Y)be an equivalence of categories. Then there are an isomorphism of schemesf : Y ⟶ Xand an invertible𝒪_Y-moduleℒwithF(𝓕) = f^*𝓕 ⊗ ℒ, naturally in the coherent𝒪_X-module𝓕. The corresponding description of an equivalence of the categories of quasi-coherent modules is Tag 0GPJ, available here asexists_iso_pullbackTensor_quasicoherent; the coherent case follows from it by extendingFto the quasi-coherent modules. Nothing is hypothesised.
theorem exists_iso_pullbackTensor {X Y : Scheme.{u}} [IsNoetherian X] [IsNoetherian Y]
(F : CoherentModules X.ringCatSheaf ⥤ CoherentModules Y.ringCatSheaf) [F.IsEquivalence] :
∃ (f : Y ≅ X) (L : Y.Modules),
Stacks.SheafOfModules.IsInvertible Y.presheaf Y.ringCatSheaf.2 L ∧
Nonempty (coherentToModules X ⋙ pullbackTensor f.hom L ≅ F ⋙ coherentToModules Y)
Tag 0GPL, a remark
Tag 0GPL in the Stacks Project.
AlgebraicGeometry.CoherentModuleFunctors.exists_iso_pullbackTensor_over_base, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/CoherentModuleFunctors/EquivalenceOverBase.lean, line 281.
Stacks Project, Tag 0GPL. Let
Rbe a commutative ring, letXandYbe Noetherian schemes overR, and letF : Coh(𝒪_X) ⥤ Coh(𝒪_Y)be an equivalence of categories which is linear overR. Then the isomorphism of schemesf : Y ≅ Xand the invertible𝒪_Y-moduleℒof Tag 0GPK withF(𝓕) = f^*𝓕 ⊗ ℒmay be chosen withfa morphism of schemes overR, that is withf ≫ (X → Spec R) = (Y → Spec R).Nothing is hypothesised. Tag 0GPK is unconditional, so the content here is only the refinement over
R:R-linearity ofFforcesfto be a morphism overR.
theorem exists_iso_pullbackTensor_over_base (X Y : Over (Spec (.of R)))
[IsNoetherian X.left] [IsNoetherian Y.left]
(F : CoherentModules X.left.ringCatSheaf ⥤ CoherentModules Y.left.ringCatSheaf)
[F.IsEquivalence] :
letI : Linear R (SheafOfModules.{u} X.left.ringCatSheaf) := modulesLinear R X
letI : Linear R (SheafOfModules.{u} Y.left.ringCatSheaf) := modulesLinear R Y
F.Linear R →
∃ (f : Y.left ≅ X.left) (L : Y.left.Modules),
Stacks.SheafOfModules.IsInvertible Y.left.presheaf Y.left.ringCatSheaf.2 L ∧
Nonempty (coherentToModules X.left ⋙ pullbackTensor f.hom L ≅
F ⋙ coherentToModules Y.left) ∧
f.hom ≫ X.hom = Y.hom
Tag 0FZM, a lemma
Tag 0FZM in the Stacks Project.
Stacks.AlgebraicGeometry.CoherentModuleFunctors.isFinite_of_isCoherent_pushforward_of_isZero_higherDirectImages, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/CoherentModuleFunctors/FinitenessCriterion.lean, line 369.
A finiteness criterion. Let
f : V ⟶ Xbe a quasi-finite separated morphism of Noetherian schemes. If there is a coherent𝒪_V-module𝒦whose support is all ofVsuch thatf_*𝒦is coherent andR^q f_*𝒦 = 0for everyq > 0, thenfis finite.Quasi-finiteness is [Stacks, Tag 02NG] — locally quasi-finite and of finite type — which in Mathlib's vocabulary is
AlgebraicGeometry.LocallyQuasiFinite,AlgebraicGeometry.LocallyOfFiniteTypeandAlgebraicGeometry.QuasiCompacttogether. The existential over𝒦of the source is taken as an explicit hypothesis.Finiteness is Zariski-local on the target, and every hypothesis restricts to an affine open
UofX: coherence and the support condition because they are local, and the vanishing of the higher direct images by the comparisonR^q(f|_U)_*(𝒦|_{f^{-1}U}) ≅ (R^q f_*𝒦)|_Uof [Stacks, Tag 01E5]. Over an affine target the statement isisFinite_of_isAffine_target.
public theorem isFinite_of_isCoherent_pushforward_of_isZero_higherDirectImages
{V X : Scheme.{u}} (f : V ⟶ X) [IsNoetherian V] [IsNoetherian X]
[LocallyOfFiniteType f] [LocallyQuasiFinite f] [QuasiCompact f] [IsSeparated f]
(K : V.Modules) [K.IsCoherent] (hsupp : SheafOfModules.supp K = Set.univ)
(hpush : ((Scheme.Modules.pushforward f).obj K).IsCoherent)
(hvanish : ∀ q : ℤ, 0 < q →
IsZero (((Scheme.Modules.pushforward f).rightDerivedPlus q).obj K)) :
IsFinite f
Tag 0FZN, a lemma
Tag 0FZN in the Stacks Project.
AlgebraicGeometry.CoherentKernels.isEquivalence_coherentIntegralTransformFunctor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/CoherentKernels/Equivalence.lean, line 216. The attribute's comment: “sending a coherent kernel flat over X with support finite over Y to the restriction to Coh of its integral transform is an equivalence onto the k-linear exact functors Coh(O_X) to Coh(O_Y)”.
Stacks Project, Tag 0FZN. Let
kbe a field and letXandYbe schemes of finite type overkwithXseparated. Sending a coherent𝒪_{X ×_k Y}-module𝒦, flat overXand with support finite overY, to the restriction toCoh(𝒪_X)of its integral transform𝓕 ↦ pr_{2,*}(pr_1^*𝓕 ⊗ 𝒦)is an equivalence of categories onto thek-linear exact functorsCoh(𝒪_X) ⥤ Coh(𝒪_Y).Finite type over
kisLocallyOfFiniteTypetogether withQuasiCompact;X ×_k Yis the fibre product overSpec k. The functor iscoherentIntegralTransformFunctor, whose value at𝒦is by definition the restriction ofquasicoherentIntegralTransform k X Y 𝒦(coherentIntegralTransformFunctor_obj_obj_comp), the pullback--tensor--pushforward formulaintegralTransformFormulaafter forgetting quasi-coherence.
theorem isEquivalence_coherentIntegralTransformFunctor :
(coherentIntegralTransformFunctor k X Y).IsEquivalence
Tag 0FZP, a lemma
Tag 0FZP in the Stacks Project.
AlgebraicGeometry.Scheme.Modules.exists_section_iso_pushforward_of_invertible_pushforward, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/InvertiblePushforwardSection.lean, line 372.
Let
f : X ⟶ Ybe a separated morphism of finite type and letFbe a quasi-coherent𝒪_X-module of finite type whose scheme-theoretic support is finite overY. If the direct imagef_* Fis invertible, thenfadmits a sections, andFis the direct image alongsoff_* F.
public theorem exists_section_iso_pushforward_of_invertible_pushforward
{X Y : Scheme.{u}} (f : X ⟶ Y)
[LocallyOfFiniteType f] [QuasiCompact f] [IsSeparated f]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType]
[IsFinite ((Scheme.Modules.annihilatorIdeal F).subschemeι ≫ f)]
[AlgebraicGeometry.SheafOfModules.IsInvertible Y.presheaf Y.ringCatSheaf.property
((Scheme.Modules.pushforward f).obj F)] :
∃ s : Y ⟶ X, s ≫ f = 𝟙 Y ∧
Nonempty (F ≅ (Scheme.Modules.pushforward s).obj
((Scheme.Modules.pushforward f).obj F))
Tag 0FZQ, a lemma
Tag 0FZQ in the Stacks Project.
AlgebraicGeometry.Scheme.Modules.iso_pushforward_section_of_invertible_pushforward, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/QuasiCoherent/InvertiblePushforwardSection.lean, line 654.
Let
f : X ⟶ Ybe a separated morphism of finite type with a sections, and letYbe reduced. A quasi-coherent𝒪_X-moduleFof finite type supported on the image ofsand with invertible direct imagef_* Fis the direct image alongsoff_* F.
public theorem iso_pushforward_section_of_invertible_pushforward
{X Y : Scheme.{u}} (f : X ⟶ Y) (s : Y ⟶ X)
[LocallyOfFiniteType f] [QuasiCompact f] [IsSeparated f]
(hs : s ≫ f = 𝟙 Y) [IsReduced Y]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType]
(hsupp : SheafOfModules.supp F ⊆ Set.range s.base)
[AlgebraicGeometry.SheafOfModules.IsInvertible Y.presheaf Y.ringCatSheaf.property
((Scheme.Modules.pushforward f).obj F)] :
Nonempty (F ≅ (Scheme.Modules.pushforward s).obj
((Scheme.Modules.pushforward f).obj F))
Tag 0FZR, a lemma
Tag 0FZR in the Stacks Project.
AlgebraicGeometry.CoherentModuleFunctors.exists_iso_pullbackTensor_over_field, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/FunctorsAndMorphisms/CoherentModuleFunctors/EquivalenceOverField.lean, line 107. The attribute's comment: “with X SEPARATED and Y REDUCED deleted: the source uses those two hypotheses in its second proof only, and the deduction carried out here — from Tag 0GPL, with finite type over the field giving Noetherian by isNoetherian_of_finiteType_over_field — does not need them, so the statement is more general than the source's and implies it. Finite type is LocallyOfFiniteType together with QuasiCompact. As in Tags 0GPK and 0GPL the prescribed form of the functor is stated after the fully faithful inclusions of the coherent modules into all 𝒪-modules, where the inverse image and the tensor product live”.
Stacks Project, Tag 0FZR. Let
kbe a field, letXandYbe schemes of finite type overk, and letF : Coh(𝒪_X) ⥤ Coh(𝒪_Y)be an equivalence of categories which isk-linear. Then there are an isomorphism of schemesf : Y ≅ Xoverk, that is withf ≫ (X → Spec k) = (Y → Spec k), and an invertible𝒪_Y-moduleℒwithF(𝓕) = f^*𝓕 ⊗ ℒ, naturally in the coherent𝒪_X-module𝓕.Finite type is
LocallyOfFiniteType X.homtogether withQuasiCompact X.hom; this makesXandYNoetherian byisNoetherian_of_finiteType_over_field, which is what Tag 0GPL needs, andk-linearity is what makes itsfa morphism overk.Nothing is hypothesised: Tag 0GPL is unconditional, so the content here is only the passage from Noetherian to finite type over
k.The source states the lemma with
Xseparated andYreduced. Those hypotheses are used by its second proof only; the deduction from Tag 0GPK and Tag 0GPL carried out here does not need them, so they are absent and the statement is correspondingly more general.
theorem exists_iso_pullbackTensor_over_field (k : Type u) [Field k]
(X Y : Over (Spec (.of k)))
[LocallyOfFiniteType X.hom] [QuasiCompact X.hom]
[LocallyOfFiniteType Y.hom] [QuasiCompact Y.hom]
(F : CoherentModules X.left.ringCatSheaf ⥤ CoherentModules Y.left.ringCatSheaf)
[F.IsEquivalence] :
letI : Linear k (SheafOfModules.{u} X.left.ringCatSheaf) := modulesLinear k X
letI : Linear k (SheafOfModules.{u} Y.left.ringCatSheaf) := modulesLinear k Y
F.Linear k →
∃ (f : Y.left ≅ X.left) (L : Y.left.Modules),
Stacks.SheafOfModules.IsInvertible Y.left.presheaf Y.left.ringCatSheaf.2 L ∧
Nonempty (coherentToModules X.left ⋙ pullbackTensor f.hom L ≅
F ⋙ coherentToModules Y.left) ∧
f.hom ≫ X.hom = Y.hom
Sources
Loading dependency explorer…
The dependency explorer needs JavaScript and its graph data.