38.19 How purity is used to 38.33 Nagata compactification
Section38.19 How purity is used#
Section 38.19 of the Stacks Project, Tag 05L7. 7 tags here are carried by 15 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 05L8, a lemma
Tag 05L8 in the Stacks Project.
AlgebraicGeometry.forall_injective_stalkLinearMap_associatedPoints_iff_mono, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/PureModules/InjectivityOnClosedFibre.lean, line 155. The attribute's comment: “the equivalence, both directions; S local with closed point s is rendered by the hypothesis that every point of S specializes to s, which is what a local base supplies”.
Stacks Project, Tag 05L8. Let
f : X ⟶ Sbe a morphism of finite type, letℱbe a quasi-coherent𝒪_X-module of finite type, and letsbe a point ofSto which every point ofSspecializes — for instance the closed point of a local base. Assumeℱis pure along the fibreX_sand flat overS. Then a mapφ : ℱ ⟶ 𝒢of quasi-coherent𝒪_X-modules is injective if and only if the stalk mapφ_xis injective at every pointxofX_sassociated to the restrictionℱ_s.One direction is immediate: the stalk maps of a monomorphism are injective at every point. For the other, the kernel of
φhas no weakly associated point — such a point would lie inAss_{X/S}(ℱ)by flatness, would specialize intoX_sby purity, and the hypothesis at the associated point ofℱ_sit specializes to by Tag 05L3 would put that point outside the support of the kernel, which is stable under specialization.
theorem forall_injective_stalkLinearMap_associatedPoints_iff_mono
{X S : Scheme.{u}} (f : X ⟶ S) [LocallyOfFiniteType f] [QuasiCompact f]
(F G : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType] [G.IsQuasicoherent]
(s : S) (hclosed : ∀ t : S, t ⤳ s)
(hpure : IsPureAlong ({ S := S, X := X, f := f, F := F, s := s } : PrePureSituation.{u}))
(hflat : IsFlatOver f.toLRSHom.toShHom F) (φ : F ⟶ G) :
(∀ x : f.fiber s,
x ∈ Stacks.Divisors.associatedPoints ((Scheme.Modules.pullback (f.fiberι s)).obj F) →
Function.Injective (stalkLinearMap F G φ (f.fiberι s x))) ↔ Mono φ
Tag 05MD, a proposition
Tag 05MD in the Stacks Project.
AlgebraicGeometry.isLocallyProjective_pushforward_iff_isPureRelative, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/PureModules/ProjectivePushforwardConverse.lean, line 156. The attribute's comment: “the scheme criterion, as a biconditional”. References: SGA 3 VIB (6.9), “more general”.
Stacks Project, Tag 05MD, the scheme form. For an affine morphism of finite presentation and a quasi-coherent module of finite presentation which is flat over the base, the direct image is locally projective exactly when the module is pure relative to the base.
The implication from local projectivity to purity is
AlgebraicGeometry.isPureRelative_of_isLocallyProjective_pushforward, which needs neither flatness nor finite presentation; the converse isAlgebraicGeometry.isLocallyProjective_pushforward_of_isPureRelative.
theorem isLocallyProjective_pushforward_iff_isPureRelative {X S : Scheme.{u}} (f : X ⟶ S)
[IsAffineHom f] [LocallyOfFinitePresentation f] [QuasiCompact f] [QuasiSeparated f]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFinitePresentation]
(hflat : IsFlatOver f.toLRSHom.toShHom F) :
letI : F.IsFiniteType := SheafOfModules.instIsFiniteTypeOfIsFinitePresentation F
Scheme.Modules.IsLocallyProjective ((Scheme.Modules.pushforward f).obj F) ↔
IsPureRelative f F
AlgebraicGeometry.projective_iff_isPureRelative_tilde, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/PureModules/ProjectivePushforwardConverse.lean, line 177. The attribute's comment: “the affine ring specialization, as a biconditional”.
Stacks Project, Tag 05MD, the ring form. Let
A → Bbe of finite presentation and letNbe a finitely presentedB-module which is flat overA. ThenNis projective overAexactly when the sheafÑonSpec Bis pure relative toSpec A.Both directions come from the scheme form applied to
Spec B ⟶ Spec A: the direct image ofÑis the sheaf associated toNviewed as anA-module (Tag 01I9,AlgebraicGeometry.pushforwardTildeIso), so local projectivity of the direct image is projectivity of thatA-module by Tag 05JQ (AlgebraicGeometry.isLocallyProjective_tilde_iff_projective).
theorem projective_iff_isPureRelative_tilde (A B N : Type u) [CommRing A] [CommRing B]
[Algebra A B] [AddCommGroup N] [Module A N] [Module B N] [IsScalarTower A B N]
[Algebra.FinitePresentation A B] [Module.FinitePresentation B N] [Module.Flat A N] :
Module.Projective A N ↔
IsPureRelative (Spec.map (CommRingCat.ofHom (algebraMap A B)))
(tilde (ModuleCat.of (CommRingCat.of B) N))
AlgebraicGeometry.isPureRelative_of_isLocallyProjective_pushforward, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/PureModules/ProjectivePushforwardCriterion.lean, line 63. The attribute's comment: “the implication from local projectivity of the direct image to relative purity, in the scheme form”. References: SGA 3 VIB (6.9), “6.9 a)”.
Stacks Project, Tag 05MD, the implication from (1) to (2). For an affine morphism of finite type, a finite type quasi-coherent module whose direct image is locally projective on the base is pure relative to the base.
This implication of Tag 05MD assumes neither flatness over the base nor finite presentation, which the statement of that tag assumes for the converse: it is Tag 05K6, whose conclusion is universal purity relative to the base, followed by the fact that universal purity along a fibre is purity along it with the étale and elementary hypotheses on the base change dropped.
theorem isPureRelative_of_isLocallyProjective_pushforward
{X S : Scheme.{u}} (f : X ⟶ S) [IsAffineHom f] [LocallyOfFiniteType f] [QuasiCompact f]
(F : X.Modules) [F.IsFiniteType] [F.IsQuasicoherent]
(hF : Scheme.Modules.IsLocallyProjective ((Scheme.Modules.pushforward f).obj F)) :
IsPureRelative f F
AlgebraicGeometry.isPureRelative_tilde_of_projective, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/PureModules/ProjectivePushforwardCriterion.lean, line 90. The attribute's comment: “the implication from projectivity to relative purity, in the ring form of the final assertion”.
Stacks Project, Tag 05MD, the ring specialization of the implication from (1) to (2). Let
A → Bbe a ring map of finite presentation and letNbe a finitely presentedB-module. IfNis projective as anA-module, then the sheafÑonSpec Bis pure relative toSpec A.As in the scheme form, flatness of
NoverA— which the statement of Tag 05MD assumes for the converse — is not needed for this implication. The direct image ofÑalongSpec B ⟶ Spec Ais the sheaf associated toNviewed as anA-module, by Tag 01I9, so local projectivity of the direct image is projectivity of thatA-module by Tag 05JQ.
theorem isPureRelative_tilde_of_projective
(A B N : Type u) [CommRing A] [CommRing B] [Algebra A B]
[AddCommGroup N] [Module A N] [Module B N] [IsScalarTower A B N]
[Algebra.FinitePresentation A B] [Module.FinitePresentation B N]
(hproj : Module.Projective A N) :
IsPureRelative (Spec.map (CommRingCat.ofHom (algebraMap A B)))
(tilde (ModuleCat.of (CommRingCat.of B) N))
Tag 05ME, a lemma
Tag 05ME in the Stacks Project.
AlgebraicGeometry.exists_affineOpen_projective_sections_of_chart, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/PureModules/ProjectiveSectionsAffineOpen05ME.lean, line 864.
Stacks Project, Tag 05ME. Let
f : X ⟶ Sbe locally of finite presentation, letFbe a quasi-coherent𝒪_X-module of finite presentation, and letx ∈ Xlie overs ∈ SwithFflat overSatx. Then there are an affine elementary étale neighbourhood(S', s') ⟶ (S, s)and an affine openU' ⊆ X ×_S S'containingx' = (x, s')such thatΓ(U', F|_{U'})is a projectiveΓ(S', 𝒪_{S'})-module.The chart whose name this declaration carries is the one of Tag 05KW, built inside
AlgebraicGeometry.exists_openImmersion_projective_sections_of_affineafterXhas been shrunk twice: by openness of the flat locus, Tag 0399 (AlgebraicGeometry.isOpen_setOf_flatOverAt), and by finiteness of the associated points of the fibre, Tag 05AF (AlgebraicGeometry.associatedPoints_inter_finite), which removes the ones not generalizingx. The affine open produced over the shrunkenXis transported toX ×_S S'along the resulting open immersion.
theorem exists_affineOpen_projective_sections_of_chart
{X S : Scheme.{u}} (f : X ⟶ S) [LocallyOfFinitePresentation f]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFinitePresentation]
(s : S) (x : X) (hxs : f x = s) (hflat : IsFlatOverAt f.toLRSHom.toShHom F x) :
∃ (N : EtaleNeighborhood S s) (_ : N.IsElementary) (_ : IsAffine N.scheme)
(x' : (pullback f N.toBase : Scheme.{u}))
(_ : pullback.fst f N.toBase x' = x)
(_ : pullback.snd f N.toBase x' = N.point)
(U' : (pullback f N.toBase : Scheme.{u}).Opens)
(_ : IsAffineOpen U') (_ : x' ∈ U'),
let G := (Scheme.Modules.pullback (pullback.fst f N.toBase)).obj F
letI : Module Γ(N.scheme, ⊤) Γ(G, U') :=
Module.compHom Γ(G, U') ((pullback.snd f N.toBase).appLE ⊤ U' (by simp)).hom
Module.Projective Γ(N.scheme, ⊤) Γ(G, U')
Tag 05MF, a lemma
Tag 05MF in the Stacks Project.
AlgebraicGeometry.exists_elementaryEtaleNeighborhood_free_sections, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Etale/ElementaryNeighborhood/FreeSections05MF.lean, line 153. The attribute's comment: “RESTRICTED: carries hproj, this same existential with Module.Projective in place of Module.Free and the clause on the image of x' in Spec 𝒪_{S', s'} dropped, which is the 05ME half of the source's proof (Lemma 05ME composed with Proposition 05I5)”.
Stacks Project, Tag 05MF. A finite-type quasi-coherent module which is flat over the base at a point has free sections on an affine neighbourhood of the lifted point after base change to the local scheme of an affine elementary étale neighbourhood.
The obligation
hprojis Lemma 05ME composed with Proposition 05I5: the same existential withModule.Projectivein place ofModule.Free, and with nothing asserted about the image ofx'inSpec 𝒪_{S', s'}. Projectivity becomes freeness by Kaplansky's theorem (Tag 0593), and the image ofx'is the distinguished point automatically, byAlgebraicGeometry.EtaleNeighborhood.fromSpecStalk_snd_eq_point.
theorem exists_elementaryEtaleNeighborhood_free_sections
{X S : Scheme.{u}} (f : X ⟶ S) [LocallyOfFiniteType f]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType] (x : X)
(hflat : IsFlatOverAt f.toLRSHom.toShHom F x)
(hproj : IsFlatOverAt f.toLRSHom.toShHom F x →
∃ (N : EtaleNeighborhood S (f x)),
N.IsElementary ∧ IsAffine N.scheme ∧
let g := N.scheme.fromSpecStalk N.point ≫ N.toBase
let P := pullback f g
∃ (x' : P) (W : P.Opens),
pullback.fst f g x' = x ∧
IsAffineOpen W ∧ x' ∈ W ∧
let F' := (Scheme.Modules.pullback (pullback.fst f g)).obj F
letI : Module (N.scheme.presheaf.stalk N.point) Γ(F', W) :=
Module.compHom Γ(F', W)
(((Scheme.ΓSpecIso (.of (N.scheme.presheaf.stalk N.point))).inv ≫
(pullback.snd f g).appLE ⊤ W (by simp)).hom)
Module.Projective (N.scheme.presheaf.stalk N.point) Γ(F', W)) :
∃ (N : EtaleNeighborhood S (f x)),
N.IsElementary ∧ IsAffine N.scheme ∧
let g := N.scheme.fromSpecStalk N.point ≫ N.toBase
let P := pullback f g
∃ (x' : P) (W : P.Opens),
pullback.fst f g x' = x ∧
N.scheme.fromSpecStalk N.point (pullback.snd f g x') = N.point ∧
IsAffineOpen W ∧ x' ∈ W ∧
let F' := (Scheme.Modules.pullback (pullback.fst f g)).obj F
letI : Module (N.scheme.presheaf.stalk N.point) Γ(F', W) :=
Module.compHom Γ(F', W)
(((Scheme.ΓSpecIso (.of (N.scheme.presheaf.stalk N.point))).inv ≫
(pullback.snd f g).appLE ⊤ W (by simp)).hom)
Module.Free (N.scheme.presheaf.stalk N.point) Γ(F', W)
AlgebraicGeometry.exists_elementaryEtaleNeighborhood_free_sections_of_finitePresentation, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Etale/ElementaryNeighborhood/FreeSections05MF.lean, line 243. The attribute's comment: “for f locally of finite presentation and F of finite presentation”.
Stacks Project, Tag 05MF for a morphism locally of finite presentation and a module of finite presentation, with no hypothesis beyond flatness at the point.
Under those hypotheses the obligation
hprojofAlgebraicGeometry.exists_elementaryEtaleNeighborhood_free_sectionsis Lemma 05ME base changed to the local scheme of the neighbourhood it produces, which isAlgebraicGeometry.exists_affineOpen_projective_sections_stalk. The source states Tag 05MF forflocally of finite type andFof finite type, and reaches the hypotheses used here by a closed immersion into affine space and by Proposition 05I5; those two reductions are what the general statement still waits on.
theorem exists_elementaryEtaleNeighborhood_free_sections_of_finitePresentation
{X S : Scheme.{u}} (f : X ⟶ S) [LocallyOfFinitePresentation f]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFinitePresentation] (x : X)
(hflat : IsFlatOverAt f.toLRSHom.toShHom F x) :
∃ (N : EtaleNeighborhood S (f x)),
N.IsElementary ∧ IsAffine N.scheme ∧
let g := N.scheme.fromSpecStalk N.point ≫ N.toBase
let P := pullback f g
∃ (x' : P) (W : P.Opens),
pullback.fst f g x' = x ∧
N.scheme.fromSpecStalk N.point (pullback.snd f g x') = N.point ∧
IsAffineOpen W ∧ x' ∈ W ∧
let F' := (Scheme.Modules.pullback (pullback.fst f g)).obj F
letI : Module (N.scheme.presheaf.stalk N.point) Γ(F', W) :=
Module.compHom Γ(F', W)
(((Scheme.ΓSpecIso (.of (N.scheme.presheaf.stalk N.point))).inv ≫
(pullback.snd f g).appLE ⊤ W (by simp)).hom)
Module.Free (N.scheme.presheaf.stalk N.point) Γ(F', W)
AlgebraicGeometry.exists_elementaryEtaleNeighborhood_free_sections_of_finiteType, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Etale/ElementaryNeighborhood/FreeSectionsFiniteType05MF.lean, line 890.
Stacks Project, Tag 05MF. A finite-type quasi-coherent module which is flat over the base at a point has free sections on an affine neighbourhood of the lifted point after base change to the local scheme of an affine elementary étale neighbourhood.
public theorem exists_elementaryEtaleNeighborhood_free_sections_of_finiteType
{X S : Scheme.{u}} (f : X ⟶ S) [LocallyOfFiniteType f]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType] (x : X)
(hflat : AlgebraicGeometry.IsFlatOverAt f.toLRSHom.toShHom F x) :
∃ (N : AlgebraicGeometry.EtaleNeighborhood S (f x)),
N.IsElementary ∧ IsAffine N.scheme ∧
let g := N.scheme.fromSpecStalk N.point ≫ N.toBase
let P := pullback f g
∃ (x' : P) (W : P.Opens),
pullback.fst f g x' = x ∧
N.scheme.fromSpecStalk N.point (pullback.snd f g x') = N.point ∧
IsAffineOpen W ∧ x' ∈ W ∧
let F' := (Scheme.Modules.pullback (pullback.fst f g)).obj F
letI : Module (N.scheme.presheaf.stalk N.point) Γ(F', W) :=
Module.compHom Γ(F', W)
(((Scheme.ΓSpecIso (.of (N.scheme.presheaf.stalk N.point))).inv ≫
(pullback.snd f g).appLE ⊤ W (by simp)).hom)
Module.Free (N.scheme.presheaf.stalk N.point) Γ(F', W)
Tag 05U7, a lemma
Tag 05U7 in the Stacks Project.
exists_filteredColimit_free_with_injective_reduction_and_isMittagLeffler, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/HenselianEssFiniteTypeColimit.lean, line 165.
Stacks Project, Tag 05U7. Let
A → Bbe a local homomorphism of local rings which is essentially of finite type, and letNbe a finiteB-module which is flat as anA-module. IfAis henselian, thenNis a filtered colimitN = colim_i F_iof freeA-modulesF_isuch that every transition mapF_i → F_{i'}of the system induces an injective mapF_i/𝔪_A F_i → F_{i'}/𝔪_A F_{i'}. Also,Nis a Mittag-LefflerA-module.The colimit is computed in
ModuleCat A, in the joint universe ofAandN, so its vertex is compared with the universe lift ofN;F_i/𝔪_A F_iisF_i ⧸ 𝔪_A • ⊤and the induced map isSubmodule.mapQ. The Mittag-Leffler condition is that of Stacks 059F, with the finitely presented source and the test module in arbitrary universes.
theorem exists_filteredColimit_free_with_injective_reduction_and_isMittagLeffler
{A : Type u} {B : Type v} {N : Type uM} [CommRing A] [CommRing B]
[IsLocalRing B] [HenselianLocalRing A]
[Algebra A B] [IsLocalHom (algebraMap A B)]
(hB : Algebra.EssFiniteType A B)
[AddCommGroup N] [Module A N] [Module B N] [IsScalarTower A B N]
[Module.Finite B N] [Module.Flat A N] :
(∃ (I : Type (max u uM)) (_ : SmallCategory I) (_ : IsFiltered I)
(F : I ⥤ ModuleCat.{max u uM} A) (c : Cocone F),
(∀ i, Module.Free A (F.obj i)) ∧
(∀ {i j : I} (f : i ⟶ j), Function.Injective
(Submodule.mapQ
(maximalIdeal A • (⊤ : Submodule A (F.obj i)))
(maximalIdeal A • (⊤ : Submodule A (F.obj j)))
(F.map f).hom
(Submodule.smul_top_le_comap_smul_top (maximalIdeal A)
(F.map f).hom))) ∧
Nonempty (IsColimit c) ∧
Nonempty (c.pt ≅ ModuleCat.of A (ULift.{u} N))) ∧
IsMittagLeffler.{u, uP, uM, max u uQ, uN} A N
isMittagLeffler_of_flat_finite_essFiniteType_local, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/MittagLefflerEssFiniteType.lean, line 330. The attribute's comment: “the Mittag-Leffler conclusion”.
Let
A → Bbe an essentially finite type local homomorphism of local rings withAhenselian, and letNbe a finiteB-module which is flat overA. ThenNis a Mittag-LefflerA-module.
theorem isMittagLeffler_of_flat_finite_essFiniteType_local
{A : Type u} {B : Type v} {N : Type uM} [CommRing A] [CommRing B]
[IsLocalRing B] [HenselianLocalRing A]
[Algebra A B] [IsLocalHom (algebraMap A B)]
(hB : Algebra.EssFiniteType A B)
[AddCommGroup N] [Module A N] [Module B N] [IsScalarTower A B N]
[Module.Finite B N] [Module.Flat A N] :
IsMittagLeffler.{u, uP, uM, max u uQ, uN} A N
exists_filteredColimit_free_with_injective_reduction, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/MittagLefflerFilteredColimitPresentation/FreePresentation.lean, line 580. The attribute's comment: “filtered-colimit presentation”.
Let
Abe a henselian local ring,A → Ba local homomorphism of local rings withBessentially of finite type overA, andNa finiteB-module which is flat overA. ThenNis a filtered colimit of freeA-modulesF isuch that every transition mapF i → F jinduces an injective mapF i / 𝔪_A F i → F j / 𝔪_A F j.
public theorem exists_filteredColimit_free_with_injective_reduction
{A : Type u} {B : Type v} {N : Type uM} [CommRing A] [CommRing B]
[IsLocalRing B] [HenselianLocalRing A]
[Algebra A B] [IsLocalHom (algebraMap A B)]
(hB : Algebra.EssFiniteType A B)
[AddCommGroup N] [Module A N] [Module B N] [IsScalarTower A B N]
[Module.Finite B N] [Module.Flat A N] :
∃ (I : Type (max u uM)) (_ : SmallCategory I) (_ : IsFiltered I)
(F : I ⥤ ModuleCat.{max u uM} A) (c : Cocone F),
(∀ i, Module.Free A (F.obj i)) ∧
(∀ {i j : I} (f : i ⟶ j), Function.Injective
(Submodule.mapQ
(maximalIdeal A • (⊤ : Submodule A (F.obj i)))
(maximalIdeal A • (⊤ : Submodule A (F.obj j)))
(F.map f).hom
(Submodule.smul_top_le_comap_smul_top (maximalIdeal A)
(F.map f).hom))) ∧
Nonempty (IsColimit c) ∧
Nonempty (c.pt ≅ ModuleCat.of A (ULift.{u} N))
Tag 0ASX, a lemma
Tag 0ASX in the Stacks Project.
IsContentIdeal.isPrincipal_of_valuationRing, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Valuation/ContentIdeal.lean, line 52. The attribute's comment: “the principality assertion, unconditionally and in strengthened form: no hypothesis beyond ValuationRing A is used, since a content ideal is finitely generated (0ASB) and a valuation ring is Bézout (090Q).”.
Stacks Tag 0ASX, the principality assertion. A content ideal of an element of a module over a valuation ring is a principal ideal.
The source states this for a finite module over an essentially finite type local algebra which is flat over the valuation ring, but, as its proof shows, none of that is used: a content ideal is finitely generated by Stacks 0ASB, and in a valuation ring every finitely generated ideal is principal by Stacks 090Q. Flatness of the module is not needed either, for the same reason it is not needed in Stacks 0ASB. Dropping the hypotheses only strengthens the statement.
theorem IsContentIdeal.isPrincipal_of_valuationRing
{A : Type u} [CommRing A] [IsDomain A] [ValuationRing A]
{N : Type w} [AddCommGroup N] [Module A N]
{x : N} {I : Ideal A} (hI : IsContentIdeal x I) : I.IsPrincipal
exists_isContentIdeal_isPrincipal_of_valuationRing_of_flat, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Valuation/ContentIdealExistence.lean, line 512.
Stacks Tag 0ASX. Let
A → Bbe a local ring map of local rings which is essentially of finite type, and letNbe a finiteB-module which is flat as anA-module. IfAis a valuation ring, then every elementxofNhas a content idealI ⊆ Ain the sense of Stacks 0ASA, and that ideal is principal.Existence is
exists_isContentIdeal_of_valuationRingand principality isIsContentIdeal.isPrincipal_of_valuationRing.
theorem exists_isContentIdeal_isPrincipal_of_valuationRing_of_flat
{A : Type u} {B : Type v} {N : Type w}
[CommRing A] [IsDomain A] [ValuationRing A]
[CommRing B] [IsLocalRing B] [Algebra A B] [IsLocalHom (algebraMap A B)]
[Algebra.EssFiniteType A B]
[AddCommGroup N] [Module A N] [Module B N] [IsScalarTower A B N]
[Module.Finite B N] [Module.Flat A N]
(x : N) :
∃ I : Ideal A, IsContentIdeal x I ∧ I.IsPrincipal
Tag 0H2T, a lemma
Tag 0H2T in the Stacks Project.
isReduced_and_isReduced_fiber_of_isProper_over_valuationRing, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Morphisms/Fibres/ReducedOverValuationRing.lean, line 437.
Let
f : X ⟶ Spec Rbe a proper flat morphism whereRis a valuation ring. If the special fibre is reduced, thenXand every fibre ofX ⟶ Spec Rare reduced.
public theorem isReduced_and_isReduced_fiber_of_isProper_over_valuationRing
{R : Type u} [CommRing R] [IsDomain R] [ValuationRing R]
{X : Scheme.{u}} (f : X ⟶ Spec (.of R)) [IsProper f] [Flat f]
(hspecial : IsReduced (f.fiber (IsLocalRing.closedPoint R))) :
IsReduced X ∧ ∀ s : Spec (.of R), IsReduced (f.fiber s)
Sources
Section38.20 Flattening functors#
Section 38.20 of the Stacks Project, Tag 05MG. 15 tags here are carried by 68 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 05MH, a situation
Tag 05MH in the Stacks Project.
Stacks.Flatness.ModuleMapBaseChangeSituation.IsInjectiveAfterBaseChange, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/Injectivity.lean, line 69. The attribute's comment: “the injectivity condition”.
The condition that the base-changed homomorphism is injective.
abbrev IsInjectiveAfterBaseChange (D : ModuleMapBaseChangeSituation.{u}) (T : Over D.S) : Prop
Stacks.Flatness.ModuleMapBaseChangeSituation.FlatOver, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/Injectivity.lean, line 87. The attribute's comment: “the category with flat morphisms”.
The category of schemes over
Swhose morphisms are only the flat ones.
abbrev FlatOver (S : Scheme.{u})
Stacks.Flatness.ModuleMapBaseChangeSituation.isInjectiveAfterBaseChange_of_flat_hom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/Injectivity.lean, line 94. The attribute's comment: “functoriality of the injectivity condition”.
Being injective after base change is preserved by every flat further base change: the transition morphism of base changes is then flat, so pulling back along it preserves monomorphisms, and the comparison isomorphism carries the base-changed homomorphism over
Tto the one overT'.
theorem isInjectiveAfterBaseChange_of_flat_hom (D : ModuleMapBaseChangeSituation.{u})
{T T' : Over D.S} (g : T' ⟶ T) (hg : Flat g.left)
(h : D.IsInjectiveAfterBaseChange T) : D.IsInjectiveAfterBaseChange T'
Stacks.Flatness.ModuleMapBaseChangeSituation.injectivityFunctor, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/Injectivity.lean, line 111. The attribute's comment: “the injectivity functor”.
The subterminal functor on schemes over the base with flat transition morphisms recording where the base-changed homomorphism is injective.
noncomputable def injectivityFunctor (D : ModuleMapBaseChangeSituation.{u}) :
(FlatOver D.S)ᵒᵖ ⥤ Type
Stacks.Flatness.ModuleMapBaseChangeSituation.isInjectiveAfterBaseChange_of_hom_of_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/Injectivity.lean, line 123. The attribute's comment: “unrestricted functoriality of injectivity for a surjection”.
If the homomorphism is surjective then its base change is both injective and surjective whenever it is injective, hence an isomorphism, and being an isomorphism after base change is stable under an arbitrary further base change.
theorem isInjectiveAfterBaseChange_of_hom_of_epi (D : ModuleMapBaseChangeSituation.{u})
[Epi D.hom] {T T' : Over D.S} (g : T' ⟶ T) (h : D.IsInjectiveAfterBaseChange T) :
D.IsInjectiveAfterBaseChange T'
Stacks.Flatness.ModuleMapBaseChangeSituation.injectivityFunctorOfEpi, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/Injectivity.lean, line 140. The attribute's comment: “the unrestricted injectivity functor for a surjection”.
For a surjective homomorphism, injectivity after base change defines a subterminal functor on all schemes over the base.
noncomputable def injectivityFunctorOfEpi (D : ModuleMapBaseChangeSituation.{u}) [Epi D.hom] :
(Over D.S)ᵒᵖ ⥤ Type
Stacks.Flatness.ModuleMapBaseChangeSituation.injectivityFunctorOfEpiRestrictionIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/Injectivity.lean, line 150. The attribute's comment: “restriction of the unrestricted injectivity functor”.
The unrestricted injectivity functor of a surjection restricts along the inclusion of the category with flat morphisms to the injectivity functor.
noncomputable def injectivityFunctorOfEpiRestrictionIso (D : ModuleMapBaseChangeSituation.{u})
[Epi D.hom] :
(wideSubcategoryInclusion (FlatMorphismOver D.S)).op ⋙ D.injectivityFunctorOfEpi ≅
D.injectivityFunctor
Stacks.Flatness.ModuleMapBaseChangeSituation.injectivityFunctorOfEpiIsoIsomorphismFunctor, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/Injectivity.lean, line 160. The attribute's comment: “injectivity equals isomorphism for a surjection”.
For a surjective homomorphism the unrestricted injectivity functor is the isomorphism functor: a surjection that is injective after base change is an isomorphism after base change, and conversely.
noncomputable def injectivityFunctorOfEpiIsoIsomorphismFunctor
(D : ModuleMapBaseChangeSituation.{u}) [Epi D.hom] :
D.injectivityFunctorOfEpi ≅ D.isomorphismFunctor
Stacks.Flatness.ModuleMapBaseChangeSituation, a structure in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/ModuleMapBaseChange.lean, line 90. The attribute's comment: “the situation”.
The standing data for testing a homomorphism of quasi-coherent modules after an arbitrary base change: a morphism of schemes
f : X ⟶ S, two quasi-coherent modules onX, and a homomorphism between them.
structure ModuleMapBaseChangeSituation
Stacks.Flatness.ModuleMapBaseChangeSituation.baseChange, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/ModuleMapBaseChange.lean, line 112. The attribute's comment: “the base-changed scheme”.
The base change
X ×_S Tof the source along a schemeTover the base.
noncomputable abbrev baseChange (D : ModuleMapBaseChangeSituation.{u}) (T : Over D.S) :
Scheme.{u}
Stacks.Flatness.ModuleMapBaseChangeSituation.baseChangeMap, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/ModuleMapBaseChange.lean, line 118. The attribute's comment: “the base-changed homomorphism”.
The pullback of the module homomorphism to
X ×_S T.
noncomputable def baseChangeMap (D : ModuleMapBaseChangeSituation.{u}) (T : Over D.S) :
(Scheme.Modules.pullback (pullback.fst D.f T.hom)).obj D.F ⟶
(Scheme.Modules.pullback (pullback.fst D.f T.hom)).obj D.G
Stacks.Flatness.ModuleMapBaseChangeSituation.IsIsomorphismAfterBaseChange, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/ModuleMapBaseChange.lean, line 125. The attribute's comment: “the isomorphism condition”.
The condition that the base-changed homomorphism is an isomorphism.
abbrev IsIsomorphismAfterBaseChange (D : ModuleMapBaseChangeSituation.{u}) (T : Over D.S) :
Prop
Stacks.Flatness.ModuleMapBaseChangeSituation.IsSurjectiveAfterBaseChange, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/ModuleMapBaseChange.lean, line 131. The attribute's comment: “the surjectivity condition”.
The condition that the base-changed homomorphism is surjective.
abbrev IsSurjectiveAfterBaseChange (D : ModuleMapBaseChangeSituation.{u}) (T : Over D.S) :
Prop
Stacks.Flatness.ModuleMapBaseChangeSituation.IsZeroAfterBaseChange, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/ModuleMapBaseChange.lean, line 137. The attribute's comment: “the zero condition”.
The condition that the base-changed homomorphism is zero.
abbrev IsZeroAfterBaseChange (D : ModuleMapBaseChangeSituation.{u}) (T : Over D.S) : Prop
Stacks.Flatness.ModuleMapBaseChangeSituation.isIsomorphismAfterBaseChange_of_hom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/ModuleMapBaseChange.lean, line 189. The attribute's comment: “functoriality of the isomorphism condition”.
Being an isomorphism after base change is preserved by every further base change.
theorem isIsomorphismAfterBaseChange_of_hom (D : ModuleMapBaseChangeSituation.{u})
{T T' : Over D.S} (g : T' ⟶ T) (h : D.IsIsomorphismAfterBaseChange T) :
D.IsIsomorphismAfterBaseChange T'
Stacks.Flatness.ModuleMapBaseChangeSituation.isSurjectiveAfterBaseChange_of_hom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/ModuleMapBaseChange.lean, line 199. The attribute's comment: “functoriality of the surjectivity condition”.
Being surjective after base change is preserved by every further base change.
theorem isSurjectiveAfterBaseChange_of_hom (D : ModuleMapBaseChangeSituation.{u})
{T T' : Over D.S} (g : T' ⟶ T) (h : D.IsSurjectiveAfterBaseChange T) :
D.IsSurjectiveAfterBaseChange T'
Stacks.Flatness.ModuleMapBaseChangeSituation.isZeroAfterBaseChange_of_hom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/ModuleMapBaseChange.lean, line 209. The attribute's comment: “functoriality of the zero condition”.
Being zero after base change is preserved by every further base change.
theorem isZeroAfterBaseChange_of_hom (D : ModuleMapBaseChangeSituation.{u}) {T T' : Over D.S}
(g : T' ⟶ T) (h : D.IsZeroAfterBaseChange T) : D.IsZeroAfterBaseChange T'
Stacks.Flatness.ModuleMapBaseChangeSituation.isomorphismFunctor, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/ModuleMapBaseChange.lean, line 218. The attribute's comment: “the isomorphism functor”.
The subterminal functor on schemes over the base recording where the base-changed homomorphism is an isomorphism.
noncomputable def isomorphismFunctor (D : ModuleMapBaseChangeSituation.{u}) :
(Over D.S)ᵒᵖ ⥤ Type
Stacks.Flatness.ModuleMapBaseChangeSituation.surjectivityFunctor, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/ModuleMapBaseChange.lean, line 228. The attribute's comment: “the surjectivity functor”.
The subterminal functor on schemes over the base recording where the base-changed homomorphism is surjective.
noncomputable def surjectivityFunctor (D : ModuleMapBaseChangeSituation.{u}) :
(Over D.S)ᵒᵖ ⥤ Type
Stacks.Flatness.ModuleMapBaseChangeSituation.zeroFunctor, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/ModuleMapBaseChange.lean, line 238. The attribute's comment: “the zero functor”.
The subterminal functor on schemes over the base recording where the base-changed homomorphism is zero.
noncomputable def zeroFunctor (D : ModuleMapBaseChangeSituation.{u}) :
(Over D.S)ᵒᵖ ⥤ Type
Tag 05MJ, a lemma
Tag 05MJ in the Stacks Project.
Stacks.Flatness.ModuleMapBaseChangeSituation.isomorphismFunctor_isSheaf_fpqc, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/FpqcSheaf.lean, line 76. The attribute's comment: “iso_fpqc”.
The isomorphism functor of a homomorphism of quasi-coherent modules satisfies the sheaf condition for the fpqc topology on schemes over the base.
theorem isomorphismFunctor_isSheaf_fpqc (D : ModuleMapBaseChangeSituation.{u}) :
Presheaf.IsSheaf (Scheme.fpqcTopology.over D.S) D.isomorphismFunctor
Stacks.Flatness.ModuleMapBaseChangeSituation.surjectivityFunctor_isSheaf_fpqc, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/FpqcSheaf.lean, line 85. The attribute's comment: “surj_fpqc”.
The surjectivity functor of a homomorphism of quasi-coherent modules satisfies the sheaf condition for the fpqc topology on schemes over the base.
theorem surjectivityFunctor_isSheaf_fpqc (D : ModuleMapBaseChangeSituation.{u}) :
Presheaf.IsSheaf (Scheme.fpqcTopology.over D.S) D.surjectivityFunctor
Stacks.Flatness.ModuleMapBaseChangeSituation.zeroFunctor_isSheaf_fpqc, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/FpqcSheaf.lean, line 94. The attribute's comment: “zero_fpqc”.
The zero functor of a homomorphism of quasi-coherent modules satisfies the sheaf condition for the fpqc topology on schemes over the base.
theorem zeroFunctor_isSheaf_fpqc (D : ModuleMapBaseChangeSituation.{u}) :
Presheaf.IsSheaf (Scheme.fpqcTopology.over D.S) D.zeroFunctor
Stacks.Flatness.ModuleMapBaseChangeSituation.injectivityFunctor_isSheaf_fpqc, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/FpqcSheaf.lean, line 103. The attribute's comment: “inj_fpqc”.
The injectivity functor of a homomorphism of quasi-coherent modules satisfies the sheaf condition for the fpqc topology on the category of schemes over the base with flat morphisms.
theorem injectivityFunctor_isSheaf_fpqc (D : ModuleMapBaseChangeSituation.{u}) :
Presheaf.IsSheaf
(Scheme.fpqcPrecoverage.comap
(wideSubcategoryInclusion (FlatMorphismOver D.S) ⋙ Over.forget D.S)).toGrothendieck
D.injectivityFunctor
Stacks.Flatness.ModuleMapBaseChangeSituation.isomorphismFunctor_preservesColimit_of_isAffine, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/IsomorphismLimit.lean, line 249. The attribute's comment: “iso_limit”.
Stacks Project, Tag 05MJ. The isomorphism functor of a homomorphism of quasi-coherent modules with source of finite type and target of finite presentation, along a quasi-compact morphism, preserves the filtered colimit attached to a cofiltered inverse system of affine schemes over the base.
theorem isomorphismFunctor_preservesColimit_of_isAffine (D : ModuleMapBaseChangeSituation.{u})
[QuasiCompact D.f] [D.F.IsFiniteType] [D.G.IsFinitePresentation] (I : Type u)
[Category.{u} I] [IsCofiltered I] (T : I ⥤ Over D.S) (hT : ∀ i, IsAffine (T.obj i).left) :
PreservesColimit T.op D.isomorphismFunctor
Stacks.Flatness.ModuleMapBaseChangeSituation.surjectivityFunctor_preservesColimit_of_isAffine, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/SurjectivityLimit.lean, line 101. The attribute's comment: “surj_limit”.
Stacks Project, Tag 05MJ. The surjectivity functor of a homomorphism of quasi-coherent modules with target of finite type, along a quasi-compact morphism, preserves the filtered colimit attached to a cofiltered inverse system of affine schemes over the base.
theorem surjectivityFunctor_preservesColimit_of_isAffine (D : ModuleMapBaseChangeSituation.{u})
[QuasiCompact D.f] [D.G.IsFiniteType] (I : Type u) [Category.{u} I] [IsCofiltered I]
(T : I ⥤ Over D.S) (hT : ∀ i, IsAffine (T.obj i).left) :
PreservesColimit T.op D.surjectivityFunctor
Stacks.Flatness.ModuleMapBaseChangeSituation.zeroFunctor_preservesColimit_of_isAffine, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctors/ZeroLimit.lean, line 340. The attribute's comment: “zero_limit”.
Stacks Project, Tag 05MJ. The zero functor of a homomorphism of quasi-coherent modules with source of finite type, along a quasi-compact morphism, preserves the filtered colimit attached to a cofiltered inverse system of affine schemes over the base.
theorem zeroFunctor_preservesColimit_of_isAffine (D : ModuleMapBaseChangeSituation.{u})
[QuasiCompact D.f] [D.F.IsFiniteType] (I : Type u) [Category.{u} I] [IsCofiltered I]
(T : I ⥤ Over D.S) (hT : ∀ i, IsAffine (T.obj i).left) :
PreservesColimit T.op D.zeroFunctor
Tag 05MK, a situation
Tag 05MK in the Stacks Project.
LocalAlgCat, a structure in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/HenselianFlattening.lean, line 103. The attribute's comment: “objects”.
Stacks Project, Tag 05MK. An object of the category
C: a localA-algebra whose structure homomorphism is a local homomorphism of local rings.
structure LocalAlgCat (A : Type u) [CommRing A] [IsLocalRing A]
LocalAlgCat.Hom, a structure in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/HenselianFlattening.lean, line 129. The attribute's comment: “morphisms”.
Stacks Project, Tag 05MK. A morphism of the category
C: a local homomorphism ofA-algebras.
structure Hom (R S : LocalAlgCat.{u, v} A)
An instance with no name in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/HenselianFlattening.lean, line 138. The attribute's comment: “the category”.
Stacks Project, Tag 05MK. Local
A-algebras and localA-algebra homomorphisms form a category.
instance : Category (LocalAlgCat.{u, v} A)
Module.FlatAtPointSituation, a structure in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/HenselianFlattening.lean, line 171. The attribute's comment: “the situation”.
Stacks Project, Tag 05MK. The standing data of the local flattening problem: a local homomorphism
A → Bof local rings and aB-moduleM.
structure FlatAtPointSituation
Module.FlatAtPointSituation.ConditionOn.of_isLocalHom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/HenselianFlattening.lean, line 235. The attribute's comment: “base-change stability”.
Stacks Project, Tag 05MK. The flatness condition is preserved by a local homomorphism of local
A-algebras. The source and the target may live in different universes.
theorem ConditionOn.of_isLocalHom {S : FlatAtPointSituation.{u, v, w}} (R : Type x) (T : Type y)
[CommRing R] [IsLocalRing R] [Algebra S.A R] [CommRing T] [IsLocalRing T] [Algebra S.A T]
[Algebra R T] [IsScalarTower S.A R T] [IsLocalHom (algebraMap R T)] (h : S.ConditionOn R) :
S.ConditionOn T
Module.FlatAtPointSituation.condition_of_hom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/HenselianFlattening.lean, line 244. The attribute's comment: “base-change stability”.
Stacks Project, Tag 05MK. The flatness condition is preserved by a morphism of the category
Cof localA-algebras; this is what makesF_lfa functor.
theorem condition_of_hom (S : FlatAtPointSituation.{u, v, w}) {R T : LocalAlgCat.{u, x} S.A}
(f : R ⟶ T) (h : S.Condition R) : S.Condition T
Module.FlatAtPointSituation.flatAtPointFunctor, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/HenselianFlattening.lean, line 312. The attribute's comment: “the functor”.
Stacks Project, Tag 05MK. The functor
F_lfon the categoryCof localA-algebras: it takes the value a singleton where the flatness condition holds, and the empty set elsewhere. Functoriality iscondition_of_hom.
def flatAtPointFunctor (S : FlatAtPointSituation.{u, v, w}) :
LocalAlgCat.{u, x} S.A ⥤ Type
Tag 05ML, an equation
Tag 05ML in the Stacks Project.
Module.FlatAtPointSituation.ConditionOn, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/HenselianFlattening.lean, line 213.
Stacks Project, Tag 05ML. The flatness condition on a local
A-algebraR: the base change ofMis flat overRat every prime ofB ⊗[A] Rcontaining the extensions of the maximal ideals ofRand ofB. This is the condition of Stacks Tag 05LQ for the idealsI' = m_RandJ = m_B.
def ConditionOn (S : FlatAtPointSituation.{u, v, w}) (R : Type x) [CommRing R] [IsLocalRing R]
[Algebra S.A R] : Prop
Module.FlatAtPointSituation.Condition, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/HenselianFlattening.lean, line 221.
Stacks Project, Tag 05ML. The flatness condition read on an object of the category
Cof Stacks Tag 05MK.
abbrev Condition (S : FlatAtPointSituation.{u, v, w}) (R : LocalAlgCat.{u, x} S.A) : Prop
Tag 05MN, a lemma
Tag 05MN in the Stacks Project.
Module.FlatAtPointSituation.condition_iff_of_flat, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/FlatteningFlatDescent.lean, line 110. The attribute's comment: “flat_base_change”.
Stacks Project, Tag 05MN part (1), read on a morphism of the category
Cof localA-algebras of Stacks Tag 05MK: iff : R ⟶ Tis flat thenF_lf(R) = F_lf(T), both being determined by the flatness condition of Stacks Tag 05ML.
theorem condition_iff_of_flat (S : FlatAtPointSituation.{u, v, w}) {R T : LocalAlgCat.{u, x} S.A}
(f : R ⟶ T) (hf : f.hom.toRingHom.Flat) :
S.Condition R ↔ S.Condition T
Module.FlatAtPointSituation.flatAtPointFunctor_obj_eq_of_flat, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/FlatteningFlatDescent.lean, line 125. The attribute's comment: “flat_base_change”.
Stacks Project, Tag 05MN part (1), in the shape the source states it: the functor
F_lfof Stacks Tag 05MM takes the same value at the two ends of a flat morphism of the categoryC.The values are
PLiftof the flatness condition of Stacks Tag 05ML, so this isModule.FlatAtPointSituation.condition_iff_of_flatread throughpropext.
theorem flatAtPointFunctor_obj_eq_of_flat (S : FlatAtPointSituation.{u, v, w})
{R T : LocalAlgCat.{u, x} S.A} (f : R ⟶ T) (hf : f.hom.toRingHom.Flat) :
S.flatAtPointFunctor.obj R = S.flatAtPointFunctor.obj T
Module.FlatAtPointSituation.condition_colimit_iff, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/FlatteningLimitPreserving.lean, line 324. The attribute's comment: “limit_preserving”.
Stacks Project, Tag 05MN part (2), as an equivalence: the flatness condition of Stacks Tag 05ML holds over the apex of a filtered colimit of local
A-algebras exactly when it holds at one of the stages. The easy direction is base-change stability,Module.FlatAtPointSituation.condition_of_hom.Beyond the hypotheses of the source nothing is assumed about the colimit: that it is computed on the underlying sets, which is what Stacks Tag 05LT needs, is proved in
Stacks.CommAlgCat.forget_preservesFilteredColimitsOfSize. The twoUnivLEhypotheses are the size condition that result carries, namely that the index category be no larger than the algebras; a directed system in the sense of the source is indexed by a set and satisfies it.
theorem condition_colimit_iff
(hS : (algebraMap S.A S.B).EssentiallyOfFinitePresentation)
[Module.FinitePresentation S.B S.M]
(hτ : IsColimit (toCommAlgCat.mapCocone τ)) :
S.Condition τ.pt ↔ ∃ lam, S.Condition (F.obj lam)
Module.FlatAtPointSituation.isColimitMapCoconeFlatAtPointFunctor, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/FlatteningLimitPreserving.lean, line 349. The attribute's comment: “limit_preserving”.
Stacks Project, Tag 05MN part (2). If
A → Bis essentially of finite presentation andMis aB-module of finite presentation, then the functorF_lfof Stacks Tag 05MM is limit preserving: for a directed system{A_i}of objects of the categoryCof Stacks Tag 05MK,F_lf(colim A_i) = colim F_lf(A_i).The colimit of the system is read off the underlying system of
A-algebras; it does lie inC, byLocalAlgCat.isLocalRing_pt_of_isColimitandLocalAlgCat.isLocalHom_ι_of_isColimit. The statement is that the induced cocone of sets is a colimit, which byCategoryTheory.Limits.Types.FilteredColimit.isColimitOfamounts to the descent statementModule.FlatAtPointSituation.exists_condition_of_isColimit, every value ofF_lfhaving at most one element.That the colimit of
A-algebras is computed on the underlying sets is not assumed but proved, inStacks.CommAlgCat.forget_preservesFilteredColimitsOfSize; the twoUnivLEhypotheses are the size condition it carries, that the index category of the directed system be no larger than the algebras.
noncomputable def isColimitMapCoconeFlatAtPointFunctor
(hS : (algebraMap S.A S.B).EssentiallyOfFinitePresentation)
[Module.FinitePresentation S.B S.M]
(hτ : IsColimit (toCommAlgCat.mapCocone τ)) :
IsColimit (S.flatAtPointFunctor.mapCocone τ)
Tag 05P4, a lemma
Tag 05P4 in the Stacks Project.
Module.FlatAtPointSituation.flatAtPointFunctor_eq_of_finite, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FlatAtPointFinite.lean, line 258.
Stacks Project, Tag 05P4. Replacing the local algebra of a flat-at-a-point situation by a finite local extension, and its module by an isomorphic module over that extension, does not change the flat-at-a-point functor.
public theorem flatAtPointFunctor_eq_of_finite (S : FlatAtPointSituation.{u, v, w})
{C : Type x} [CommRing C] [IsLocalRing C] [Algebra S.A C] [IsLocalHom (algebraMap S.A C)]
{N : Type y} [AddCommGroup N] [Module C N] (f : S.B →ₐ[S.A] C)
(hf : IsLocalHom f.toRingHom) (hfinite : f.toRingHom.Finite)
(e : letI : Module S.B N := Module.compHom N f.toRingHom
S.M ≃ₗ[S.B] N) :
flatAtPointFunctor.{u, v, w, z} S =
flatAtPointFunctor.{u, x, y, z} ({ A := S.A, B := C, M := N } :
FlatAtPointSituation.{u, x, y})
Tag 05P5, a lemma
Tag 05P5 in the Stacks Project.
Module.FlatAtPointSituation.flatAtPointFunctor_baseChange, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FlatAtPointFlatBaseChange.lean, line 438.
Stacks Project, Tag 05P5. A flat local extension of the local algebra, with the module extended along it, does not change the flat-at-a-point functor.
public theorem flatAtPointFunctor_baseChange (S : FlatAtPointSituation.{u, v, w}) (C : Type z)
[CommRing C] [IsLocalRing C] [Algebra S.B C] [IsLocalHom (algebraMap S.B C)]
[Module.Flat S.B C] :
(S.flatAtPointFunctor : LocalAlgCat.{u, x} S.A ⥤ Type) =
(baseChange S C).flatAtPointFunctor
Tag 05MP, a situation
Tag 05MP in the Stacks Project.
AlgebraicGeometry.FreeAtGenericPointsSituation, a structure in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/FreeAtGenericPoints.lean, line 76. The attribute's comment: “the situation”.
The standing situation of a smooth morphism with geometrically irreducible fibres and a finite type quasi-coherent module on its source.
structure FreeAtGenericPointsSituation
AlgebraicGeometry.FreeAtGenericPointsSituation.Condition, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/FreeAtGenericPoints.lean, line 113. The attribute's comment: “the fibrewise condition”.
The module pulled back to
X ×_S Tis free of rankpnear the generic point of every fibre overT.
abbrev Condition (D : FreeAtGenericPointsSituation.{u}) (p : ℕ)
(T : Over D.S) : Prop
AlgebraicGeometry.FreeAtGenericPointsSituation.condition_of_hom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/FreeAtGenericPoints.lean, line 195. The attribute's comment: “base-change stability”.
The fibrewise generic-point condition is preserved by a further base change.
theorem condition_of_hom (D : FreeAtGenericPointsSituation.{u}) (p : ℕ)
{T T' : Over D.S} (g : T' ⟶ T) (h : D.Condition p T) :
D.Condition p T'
AlgebraicGeometry.FreeAtGenericPointsSituation.freeAtGenericPointsFunctor, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/FreeAtGenericPoints.lean, line 259. The attribute's comment: “the functor”.
The subterminal set-valued functor recording whether the pulled-back module is free of rank
pnear the generic point of every fibre.
noncomputable def freeAtGenericPointsFunctor
(D : FreeAtGenericPointsSituation.{u}) (p : ℕ) :
(Over D.S)ᵒᵖ ⥤ Type u
Tag 05MS, a lemma
Tag 05MS in the Stacks Project.
AlgebraicGeometry.FreeAtGenericPointsSituation.freeAtGenericPointsFunctor_limitPreserving_small, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/FreeAtGenericPointsDescent.lean, line 248. The attribute's comment: “part (2), the generic-rank functor is limit preserving”.
Stacks Project, Tag 05MS, part (2). The generic-rank functor of a module of finite presentation is limit preserving: over a cofiltered limit of affine schemes over the base the functor has a section as soon as one stage of the system has one.
The approximation statement which
freeAtGenericPointsFunctor_limitPreserving_small_iffidentifies with this clause isAlgebraicGeometry.FreeAtGenericPointsSituation.exists_condition_of_isLimit, so nothing is assumed here.
theorem freeAtGenericPointsFunctor_limitPreserving_small [D.F.IsFinitePresentation] :
LimitPreserving.{u, u, u, u, u + 1, u} (Over.forget D.S)
(D.freeAtGenericPointsFunctor p)
AlgebraicGeometry.FreeAtGenericPointsSituation.freeAtGenericPointsFunctor_isSheaf_fpqc, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/FreeAtGenericPointsFpqcSheaf.lean, line 314. The attribute's comment: “part (1), the generic-rank functor is an fpqc sheaf”.
Stacks Project, Tag 05MS, part (1). The generic-rank functor satisfies the sheaf property for the fpqc topology.
By
freeAtGenericPointsFunctor_isSheaf_fpqc_of_fpqcCoverthis is fpqc-locality of the generic-point condition, and the source proves that locality in two steps: descent along the covering gives a free stalk of rankpat the generic point of every fibre over the base (stalkFreeOfRank_of_fpqcCover), andAlgebraicGeometry.freeAtPointOfRank_of_forall_stalkFreeOfRankspreads those free stalks out to neighbourhoods.
theorem freeAtGenericPointsFunctor_isSheaf_fpqc (D : FreeAtGenericPointsSituation.{u}) (p : ℕ) :
Presheaf.IsSheaf (Scheme.fpqcTopology.over D.S) (D.freeAtGenericPointsFunctor p)
Tag 0CWF, a lemma
Tag 0CWF in the Stacks Project.
AlgebraicGeometry.topologicalKrullDim_not_isFlatOverAt_fiber_lt_iff, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/NonFlatLocusFibreDimension.lean, line 288. The attribute's comment: “the dimension criterion”.
Stacks Project, Tag 0CWF. Let
f : X ⟶ Sbe locally of finite type, letFbe a quasi-coherent𝒪_X-module of finite type and letnbe a natural number. The closed subset of each fibre whereFis not flat overShas dimension less thannif and only iftrdeg_{κ(f x)} κ(x) < nat every pointxwhereFis not flat overS.
theorem topologicalKrullDim_not_isFlatOverAt_fiber_lt_iff {X S : Scheme.{u}} (f : X ⟶ S)
[LocallyOfFiniteType f] (F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType] (n : ℕ) :
(∀ s : S, topologicalKrullDim
↥{y : f.fiber s | ¬ IsFlatOverAt f.toLRSHom.toShHom F (f.fiberι s y)} <
(n : WithBot ℕ∞)) ↔
∀ x : X, ¬ IsFlatOverAt f.toLRSHom.toShHom F x →
letI : Algebra (S.residueField (f x)) (X.residueField x) :=
(f.residueFieldMap x).hom.toAlgebra
(Cardinal.toENat (Algebra.trdeg (S.residueField (f x)) (X.residueField x)) :
WithBot ℕ∞) < (n : WithBot ℕ∞)
AlgebraicGeometry.topologicalKrullDim_not_isFlatOverAt_fiber_lt_of_isPullback, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/NonFlatLocusFibreDimension.lean, line 307. The attribute's comment: “stability under base change”.
Stacks Project, Tag 0CWF. The dimension criterion is stable under base change: if the non-flat locus has dimension less than
nin every fibre off, then the same holds for the pullback ofFalong any base change off.
theorem topologicalKrullDim_not_isFlatOverAt_fiber_lt_of_isPullback {X S S' X' : Scheme.{u}}
{f : X ⟶ S} {g : S' ⟶ S} {g' : X' ⟶ X} {f' : X' ⟶ S'} (hsq : IsPullback g' f' f g)
[LocallyOfFiniteType f] (F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType] (n : ℕ)
(hF : ∀ s : S, topologicalKrullDim
↥{y : f.fiber s | ¬ IsFlatOverAt f.toLRSHom.toShHom F (f.fiberι s y)} <
(n : WithBot ℕ∞)) (s' : S') :
topologicalKrullDim
↥{y : f'.fiber s' | ¬ IsFlatOverAt f'.toLRSHom.toShHom
((Scheme.Modules.pullback g').obj F) (f'.fiberι s' y)} < (n : WithBot ℕ∞)
Tag 0CWG, a definition
Tag 0CWG in the Stacks Project.
AlgebraicGeometry.IsFlatOverInDimensionsGE, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FlatInDimensionsGE.lean, line 83.
Stacks Project, Tag 0CWG. Let
f : X ⟶ Sbe locally of finite type and letFbe a quasi-coherent𝒪_X-module of finite type. ThenFis flat overSin dimensions≥ nif for every pointsofSthe closed subset of the fibreX_sof points at whichFis not flat overShas dimension less thann.This is the first of the two equivalent conditions of Stacks 0CWF; the second one is
AlgebraicGeometry.isFlatOverInDimensionsGE_iff_forall_toENat_trdeg_lt.
def IsFlatOverInDimensionsGE {X S : Scheme.{u}} (f : X ⟶ S) [LocallyOfFiniteType f]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType] (n : ℕ) : Prop
Tag 05MT, a situation
Tag 05MT in the Stacks Project.
AlgebraicGeometry.FlatDimensionSituation, a structure in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FlatDimensionFunctor.lean, line 83. The attribute's comment: “the situation”.
A morphism of schemes
f : X ⟶ Slocally of finite type together with a quasi-coherent moduleFof finite type onXand a boundnon fibre dimensions.
public structure FlatDimensionSituation
AlgebraicGeometry.FlatDimensionSituation.baseChangeMap, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FlatDimensionFunctor.lean, line 107. The attribute's comment: “the base-changed morphism”.
The base-changed morphism
X_T = X ×_S T ⟶ T.
public noncomputable abbrev baseChangeMap (D : FlatDimensionSituation.{u}) (T : Over D.S) :
pullback D.f T.hom ⟶ T.left
AlgebraicGeometry.FlatDimensionSituation.baseChangeModule, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FlatDimensionFunctor.lean, line 114. The attribute's comment: “the base-changed module”.
The base change
F_Tof the module, i.e. its pullback along the projectionX_T = X ×_S T ⟶ X.
public noncomputable abbrev baseChangeModule (D : FlatDimensionSituation.{u}) (T : Over D.S) :
(pullback D.f T.hom).Modules
AlgebraicGeometry.FlatDimensionSituation.baseChangeMap_locallyOfFiniteType, an instance in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FlatDimensionFunctor.lean, line 120. The attribute's comment: “X_T → T is of finite type”.
The base-changed morphism
X_T ⟶ Tis again locally of finite type.
public instance baseChangeMap_locallyOfFiniteType (D : FlatDimensionSituation.{u})
(T : Over D.S) : LocallyOfFiniteType (D.baseChangeMap T)
AlgebraicGeometry.FlatDimensionSituation.baseChangeModule_isFiniteType, an instance in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FlatDimensionFunctor.lean, line 127. The attribute's comment: “F_T is of finite type”.
The base-changed module
F_Tis again of finite type.
public noncomputable instance baseChangeModule_isFiniteType (D : FlatDimensionSituation.{u})
(T : Over D.S) : (D.baseChangeModule T).IsFiniteType
AlgebraicGeometry.FlatDimensionSituation.IsFlatInDimensionsGEAfterBaseChange, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FlatDimensionFunctor.lean, line 139. The attribute's comment: “the condition tested by the functor”.
The base-changed module
F_Tis flat overTin dimensions≥ n.
public noncomputable abbrev IsFlatInDimensionsGEAfterBaseChange
(D : FlatDimensionSituation.{u}) (T : Over D.S) : Prop
AlgebraicGeometry.FlatDimensionSituation.isFlatInDimensionsGEAfterBaseChange_of_hom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FlatDimensionFunctor.lean, line 156. The attribute's comment: “base-change stability of the condition”.
Flatness of the base-changed module in dimensions
≥ nis inherited along a morphismT' ⟶ Tof schemes overS.
public theorem isFlatInDimensionsGEAfterBaseChange_of_hom (D : FlatDimensionSituation.{u})
{T T' : Over D.S} (g : T' ⟶ T) (h : D.IsFlatInDimensionsGEAfterBaseChange T) :
D.IsFlatInDimensionsGEAfterBaseChange T'
AlgebraicGeometry.FlatDimensionSituation.flatDimensionFunctor, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FlatDimensionFunctor.lean, line 166. The attribute's comment: “the functor F_n”.
The functor
F_n : (Sch/S)ᵒᵖ ⥤ Setssending a schemeToverSto a singleton ifF_Tis flat overTin dimensions≥ n, and to the empty set otherwise.
public noncomputable def flatDimensionFunctor (D : FlatDimensionSituation.{u}) :
(Over D.S)ᵒᵖ ⥤ Type
Tag 05MV, a lemma
Tag 05MV in the Stacks Project.
AlgebraicGeometry.FlatDimensionSituation.flatDimensionFunctor_isSheaf_fpqc_and_limitPreserving, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FlatDimensionSheafAndLimitPreserving.lean, line 63. The attribute's comment: “parts (1) and (2)”.
Stacks Project, Tag 05MV. In Situation 05MT:
- the functor
F_nsatisfies the sheaf property for the fpqc topology; and- if
fis quasi-compact and locally of finite presentation andFis of finite presentation, then the functorF_nis limit preserving, i.e. it carries a cofiltered inverse limit of affine schemes overSto a filtered colimit of sets.The three finiteness assumptions of (2) are hypotheses of (2) only: (1) holds in the ambient situation alone.
public theorem flatDimensionFunctor_isSheaf_fpqc_and_limitPreserving
(D : FlatDimensionSituation.{max u v w}) :
Presheaf.IsSheaf (Scheme.fpqcTopology.over D.S) D.flatDimensionFunctor ∧
(QuasiCompact D.f → LocallyOfFinitePresentation D.f → D.F.IsFinitePresentation →
LimitPreserving.{max u v w, 0, v, w, max u v w + 1, max u v w}
(Over.forget D.S) D.flatDimensionFunctor)
Tag 05MW, a situation
Tag 05MW in the Stacks Project.
AlgebraicGeometry.FlatnessSituation, a structure in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/Basic.lean, line 61. The attribute's comment: “the situation”.
A morphism of schemes together with a quasi-coherent module on its source.
public structure FlatnessSituation
AlgebraicGeometry.FlatnessSituation.baseChange, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/Basic.lean, line 78. The attribute's comment: “the base-changed scheme”.
The fibre product
X ×_S T.
public noncomputable abbrev baseChange (D : FlatnessSituation.{u})
(T : Over D.S) : Scheme.{u}
AlgebraicGeometry.FlatnessSituation.baseChangeModule, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/Basic.lean, line 84. The attribute's comment: “the base-changed module”.
The pullback of the module to
X ×_S T.
public noncomputable abbrev baseChangeModule (D : FlatnessSituation.{u})
(T : Over D.S) :
SheafOfModules.{u} (structureSheafRing (D.baseChange T).toRingedSpace)
AlgebraicGeometry.FlatnessSituation.IsFlatAfterBaseChange, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/Basic.lean, line 91. The attribute's comment: “the flatness condition”.
The base-changed module is flat over
T.
public abbrev IsFlatAfterBaseChange (D : FlatnessSituation.{u})
(T : Over D.S) : Prop
AlgebraicGeometry.FlatnessSituation.isFlatAfterBaseChange_of_hom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/Basic.lean, line 130. The attribute's comment: “base-change stability”.
Flatness of the pulled-back module persists under further base change.
public theorem isFlatAfterBaseChange_of_hom (D : FlatnessSituation.{u})
{T T' : Over D.S} (g : T' ⟶ T) (h : D.IsFlatAfterBaseChange T) :
D.IsFlatAfterBaseChange T'
AlgebraicGeometry.FlatnessSituation.flatFunctor, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/Basic.lean, line 137. The attribute's comment: “the functor”.
The subterminal functor recording flatness of the base-changed module.
public noncomputable def flatFunctor (D : FlatnessSituation.{u}) :
(Over D.S)ᵒᵖ ⥤ Type
Tag 05MY, a lemma
Tag 05MY in the Stacks Project.
AlgebraicGeometry.FlatnessSituation.flatFunctor_isSheaf_fpqc, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FpqcSheaf.lean, line 118. The attribute's comment: “flat_functor_fpqc_sheaf”.
Stacks Project, Tag 05MY. Part (1): the flatness functor of a quasi-coherent module satisfies the sheaf condition for the fpqc topology on schemes over the base.
public theorem flatFunctor_isSheaf_fpqc :
Presheaf.IsSheaf (Scheme.fpqcTopology.over D.S) D.flatFunctor
AlgebraicGeometry.FlatnessSituation.flatFunctor_limitPreserving, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/LimitPreserving.lean, line 288. The attribute's comment: “flat_functor_limit_preserving”.
Stacks Project, Tag 05MY. Part (2): for a quasi-compact morphism which is locally of finite presentation and a quasi-coherent module of finite presentation, the flatness functor is limit preserving: it carries a cofiltered inverse limit of affine schemes over the base to a filtered colimit of sets.
public theorem flatFunctor_limitPreserving (D : FlatnessSituation.{max u v w})
[QuasiCompact D.f] [LocallyOfFinitePresentation D.f] [D.F.IsFinitePresentation] :
LimitPreserving.{max u v w, 0, v, w, max u v w + 1, max u v w}
(Over.forget D.S) D.flatFunctor
Sources
Section38.21 Flattening stratifications#
Section 38.21 of the Stacks Project, Tag 052F. 3 tags here are carried by 5 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 05P6, a definition
Tag 05P6 in the Stacks Project.
AlgebraicGeometry.FlatnessSituation.HasUniversalFlattening, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningStratification/Basic.lean, line 48. The attribute's comment: “the universal flattening of a module”.
A quasi-coherent module admits a universal flattening when its flatness functor is represented by a scheme over the base.
public noncomputable abbrev FlatnessSituation.HasUniversalFlattening
(D : FlatnessSituation.{u}) : Prop
AlgebraicGeometry.HasUniversalFlattening, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningStratification/Basic.lean, line 63. The attribute's comment: “the universal flattening of a scheme”.
A scheme over
Sadmits a universal flattening when its structure sheaf does.
public noncomputable abbrev HasUniversalFlattening {X S : Scheme.{u}} (f : X ⟶ S) : Prop
Tag 0FJ1, an example
Tag 0FJ1 in the Stacks Project.
AlgebraicGeometry.PlaneFlatteningExample.flatFunctor_unique_isEmpty_not_representable, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningStratification/PlaneExampleNotRepresentable.lean, line 254.
Stacks 0FJ1. Let
kbe a field,X = S = Spec k[x, y]and𝓕the quasi-coherent module associated tok[x, x⁻¹, y]/(y), with flatness functorF_flat, and writeF_flat(A) = F_flat(Spec A)for ak[x, y]-algebraA. ThenF_flat(k[x, y]/(x, y)^n)is a singleton for everyn, whileF_flat(k[[x, y]])is empty. HenceF_flatis not representable even by an algebraic space (on any big fppf site containingSpec k[[x, y]], the restriction ofF_flatis isomorphic to no algebraic space overS), and in particular it is not representable by a scheme overS: the universal flattening of𝓕does not exist.
public theorem flatFunctor_unique_isEmpty_not_representable (E : PlaneFlatteningExample.{u}) :
(∀ n : ℕ, Nonempty (Unique (E.flatValue (E.R ⧸ Ideal.span ({E.x, E.y} : Set E.R) ^ n)))) ∧
IsEmpty (E.flatValue E.formalPlane) ∧
(∀ (B : BigFppfSite.{u}) (hS : B.Contains E.X), B.Contains (Spec (.of E.formalPlane)) →
¬ ∃ X : (BigFppfOver B E.X hS)ᵒᵖ ⥤ Type u, IsAlgebraicSpace B E.X hS X ∧
Nonempty (X ≅ (Over.post B.inclusion).op ⋙
E.flatnessSituation.flatFunctor ⋙ uliftFunctor)) ∧
¬ E.flatnessSituation.flatFunctor.IsRepresentable
Tag 05P7, a definition
Tag 05P7 in the Stacks Project.
AlgebraicGeometry.FlatnessSituation.HasFlatteningStratification, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningStratification/Basic.lean, line 74. The attribute's comment: “the module”.
A quasi-coherent module has a flattening stratification if its flatness functor is represented by the monomorphism associated to a locally finite scheme-theoretic stratification of the base: closed subschemes
J i, indexed by a partial order, whose supports coverSand form a locally finite family, withJ i ⊔ J jthe infimum of theJ kfork ≤ iandk ≤ j, together with opensU iof the subschemesJ iwhose images are the supports ofJ iminus those of theJ jwithj < i, such that the representing object is isomorphic overSto the coproduct of theU iand its structure morphism is a monomorphism.
public def FlatnessSituation.HasFlatteningStratification (D : FlatnessSituation.{u}) : Prop
AlgebraicGeometry.HasFlatteningStratification, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningStratification/Basic.lean, line 91. The attribute's comment: “the scheme”.
A scheme over
Shas a flattening stratification when its structure sheaf does.
public abbrev HasFlatteningStratification {X S : Scheme.{u}} (f : X ⟶ S) : Prop
Sources
Section38.22 Flattening stratification over an Artinian ring#
Section 38.22 of the Stacks Project, Tag 05PA. 1 tag here is carried by 2 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 05PB, a lemma
Tag 05PB in the Stacks Project.
AlgebraicGeometry.FlatnessSituation.exists_closedUniversalFlattening_of_isArtinianRing, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningStratification/Artinian.lean, line 236. The attribute's comment: “the closed universal flattening”. References: SGA 6 XII (4.5), “special case”.
Stacks Project, Tag 05PB. A quasi-coherent module on a scheme over the spectrum of an Artinian ring admits a universal flattening, and the representing morphism is a closed immersion.
public theorem exists_closedUniversalFlattening_of_isArtinianRing {R : Type u} [CommRing R]
[IsArtinianRing R] (D : FlatnessSituation.{u}) (hS : D.S = Spec (.of R)) :
∃ W : Over D.S, IsClosedImmersion W.hom ∧ Nonempty (D.flatFunctor.RepresentableBy W)
AlgebraicGeometry.FlatnessSituation.hasFlatteningStratification_of_isArtinianRing, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningStratification/Artinian.lean, line 270. The attribute's comment: “the flattening stratification”. References: SGA 6 XII (4.5), “special case”.
Stacks Project, Tag 05PB. A quasi-coherent module on a scheme over the spectrum of an Artinian ring has a flattening stratification.
public theorem hasFlatteningStratification_of_isArtinianRing {R : Type u} [CommRing R]
[IsArtinianRing R] (D : FlatnessSituation.{u}) (hS : D.S = Spec (.of R)) :
D.HasFlatteningStratification
Sources
Section38.23 Flattening a map#
Section 38.23 of the Stacks Project, Tag 05PC. 4 tags here are carried by 9 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 05PD, a lemma
Tag 05PD in the Stacks Project.
AlgebraicGeometry.mono_pullbackPushforwardUnit_of_relativeAssassin_subset_range, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningInjective.lean, line 88. The attribute's comment: “injectivity”.
Stacks Project, Tag 05PD. Let
Sbe a scheme, letg : X' ⟶ Xbe a flat morphism of schemes overSwithXlocally of finite type overS, and letFbe a finite type quasi-coherent𝒪_X-module which is flat overS. IfAss_{X/S}(F) ⊆ g(X'), then the canonical mapF ⟶ g_* g^* Fis injective.
theorem mono_pullbackPushforwardUnit_of_relativeAssassin_subset_range
{X' X S : Scheme.{u}} (f : X ⟶ S) (g : X' ⟶ X)
[LocallyOfFiniteType f] [Flat g]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType]
(hF : IsFlatOver f.toLRSHom.toShHom F)
(hAss : Stacks.Divisors.relativeAssassin f F ⊆ Set.range g.base) :
Mono ((Scheme.Modules.pullbackPushforwardAdjunction g).unit.app F)
AlgebraicGeometry.mono_baseChange_pullbackPushforwardUnit_of_relativeAssassin_subset_range, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningInjective.lean, line 102. The attribute's comment: “after arbitrary base change”.
Stacks Project, Tag 05PD. The canonical map of the preceding statement remains injective after an arbitrary base change
h : T ⟶ S: the mapF_T ⟶ (g_T)_* (g_T)^* F_TonX ×_S Tis injective as well.
theorem mono_baseChange_pullbackPushforwardUnit_of_relativeAssassin_subset_range
{X' X S : Scheme.{u}} (f : X ⟶ S) (g : X' ⟶ X)
[LocallyOfFiniteType f] [Flat g]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType]
(hF : IsFlatOver f.toLRSHom.toShHom F)
(hAss : Stacks.Divisors.relativeAssassin f F ⊆ Set.range g.base) :
∀ (T : Scheme.{u}) (h : T ⟶ S),
Mono ((Scheme.Modules.pullbackPushforwardAdjunction (compBaseChangeMap f g h)).unit.app
((Scheme.Modules.pullback (pullback.fst f h)).obj F))
Tag 05PE, a lemma
Tag 05PE in the Stacks Project.
Module.exists_ideal_bijective_rTensor_iff_map_eq_bot, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/VanishingAfterBaseChange.lean, line 91.
Stacks Project, Tag 05PE. A surjection from a projective module has a flattening ideal: after every base change, the map is an isomorphism exactly when the image of this ideal vanishes.
theorem exists_ideal_bijective_rTensor_iff_map_eq_bot
(u : M →ₗ[A] N) (hu : Function.Surjective u) [Module.Projective A M] :
∃ I : Ideal A, ∀ (B : Type*) [CommRing B] [Algebra A B],
Function.Bijective (u.rTensor B) ↔ Ideal.map (algebraMap A B) I = ⊥
Tag 05PF, a theorem
Tag 05PF in the Stacks Project.
Stacks.Flatness.exists_closedImmersion_representableBy_isomorphismFunctor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/EtaleLocalRepresentability.lean, line 638. The attribute's comment: “representability by a closed immersion”.
Stacks Project, Tag 05PF, first assertion. Let
f : X ⟶ Sbe of finite presentation and letu : F ⟶ Gbe a surjection of quasi-coherent modules onXwithFof finite presentation, flat overSand pure relative toS. Then the locus whereubecomes an isomorphism after base change is represented by a closed immersion intoS.The source's devissage: purity reduces the question, étale locally on
S, to an affine situation whose module of sections is projective, where the locus is cut out by the flattening ideal of Tag 05PE; the étale base changes coverSin the fpqc topology and the functor is an fpqc sheaf, so the local closed subschemes glue.
theorem exists_closedImmersion_representableBy_isomorphismFunctor
(D : ModuleMapBaseChangeSituation.{u})
[LocallyOfFinitePresentation D.f] [QuasiCompact D.f] [QuasiSeparated D.f]
[D.F.IsFinitePresentation] [D.F.IsFiniteType] [Epi D.hom]
(hflat : IsFlatOver D.f.toLRSHom.toShHom D.F)
(hpure : AlgebraicGeometry.IsPureRelative D.f D.F) :
∃ W : Over D.S, IsClosedImmersion W.hom ∧
Nonempty (D.isomorphismFunctor.RepresentableBy W)
Stacks.Flatness.isomorphismFunctor_representableBy_closedImmersion_of_affineTests, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/IsoLocusAffineTests.lean, line 121. The attribute's comment: “representability by a closed immersion”.
Stacks Project, Tag 05PF. The isomorphism-after-base-change functor of a surjection from a finitely presented, flat and pure module is represented by a closed immersion into the base.
The representing closed subscheme is cut out by an ideal sheaf which it suffices to exhibit on affine schemes over the base, by
Stacks.Flatness.ModuleMapBaseChangeSituation.isFlatteningIdeal_of_isFlatteningIdealOnAffines; étale localization on the base reduces the construction to an affine situation whose module of sections is projective, where the ideal sheaf is the flattening ideal of Tag 05PE. That devissage isStacks.Flatness.exists_closedImmersion_representableBy_isomorphismFunctor.
theorem isomorphismFunctor_representableBy_closedImmersion_of_affineTests
(D : ModuleMapBaseChangeSituation.{u})
[LocallyOfFinitePresentation D.f] [QuasiCompact D.f] [QuasiSeparated D.f]
[D.F.IsFinitePresentation] [D.F.IsFiniteType] [Epi D.hom]
(hflat : IsFlatOver D.f.toLRSHom.toShHom D.F)
(hpure : IsPureRelative D.f D.F) :
∃ W : Over D.S, IsClosedImmersion W.hom ∧
Nonempty (D.isomorphismFunctor.RepresentableBy W)
Stacks.Flatness.finitePresentation_hom_of_representableBy_isomorphismFunctor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/IsoLocusAffineTests.lean, line 147. The attribute's comment: “finite presentation of the representing closed immersion”.
Stacks Project, Tag 05PF. A closed immersion
Z ⟶ Srepresenting the isomorphism-after-base-change functor is of finite presentation as soon as the target moduleGis of finite presentation.Local finite presentation is Tag 01ZC: by Tag 05MJ(4) the isomorphism functor turns a cofiltered inverse limit of affine schemes over the base into a filtered colimit, so the functor of points of
Zis limit preserving in the sense of Tag 05LX. Quasi-compactness holds because a closed immersion is an affine morphism, and quasi-separatedness because the functor is subterminal, so thatZ ⟶ Sis a monomorphism.The hypotheses are about the morphism
iat hand, and they are satisfiable: a closed immersion representing the functor exists under the source's own hypotheses, byStacks.Flatness.isomorphismFunctor_representableBy_closedImmersion_of_affineTests. Stating the assertion for an arbitrary representative rather than for that one is no weaker, since any two representatives of a functor are isomorphic over the base.
theorem finitePresentation_hom_of_representableBy_isomorphismFunctor
(D : ModuleMapBaseChangeSituation.{u}) [QuasiCompact D.f]
[D.F.IsFiniteType] [D.G.IsFinitePresentation]
{Z : Scheme.{u}} (i : Z ⟶ D.S) [IsClosedImmersion i]
(e : D.isomorphismFunctor.RepresentableBy (Over.mk i)) :
FinitePresentation i
Stacks.Flatness.isomorphismFunctor_representableBy_closedImmersion_of_projective_sections, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/IsoLocusProjectiveSections.lean, line 419. The attribute's comment: “representability by a closed immersion, for an affine situation whose source module has projective global sections: this is the terminal case of the source's devissage, Step 4 of its proof together with Tag 05PE. The étale localization of Steps 1-3, which reduces the general case to this one, is Stacks.Flatness.exists_closedImmersion_representableBy_isomorphismFunctor”. References: SGA 3 VIB (6.2.3), “(i), special case”; SGA 3 VIII (6.4), “special case”.
Stacks Project, Tag 05PF. The isomorphism-after-base-change functor of a surjection
u : F ⟶ Gof quasi-coherent modules on an affine schemeXover an affine baseS, whose source has projective module of global sections overΓ(S, 𝒪_S), is represented by a closed immersionZ ⟶ S.This is the situation in which the devissage of the source's proof terminates: the representing closed subscheme is cut out by the ideal of
Γ(S, 𝒪_S)supplied by Tag 05PE, which after every base change vanishes exactly whenubecomes an isomorphism. The hypotheses of the source — thatfandFbe of finite presentation and thatFbe flat and pure relative toS— are what the source's étale localization uses to reduce the general case to this one; they are not needed once the situation is affine with projective sections, and are therefore absent here.
theorem isomorphismFunctor_representableBy_closedImmersion_of_projective_sections
(D : ModuleMapBaseChangeSituation.{u}) [IsAffine D.X] [IsAffine D.S] [Epi D.hom]
(hproj : letI : Module Γ(D.S, ⊤) Γ(D.F, ⊤) := Module.compHom Γ(D.F, ⊤) D.f.appTop.hom
Module.Projective Γ(D.S, ⊤) Γ(D.F, ⊤)) :
∃ W : Over D.S, IsClosedImmersion W.hom ∧
Nonempty (D.isomorphismFunctor.RepresentableBy W)
Tag 07AI, a lemma
Tag 07AI in the Stacks Project.
Stacks.Flatness.weilRestriction_representableBy_closedImmersion_of_affineTests, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/WeilRestriction.lean, line 434. The attribute's comment: “representability by a closed immersion”.
Stacks Project, Tag 07AI. The Weil restriction
f_* Yof a closed subschemeYofXalong a morphismf : X ⟶ Swhich is of finite presentation, flat and pure is represented by a closed immersionZ ⟶ S.By the equivalence
Stacks.Flatness.WeilRestriction.isIsomorphismAfterBaseChange_iff_isIso_closedSubschemeBaseChangethe functor is the isomorphism functor of the surjectionu : 𝒪_X ⟶ 𝒪_X/Icutting outY, whose hypotheses in Tag 05PF are exactly the ones assumed here:𝒪_Xis of finite type and of finite presentation over itself, it is flat overSbecausefis flat, and it is pure relative toSbecauseXis.
theorem weilRestriction_representableBy_closedImmersion_of_affineTests
(i : Y ⟶ X) (f : X ⟶ S) [IsClosedImmersion i]
[LocallyOfFinitePresentation f] [QuasiCompact f] [QuasiSeparated f] [Flat f]
(hpure : AlgebraicGeometry.IsSchemePureRelative f) :
∃ W : Over S, IsClosedImmersion W.hom ∧
Nonempty ((weilRestrictionFunctor i f).RepresentableBy W)
Stacks.Flatness.finitePresentation_hom_of_representableBy_weilRestrictionFunctor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/WeilRestriction.lean, line 469. The attribute's comment: “finite presentation of the representing closed immersion”. References: SGA 3 VIB (6.2.3), “(ii)”; SGA 3 VIB (6.5.2), “special case”; SGA 3 XI (6.8), “special case”.
Stacks Project, Tag 07AI. If the closed subscheme
Yis of finite presentation overS, every closed immersion representing the Weil restrictionf_* Yis of finite presentation.The quotient
𝒪_X/Iis then of finite presentation, by Tag 01TV andStacks.Flatness.WeilRestriction.isFinitePresentation_pushforwardUnit, which is the hypothesis Tag 05PF's second assertion needs; the assertion itself isStacks.Flatness.finitePresentation_hom_of_representableBy_isomorphismFunctor, and needs no flattening ideal. Unlike the first assertion this one constructs no representative: it applies to any representing closed immersion, and such a one exists by the first assertion.
theorem finitePresentation_hom_of_representableBy_weilRestrictionFunctor
(i : Y ⟶ X) (f : X ⟶ S) [IsClosedImmersion i]
[LocallyOfFinitePresentation f] [QuasiCompact f] [QuasiSeparated f]
(hY : AlgebraicGeometry.FinitePresentation (i ≫ f))
{Z : Scheme.{u}} (p : Z ⟶ S) [AlgebraicGeometry.IsClosedImmersion p]
(e : (weilRestrictionFunctor i f).RepresentableBy (Over.mk p)) :
AlgebraicGeometry.FinitePresentation p
Sources
Section38.24 Flattening in the local case#
Section 38.24 of the Stacks Project, Tag 05MZ. 4 tags here are carried by 6 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 05PG, a theorem
Tag 05PG in the Stacks Project.
Module.FlatAtPointSituation.exists_ideal_condition_iff_map_eq_bot_of_henselian, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/HenselianFlatteningTheorem.lean, line 88.
Stacks Project, Tag 05PG. Let
A → Bbe a local homomorphism of local rings withAhenselian andBessentially of finite type overA, and letMbe a finiteB-module. There is an idealI ⊆ Asuch thatA ⧸ Icorepresents the functorF_lfof Stacks Tag 05MK: for every localA-algebraA'with local structure map, the base change ofMis flat overA'at every prime ofB ⊗_A A'containing the extensions of the maximal ideals ofA'and ofBexactly whenIdies inA'. IfBis essentially of finite presentation overAandMis of finite presentation overB, thenIis finitely generated.
theorem exists_ideal_condition_iff_map_eq_bot_of_henselian
(S : FlatAtPointSituation.{u, v, w}) [HenselianLocalRing S.A]
[Algebra.EssFiniteType S.A S.B] [Module.Finite S.B S.M] :
∃ I : Ideal S.A,
(∀ R : LocalAlgCat.{u, x} S.A, S.Condition R ↔ Ideal.map (algebraMap S.A R) I = ⊥) ∧
((algebraMap S.A S.B).EssentiallyOfFinitePresentation →
Module.FinitePresentation S.B S.M → I.FG)
Tag 05PH, a remark
Tag 05PH in the Stacks Project.
AlgebraicGeometry.exists_closedSubscheme_flatOverAt_iff_factorStalk, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/LocalFlatteningSubscheme.lean, line 232. The attribute's comment: “the local flattening subscheme”.
Stacks Project, Tag 05PH. A closed subscheme detects flatness of the pulled-back module at every point of the distinguished fibre lying above
x.
theorem exists_closedSubscheme_flatOverAt_iff_factorStalk
{X S : Scheme.{u}} (f : X ⟶ S) [LocallyOfFiniteType f]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType]
(x : X) (s : S) (hxs : f x = s)
[HenselianLocalRing (S.presheaf.stalk s)]
[IsIso (S.fromSpecStalk s)] :
∃ I : S.IdealSheafData,
∀ {T : Scheme.{u}} (g : T ⟶ S) (t : T) (_ht : g t = s),
(∀ y : pullback (C := Scheme.{u}) f g,
(pullback.snd f g y = t) →
(pullback.fst f g y = x) →
AlgebraicGeometry.IsFlatOverAt
(pullback.snd f g).toLRSHom.toShHom
((Scheme.Modules.pullback (pullback.fst f g)).obj F) y) ↔
∃ h : Spec (T.presheaf.stalk t) ⟶ I.subscheme,
h ≫ I.subschemeι = T.fromSpecStalk t ≫ g
AlgebraicGeometry.exists_finitePresentation_closedSubscheme_flatOverAt_iff_factorStalk, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/LocalFlatteningSubscheme.lean, line 351. The attribute's comment: “finite-presentation refinement”.
Stacks Project, Tag 05PH. Under pointwise finite-presentation hypotheses, the local flattening subscheme can be finitely presented.
theorem exists_finitePresentation_closedSubscheme_flatOverAt_iff_factorStalk
{X S : Scheme.{u}} (f : X ⟶ S) [LocallyOfFiniteType f]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType]
(x : X) (s : S) (hxs : f x = s)
[HenselianLocalRing (S.presheaf.stalk s)]
[IsIso (S.fromSpecStalk s)]
(hfp : FinitePresentationAt f x)
(hFfp :
letI : Module (X.presheaf.stalk x)
(TopCat.Presheaf.stalk (C := Ab.{u}) F.val.presheaf x) :=
PresheafOfModules.instModuleCarrierStalkCommRingCatCarrierAbPresheafOpensCarrier
(R := X.presheaf) F.val x
Module.FinitePresentation (X.presheaf.stalk x)
(TopCat.Presheaf.stalk (C := Ab.{u}) F.val.presheaf x)) :
∃ I : S.IdealSheafData,
FinitePresentation I.subschemeι ∧
∀ {T : Scheme.{u}} (g : T ⟶ S) (t : T) (_ht : g t = s),
(∀ y : pullback (C := Scheme.{u}) f g,
(pullback.snd f g y = t) →
(pullback.fst f g y = x) →
AlgebraicGeometry.IsFlatOverAt
(pullback.snd f g).toLRSHom.toShHom
((Scheme.Modules.pullback (pullback.fst f g)).obj F) y) ↔
∃ h : Spec (T.presheaf.stalk t) ⟶ I.subscheme,
h ≫ I.subschemeι = T.fromSpecStalk t ≫ g
Tag 05PI, a lemma
Tag 05PI in the Stacks Project.
AlgebraicGeometry.exists_finitePresentation_closedSubscheme_flatOverAt_iff_factors, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/ClosedFibreFlatteningFinitePresentation.lean, line 154. The attribute's comment: “finite-presentation refinement”.
Stacks Project, Tag 05PI. When the morphism and the module are in addition locally of finite presentation and the chosen subset of the closed fibre is closed and quasi-compact, the closed subscheme of the henselian local base detecting flatness along that subset can be chosen of finite presentation.
theorem exists_finitePresentation_closedSubscheme_flatOverAt_iff_factors
(A : Type u) [CommRing A] [HenselianLocalRing A]
{X : Scheme.{u}} (f : X ⟶ Spec (.of A)) [LocallyOfFiniteType f]
[LocallyOfFinitePresentation f]
(F : X.Modules) [F.IsFiniteType] [F.IsQuasicoherent]
[F.IsFinitePresentation]
(E : Set (f.fiber (IsLocalRing.closedPoint A)))
(_ : IsClosed E) (hEcompact : IsCompact E) :
∃ I : (Spec (.of A)).IdealSheafData,
FinitePresentation I.subschemeι ∧
∀ (T : Scheme.{u}) (g : T ⟶ Spec (.of A)) (t : T)
(_ : g t = IsLocalRing.closedPoint A),
(∀ y : (pullback f g : Scheme.{u}),
(pullback.snd f g) y = t →
(pullback.fst f g) y ∈
(f.fiberι (IsLocalRing.closedPoint A)) '' E →
AlgebraicGeometry.IsFlatOverAt (pullback.snd f g).toLRSHom.toShHom
((Scheme.Modules.pullback (pullback.fst f g)).obj F) y) ↔
∃ h : Spec (T.presheaf.stalk t) ⟶ I.subscheme,
h ≫ I.subschemeι = T.fromSpecStalk t ≫ g
AlgebraicGeometry.exists_closedSubscheme_flatOverAt_iff_factors, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/ClosedFibreFlatteningSubscheme.lean, line 70. The attribute's comment: “closed flattening subscheme”.
Stacks Project, Tag 05PI. Flatness of a finite type quasi-coherent module along an arbitrary subset
Eof the closed fibre, after an arbitrary pointed base change of a henselian local base, is detected by a closed subscheme of that base: the flatness condition for a pointed scheme(T, t)over(Spec A, closed point)holds exactly whenSpec O_{T,t} ⟶ Spec Afactors through the closed subscheme.
theorem exists_closedSubscheme_flatOverAt_iff_factors
(A : Type u) [CommRing A] [HenselianLocalRing A]
{X : Scheme.{u}} (f : X ⟶ Spec (.of A)) [LocallyOfFiniteType f]
(F : X.Modules) [F.IsFiniteType] [F.IsQuasicoherent]
(E : Set (f.fiber (IsLocalRing.closedPoint A))) :
∃ I : (Spec (.of A)).IdealSheafData,
∀ (T : Scheme.{u}) (g : T ⟶ Spec (.of A)) (t : T)
(_ : g t = IsLocalRing.closedPoint A),
(∀ y : (pullback f g : Scheme.{u}),
(pullback.snd f g) y = t →
(pullback.fst f g) y ∈
(f.fiberι (IsLocalRing.closedPoint A)) '' E →
AlgebraicGeometry.IsFlatOverAt (pullback.snd f g).toLRSHom.toShHom
((Scheme.Modules.pullback (pullback.fst f g)).obj F) y) ↔
∃ h : Spec (T.presheaf.stalk t) ⟶ I.subscheme,
h ≫ I.subschemeι = T.fromSpecStalk t ≫ g
Tag 052G, a remark
Tag 052G in the Stacks Project.
AlgebraicGeometry.exists_idealSheafData_forall_isFlatOverAt_iff_of_isAdicComplete, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/CompleteLocalFlattening.lean, line 311. The attribute's comment: “the closed subscheme of Lemma 05PI for E = X_s over a Noetherian complete local base, constructed from finite affine charts and Lemma 0528”.
Stacks Project, Tag 052G. Let
S = Spec Abe the spectrum of a Noetherian complete local ring with closed points, letf : X ⟶ Sbe of finite type and letFbe a quasi-coherent𝒪_X-module of finite type. Then the closed subschemeZ ⊆ Sof Lemma 05PI forE = X_sexists: for every morphism of pointed schemes(T, t) ⟶ (S, s), the pulled back moduleF_Tis flat overTat every point of the fibreX_tif and only ifSpec(𝒪_{T,t}) ⟶ Sfactors throughZ. As the remark explains, the proof is elementary: a finite affine open cover reduces toXaffine, whereZis cut out by the least flattening ideal of More on Algebra, Lemma 0526, whose universal property is Lemma 0528.
theorem exists_idealSheafData_forall_isFlatOverAt_iff_of_isAdicComplete
(A : Type u) [CommRing A] [IsLocalRing A] [IsNoetherianRing A]
[IsAdicComplete (IsLocalRing.maximalIdeal A) A]
{X : Scheme.{u}} (f : X ⟶ Spec (.of A)) [LocallyOfFiniteType f] [QuasiCompact f]
(F : X.Modules) [F.IsFiniteType] [F.IsQuasicoherent] :
∃ Z : (Spec (.of A)).IdealSheafData,
∀ (T : Scheme.{u}) (g : T ⟶ Spec (.of A)) (t : T),
g t = IsLocalRing.closedPoint A →
((∀ y : (pullback f g : Scheme.{u}), pullback.snd f g y = t →
IsFlatOverAt (pullback.snd f g).toLRSHom.toShHom
((Scheme.Modules.pullback (pullback.fst f g)).obj F) y) ↔
∃ h : Spec (T.presheaf.stalk t) ⟶ Z.subscheme,
h ≫ Z.subschemeι = T.fromSpecStalk t ≫ g)
Sources
Section38.25 Variants of a lemma#
Section 38.25 of the Stacks Project, Tag 0ASZ. 14 tags here are carried by 21 declarations of the repository (all in StacksFrontier) and 1 registered declaration, quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 0AT0, a situation
Tag 0AT0 in the Stacks Project.
AlgebraicGeometry.InjectiveModuloMaximalIdealSituation, a structure in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/MaximalIdealInjectivity.lean, line 60.
The standing data and hypotheses of Stacks Project, Tag 0AT0: a local homomorphism
A → Bof local rings which is essentially of finite type, a flatA-moduleM, a finiteB-moduleN, and anA-linear mapN → Mwhich is injective modulo the maximal ideal ofA.
structure InjectiveModuloMaximalIdealSituation
Tag 0AT1, a lemma
Tag 0AT1 in the Stacks Project.
AlgebraicGeometry.universallyInjective_of_isNoetherianRing, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/MaximalIdealInjectivity.lean, line 152. The attribute's comment: “universal injectivity”.
Stacks Project, Tag 0AT1. In Situation 0AT0 over a Noetherian base, the given map is universally injective over the base ring.
theorem universallyInjective_of_isNoetherianRing
(S : InjectiveModuloMaximalIdealSituation.{u₁, u₂, u₃, u₄})
[IsNoetherianRing S.A] : UniversallyInjectivePoly S.u
AlgebraicGeometry.flat_of_isNoetherianRing, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/MaximalIdealInjectivity.lean, line 161. The attribute's comment: “flatness”.
Stacks Project, Tag 0AT1. In Situation 0AT0 over a Noetherian base, the source module is flat over the base ring.
theorem flat_of_isNoetherianRing
(S : InjectiveModuloMaximalIdealSituation.{u₁, u₂, u₃, u₄})
[IsNoetherianRing S.A] : Module.Flat S.A S.N
Declarations registered for the tag:
Module.finitePresentation_of_finiteregistered withadd_to_stacksin StacksFrontier/AlgebraicGeometry/Flatness/Flattening/MaximalIdealInjectivity.lean, line 124 (StacksFrontier): “finite presentation”. References: EGA 0 (1.0.5), “more general”; EGA 0 (1.3.5), “more general”.
Tag 0AT2, a lemma
Tag 0AT2 in the Stacks Project.
AlgebraicGeometry.universallyInjective_of_localizedPolynomial_cases, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/PolynomialLocalizationReduction.lean, line 546. The attribute's comment: “universal injectivity”.
Universal injectivity in Situation 0AT0 reduces to the case of a localization of a finite polynomial algebra with finitely presented source module.
theorem universallyInjective_of_localizedPolynomial_cases
(S : InjectiveModuloMaximalIdealSituation.{u₁, u₂, u₃, u₄})
(h : ∀ (T : InjectiveModuloMaximalIdealSituation.{u₁, max u₁ u₂, u₃, max u₁ u₂ u₄}),
SameBaseLocalRing S T → PolynomialLocalizationPresentation T.A T.B →
Module.FinitePresentation T.B T.N →
InjectiveModuloMaximalIdealConclusion.{max u₁ u₅} T) :
UniversallyInjectivePoly.{_, u₅} S.u
AlgebraicGeometry.finitePresentation_of_localizedPolynomial_cases, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/PolynomialLocalizationReduction.lean, line 558. The attribute's comment: “finite presentation”.
Finite presentation in Situation 0AT0 reduces to the case of a localization of a finite polynomial algebra with finitely presented source module.
theorem finitePresentation_of_localizedPolynomial_cases
(S : InjectiveModuloMaximalIdealSituation.{u₁, u₂, u₃, u₄})
(h : ∀ (T : InjectiveModuloMaximalIdealSituation.{u₁, max u₁ u₂, u₃, max u₁ u₂ u₄}),
SameBaseLocalRing S T → PolynomialLocalizationPresentation T.A T.B →
Module.FinitePresentation T.B T.N →
InjectiveModuloMaximalIdealConclusion.{max u₁ u₅} T) :
Module.FinitePresentation S.B S.N
AlgebraicGeometry.flat_of_localizedPolynomial_cases, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/PolynomialLocalizationReduction.lean, line 570. The attribute's comment: “flatness”.
Flatness in Situation 0AT0 reduces to the case of a localization of a finite polynomial algebra with finitely presented source module.
theorem flat_of_localizedPolynomial_cases
(S : InjectiveModuloMaximalIdealSituation.{u₁, u₂, u₃, u₄})
(h : ∀ (T : InjectiveModuloMaximalIdealSituation.{u₁, max u₁ u₂, u₃, max u₁ u₂ u₄}),
SameBaseLocalRing S T → PolynomialLocalizationPresentation T.A T.B →
Module.FinitePresentation T.B T.N →
InjectiveModuloMaximalIdealConclusion.{max u₁ u₅} T) :
Module.Flat S.A S.N
Tag 0AT3, a lemma
Tag 0AT3 in the Stacks Project.
AlgebraicGeometry.injectiveModuloMaximalIdealConclusion_of_henselianLocalRing, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/HenselianBase.lean, line 273.
Stacks Project, Tag 0AT3. In Situation 0AT0 with
Ahenselian the lemma holds: ifA → Bis a local homomorphism of local rings essentially of finite type,Mis a flatA-module,Nis a finiteB-module andu : N → Mis anA-linear map whose reductionN/𝔪_A N → M/𝔪_A Mis injective, thenuisA-universally injective,Nis of finite presentation overB, andNis flat overA.
theorem injectiveModuloMaximalIdealConclusion_of_henselianLocalRing
(S : InjectiveModuloMaximalIdealSituation.{u₁, u₂, u₃, u₄}) [HenselianLocalRing S.A] :
InjectiveModuloMaximalIdealConclusion.{u₅} S
Tag 0AT4, a lemma
Tag 0AT4 in the Stacks Project.
AlgebraicGeometry.universallyInjective_and_finitePresentation_and_flat_of_linearMap, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/HenselizationReduction.lean, line 322. The attribute's comment: “N/𝔪_A N → M/𝔪_A M is the Submodule.mapQ of u for 𝔪_A • ⊤, and A-universal injectivity is UniversallyInjectivePoly of u with scalars restricted to A.”.
Stacks Project, Tag 0AT4. Let
A → Bbe a local homomorphism of local rings which is essentially of finite type and letu : N → Mbe aB-linear map. IfNis a finiteB-module,Mis flat overA, and the induced mapN/𝔪_A N → M/𝔪_A Mis injective, thenuis universally injective overA,Nis finitely presented overB, andNis flat overA.This is
HenselizationReduction.conclusions_of_henselian_casesapplied to the henselian case Stacks 0AT3,injectiveModuloMaximalIdealConclusion_of_henselianLocalRing.
theorem universallyInjective_and_finitePresentation_and_flat_of_linearMap
{A : Type u₁} {B : Type u₂} {M : Type u₃} {N : Type u₄}
[CommRing A] [IsLocalRing A] [CommRing B] [IsLocalRing B] [Algebra A B]
[IsLocalHom (algebraMap A B)] [Algebra.EssFiniteType A B]
[AddCommGroup M] [Module A M] [Module B M] [IsScalarTower A B M] [Module.Flat A M]
[AddCommGroup N] [Module A N] [Module B N] [IsScalarTower A B N] [Module.Finite B N]
(u : N →ₗ[B] M)
(hu : Function.Injective (Submodule.mapQ (maximalIdeal A • (⊤ : Submodule A N))
(maximalIdeal A • (⊤ : Submodule A M)) (u.restrictScalars A)
(Submodule.smul_top_le_comap_smul_top (maximalIdeal A) (u.restrictScalars A)))) :
UniversallyInjectivePoly.{_, w} (u.restrictScalars A) ∧ Module.FinitePresentation B N ∧
Module.Flat A N
Tag 0AT5, a lemma
Tag 0AT5 in the Stacks Project.
AlgebraicGeometry.flat_of_valuationRing, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/ValuationRingBase.lean, line 241. The attribute's comment: “the flatness assertion of the lemma' for Situation 0AT0: in Situation 0AT0 withAa valuation ring,Nis flat overA. Proved from 0AT0's own hypotheses together withValuationRing A`.”.
Stacks Project, Tag 0AT5 (flatness). In Situation 0AT0 with the base ring
Aa valuation ring, the finiteB-moduleNis flat overA.
theorem flat_of_valuationRing
(S : InjectiveModuloMaximalIdealSituation.{u₁, u₂, u₃, u₄})
[IsDomain S.A] [ValuationRing S.A] : Module.Flat S.A S.N
AlgebraicGeometry.finitePresentation_of_valuationRing, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/ValuationRingBase.lean, line 252. The attribute's comment: “the finite-presentation assertion of the lemma' for Situation 0AT0: in Situation 0AT0 withAa valuation ring,Nis of finite presentation overB. Proved from 0AT0's own hypotheses together withValuationRing A`.”.
Stacks Project, Tag 0AT5 (finite presentation). In Situation 0AT0 with the base ring
Aa valuation ring, the finiteB-moduleNis of finite presentation overB.
theorem finitePresentation_of_valuationRing
(S : InjectiveModuloMaximalIdealSituation.{u₁, u₂, u₃, u₄})
[IsDomain S.A] [ValuationRing S.A] : Module.FinitePresentation S.B S.N
Tag 0AT6, an equation
Tag 0AT6 in the Stacks Project.
AlgebraicGeometry.FinitelyPresentedLocalizedModuleSituation, a structure in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/LocalizedModuleSpreadout.lean, line 60.
Stacks Project, Tag 0AT6. The standing situation of a finitely presented algebra
BoverA, a multiplicative subsetS ⊆ B, and a finitely presented module over a localization ofBatS.
structure FinitelyPresentedLocalizedModuleSituation
Tag 0AT7, a lemma
Tag 0AT7 in the Stacks Project.
AlgebraicGeometry.exists_isContentIdeal_of_pureSpreadout, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/ContentIdeals.lean, line 125. The attribute's comment: “content_ideals”.
Stacks Project, Tag 0AT7. If a pure spreadout exists, every element of the localized module has a content ideal over the base ring.
theorem exists_isContentIdeal_of_pureSpreadout
(X : FinitelyPresentedLocalizedModuleSituation.{u₁, u₂, u₃, u₄})
(hspread : Nonempty (PureSpreadout.{u₁, u₂, u₃, u₄, u₁} X)) (x : X.N) :
∃ I : Ideal X.A, IsContentIdeal x I
AlgebraicGeometry.universallyInjective_of_injective_mod_maximalIdeal, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/UniversalInjectivity.lean, line 312. The attribute's comment: “universal_injectivity”.
Stacks Project, Tag 0AT7 (universal injectivity). A map into a flat module which is injective modulo each maximal ideal is universally injective, provided the distinguished localized module admits a pure spreadout.
theorem universallyInjective_of_injective_mod_maximalIdeal
(X : FinitelyPresentedLocalizedModuleSituation.{u₁, u₂, u₃, u₄})
(hspread : Nonempty (PureSpreadout.{u₁, u₂, u₃, u₄, u₄} X))
{M : Type u₄} [AddCommGroup M] [Module X.A M] [Module.Flat X.A M]
(u : X.N →ₗ[X.A] M)
(hu : ∀ (m : Ideal X.A) [m.IsMaximal],
Function.Injective
(Submodule.mapQ (m • (⊤ : Submodule X.A X.N))
(m • (⊤ : Submodule X.A M)) u
(Submodule.smul_top_le_comap_smul_top m u))) :
UniversallyInjective u
Tag 0AT8, a lemma
Tag 0AT8 in the Stacks Project.
AlgebraicGeometry.FinitelyPresentedLocalizedModuleSituation.exists_fg_ideal_localQuotientBaseChange_pureSpreadout, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/PureSpreadoutQuotient.lean, line 495.
Stacks Project, Tag 0AT8. In the standing situation of Stacks 0AT6, for every prime
𝔭of the base ring there is a finitely generated idealIof the local ringA_𝔭, contained in the extension of𝔭, such that the base change of the situation toA_𝔭 ⧸ Icarries a pure spreadout.The test-module universe of the universal injectivity packaged in the pure spreadout is left free, so the statement instantiates at any test universe.
theorem exists_fg_ideal_localQuotientBaseChange_pureSpreadout (p : Ideal X.A) [p.IsPrime] :
∃ I : Ideal (Localization.AtPrime p), I.FG ∧
I ≤ p.map (algebraMap X.A (Localization.AtPrime p)) ∧
∃ Y : FinitelyPresentedLocalizedModuleSituation.{u₁, max u₁ u₂, max u₁ u₃,
max u₁ (max u₃ u₄)},
Nonempty (LocalQuotientBaseChange X Y p I) ∧
Nonempty (PureSpreadout.{u₁, max u₁ u₂, max u₁ u₃, max u₁ (max u₃ u₄), u₅} Y)
Tag 0AT9, a lemma
Tag 0AT9 in the Stacks Project.
AlgebraicGeometry.universallyInjective_of_rTensor_residueField_injective, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/PureSpreadoutQuotient.lean, line 531.
Stacks Project, Tag 0AT9, unconditionally. In the finitely presented localized-module situation, a linear map between flat modules which is injective on every residue-field fibre is universally injective.
This is
AlgebraicGeometry.universallyInjective_of_rTensor_residueField_injective_of_pureSpreadoutwith itshAT8hypothesis discharged by Stacks 0AT8, instantiated at the test-module universe that binder pins.
theorem universallyInjective_of_rTensor_residueField_injective
(X : FinitelyPresentedLocalizedModuleSituation.{u₁, u₂, u₃, u₄})
{M : Type u₄} [AddCommGroup M] [Module X.A M]
[Module.Flat X.A X.N] [Module.Flat X.A M]
(u : X.N →ₗ[X.A] M)
(hu : ∀ (p : Ideal X.A) [p.IsPrime],
Function.Injective (u.rTensor p.ResidueField)) :
UniversallyInjective u
Tag 0ATA, a lemma
Tag 0ATA in the Stacks Project.
PrimeSpectrum.sInf_eq_bot_of_iUnion_zeroLocus_eq_compl_genericPoint, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/ZeroLocusOnLocalSpectrum.lean, line 61.
Stacks Project, Tag 0ATA. A multiplicatively closed collection of finitely generated ideals whose zero loci cover every non-generic point of the spectrum of a local domain has zero intersection.
theorem sInf_eq_bot_of_iUnion_zeroLocus_eq_compl_genericPoint
{A : Type u} [CommRing A] [IsDomain A] [IsLocalRing A]
(hA : ¬ IsField A) (S : Set (Ideal A))
(hSfg : ∀ I ∈ S, I.FG)
(hSmul : ∀ I ∈ S, ∀ J ∈ S, I * J ∈ S)
(hcover : (⋃ I ∈ S, PrimeSpectrum.zeroLocus (I : Set A)) =
{p : PrimeSpectrum A | p.asIdeal ≠ ⊥}) :
sInf S = ⊥
Tag 0ATB, a lemma
Tag 0ATB in the Stacks Project.
PrimeSpectrum.closedPoints_compl_zeroLocus_subset_zeroLocus, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/ZeroLocusOnLocalSpectrum.lean, line 155.
Stacks Project, Tag 0ATB. If
Jis a proper finitely generated ideal of a local ring andIis contained in every positive power ofJ, thenV(I)contains every closed point ofSpec(A) \ V(J).
theorem closedPoints_compl_zeroLocus_subset_zeroLocus
{A : Type u} [CommRing A] [IsLocalRing A] (I J : Ideal A)
(hJ : J ≠ ⊤) (hJfg : J.FG)
(hIJ : ∀ n : ℕ, 0 < n → I ≤ J ^ n) :
Subtype.val '' closedPoints
((PrimeSpectrum.zeroLocus (J : Set A))ᶜ : Set (PrimeSpectrum A)) ⊆
PrimeSpectrum.zeroLocus (I : Set A)
Tag 0ATC, a lemma
Tag 0ATC in the Stacks Project.
AlgebraicGeometry.smallerFlatnessIdeal, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/BlowingUp/FlatnessIdeal.lean, line 67. The attribute's comment: “the ideal I₂”.
The ideal
I₂ = Ker (I → Γ(U, (I/I²)~))ofA, for an idealIofAand an openU ⊆ Spec A: the image inAof the kernel of the composite ofI → I/I²with the map taking a global conormal class to its sections overU.
def smallerFlatnessIdeal {A : Type u} [CommRing A]
(I : Ideal A) (U : (Spec (.of A)).Opens) : Ideal A
AlgebraicGeometry.flat_quotient_smallerFlatnessIdeal, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/BlowingUp/FlatnessIdeal.lean, line 330. The attribute's comment: “flatness modulo I₂”.
Stacks Project, Tag 0ATC. Let
Ibe an ideal of a commutative ringAand letU ⊆ Spec Abe a quasi-compact open. IfM/IMis flat overA/IandM~is flat onU, thenM/I₂Mis flat overA/I₂, whereI₂ = Ker (I → Γ(U, (I/I²)~)).The source assumes
Alocal; locality is not used.
theorem flat_quotient_smallerFlatnessIdeal
{A : Type u} [CommRing A]
{M : Type u} [AddCommGroup M] [Module A M]
(I : Ideal A) (U : (Spec (.of A)).Opens)
(hU : IsCompact U.1)
(hquot : Module.Flat (A ⧸ I) (M ⧸ I • (⊤ : Submodule A M)))
(hflat : SheafOfModules.IsFlat.{u, u, u, u} (O := (U : Scheme).sheaf)
(show (U : Scheme).Modules from
(tilde (ModuleCat.of A M)).restrict U.ι)) :
Module.Flat (A ⧸ smallerFlatnessIdeal I U)
(M ⧸ smallerFlatnessIdeal I U • (⊤ : Submodule A M))
Stacks.flat_quotient_sectionsKernel, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/FlatteningSectionsKernel.lean, line 132.
Let
I ⊆ Abe an ideal,ManA-module andU = ⋃ i, D(f i)a quasi-compact open ofSpec A. IfM/IMis flat overA/IandMis flat overU, that isM_{f i}is flat overA_{f i}for eachi, thenM/I₂Mis flat overA/I₂, whereI₂ = Ker (I → Γ(U, I/I²))issectionsKernel I f.
theorem flat_quotient_sectionsKernel (I : Ideal A) {ι : Type w} [Finite ι] (f : ι → A)
(hI : Module.Flat (A ⧸ I) (M ⧸ I • (⊤ : Submodule A M)))
(hU : ∀ i, Module.Flat (Localization.Away (f i)) (Localization.Away (f i) ⊗[A] M)) :
Module.Flat (A ⧸ sectionsKernel I f)
(M ⧸ sectionsKernel I f • (⊤ : Submodule A M))
Tag 05U9, a proposition
Tag 05U9 in the Stacks Project.
AlgebraicGeometry.conclusion_of_injectiveModuloMaximalIdeal, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/NilpotentFlatteningClaimOneIndex.lean, line 283. The attribute's comment: “universal injectivity, finite presentation and flatness”.
Stacks Project, Tag 05U9. Let
A → Bbe a local homomorphism of local rings which is essentially of finite type, letMbe a flatA-module, letNbe a finiteB-module and letu : N → Mbe anA-linear map whose reductionū : N ⧸ 𝔪_AN → M ⧸ 𝔪_AMis injective. Then
uisA-universally injective,Nis of finite presentation overB, andNis flat overA.The hypotheses are the data of Situation 0AT0 (
AlgebraicGeometry.InjectiveModuloMaximalIdealSituation) and the three conclusions areAlgebraicGeometry.InjectiveModuloMaximalIdealConclusion.Stacks 0AT2 reduces all three to the case where
Bis a localization at a prime of a polynomial algebra overAin finitely many variables andNis of finite presentation overB, andAlgebraicGeometry.conclusion_of_presentationsettles that case through Claim 1 of the source's proof.
theorem conclusion_of_injectiveModuloMaximalIdeal
(S : InjectiveModuloMaximalIdealSituation.{u₁, u₂, u₃, u₄}) :
InjectiveModuloMaximalIdealConclusion.{u₅} S
Sources
Section38.26 Flat finite type modules, Part III#
Section 38.26 of the Stacks Project, Tag 05U8. 2 tags here are carried by 2 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 05UA, a theorem
Tag 05UA in the Stacks Project.
AlgebraicGeometry.isFlatOverAt_iff_forall_isAssociatedPoint_specializes, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatAtAssociatedPoints.lean, line 260. The attribute's comment: “Ass_{X_s}(F_s) is Stacks.Divisors.associatedPoints of the pullback of F to the scheme-theoretic fibre f.fiber (f x), and flatness at a point is IsFlatOverAt.”.
Stacks 05UA. Let
f : X ⟶ Sbe locally of finite type, letFbe a quasi-coherent𝒪_X-module of finite type and letx ∈ X. ThenFis flat overSatxif and only ifFis flat overSat every associated point of the restriction ofFto the fibre overf xwhich specializes tox.
theorem isFlatOverAt_iff_forall_isAssociatedPoint_specializes {X S : Scheme.{u}} (f : X ⟶ S)
[LocallyOfFiniteType f] (F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType] (x : X) :
IsFlatOverAt f.toLRSHom.toShHom F x ↔
∀ x' : f.fiber (f x),
x' ∈ Stacks.Divisors.associatedPoints
((Scheme.Modules.pullback (f.fiberι (f x))).obj F) →
f.fiberι (f x) x' ⤳ x → IsFlatOverAt f.toLRSHom.toShHom F (f.fiberι (f x) x')
Tag 05UB, a lemma
Tag 05UB in the Stacks Project.
AlgebraicGeometry.isFlatOver_of_isFlatOverAt_closedFiber, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/ClosedFibreFlatnessCheck.lean, line 92. The attribute's comment: “Ass_{X/S}(F) is Stacks.Divisors.relativeAssassin, the closed fibre X_s is f.fiber s placed in X by f.fiberι s, and flatness over the base at a point is IsFlatOverAt. A local scheme is an affine scheme whose ring of global sections is local.”.
Stacks Project, Tag 05UB. Let
Sbe a local scheme with closed points, letf : X ⟶ Sbe locally of finite type and letFbe a finite type quasi-coherent𝒪_X-module. If every point ofAss_{X/S}(F)specializes to a point of the closed fibreX_s, andFis flat overSat every point ofX_s, thenFis flat overS.The criterion of Stacks 05UA is
isFlatOverAt_iff_forall_isAssociatedPoint_specializes, read at every point of the source. Everything else isisFlatOverAt_of_mem_relativeAssassin: the two hypotheses onFgive flatness at every point of the relative assassin, which is what that criterion tests.
theorem isFlatOver_of_isFlatOverAt_closedFiber
{X S : Scheme.{u}} [IsAffine S] [IsLocalRing Γ(S, ⊤)]
(s : S) (_hs : s ∈ closedPoints S)
(f : X ⟶ S) [LocallyOfFiniteType f]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType]
(hass : ∀ x ∈ Stacks.Divisors.relativeAssassin f F,
∃ y : f.fiber s, Specializes x (f.fiberι s y))
(hflat : ∀ y : f.fiber s, IsFlatOverAt f.toLRSHom.toShHom F (f.fiberι s y)) :
IsFlatOver f.toLRSHom.toShHom F
Sources
Section38.27 Universal flattening#
Section 38.27 of the Stacks Project, Tag 05PS. 6 tags here are carried by 11 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 05UC, a lemma
Tag 05UC in the Stacks Project.
AlgebraicGeometry.FreeAtGenericPointsSituation.isImmersion_representableBy_fittingRankStratum, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/FreeAtGenericPointsImmersion.lean, line 95. The attribute's comment: “representability of H_p by a locally closed immersion”.
Stacks Project, Tag 05UC. In Situation 05MP, for each
p ≥ 0the functorH_pof 05MR is representable by a locally closed immersionS_p ⟶ S.
theorem isImmersion_representableBy_fittingRankStratum :
∃ W : Over D.S, IsImmersion W.hom ∧
Nonempty ((D.freeAtGenericPointsFunctor p).RepresentableBy W)
AlgebraicGeometry.FreeAtGenericPointsSituation.finitePresentation_hom_of_representableBy, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/FreeAtGenericPointsImmersion.lean, line 113. The attribute's comment: “finite presentation of S_p ⟶ S when the module is of finite presentation”.
Stacks Project, Tag 05UC. In Situation 05MP, if
ℱis of finite presentation thenS_p ⟶ Sis of finite presentation.The assertion is proved for an arbitrary morphism representing the generic-rank functor, which is legitimate because any two representatives are isomorphic over the base.
theorem finitePresentation_hom_of_representableBy [D.F.IsFinitePresentation]
{W : Over D.S} (e : (D.freeAtGenericPointsFunctor p).RepresentableBy W) :
FinitePresentation W.hom
Tag 05UD, a lemma
Tag 05UD in the Stacks Project.
AlgebraicGeometry.FlatDimensionSituation.isFlat_etaleChart_and_iff_of_relativeAssassin_subset, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/FlatteningFunctor/FlatDimensionEtaleComparison.lean, line 373.
Stacks Project, Tag 05UD. In Situation 05MT, let
h : X' ⟶ Xbe étale and letF'_nbe the functor of Stacks 05MU for(f ∘ h, h^* F). ThenF_nis a subfunctor ofF'_n, and ifh(X')containsAss_{X/S}(F)thenF_n = F'_n.Both functors are subterminal, so the first assertion is the implication between the two conditions after every base change
T ⟶ S, and the second is their equivalence.
theorem isFlat_etaleChart_and_iff_of_relativeAssassin_subset {X' : Scheme.{u}} (h : X' ⟶ D.X)
[Etale h] :
(∀ T : Over D.S, D.IsFlatInDimensionsGEAfterBaseChange T →
(D.etaleChart h).IsFlatInDimensionsGEAfterBaseChange T) ∧
(Stacks.Divisors.relativeAssassin D.f D.F ⊆ Set.range h → ∀ T : Over D.S,
D.IsFlatInDimensionsGEAfterBaseChange T ↔
(D.etaleChart h).IsFlatInDimensionsGEAfterBaseChange T)
Tag 05UE, a lemma
Tag 05UE in the Stacks Project.
AlgebraicGeometry.FreeAtGenericPointsSituation.flatDimensionFunctor_iso_coproduct_freeAtGenericPointsFunctor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/GenericRankCoproduct.lean, line 291.
Let
f : X ⟶ Sbe a smooth morphism of affine schemes with geometrically irreducible fibres of dimensiondand letFbe a quasi-coherent𝒪_X-module of finite presentation. Then there is ac ≥ 0withwhereF_d = ∐_{p = 0, …, c} H_pF_dis the functor of flatness in dimensions≥ dof Stacks 05MT andH_pis the functor of Stacks 05MP, the coproduct being taken in Zariski sheaves overS.The comparison map out of the pointwise disjoint union is locally bijective, hence becomes an isomorphism after sheafification, and sheafification preserves coproducts.
Sheafifying the left-hand side too is not a weakening:
F_dis an fpqc sheaf by Stacks 05MV, a fortiori a Zariski sheaf, so it is isomorphic to its own sheafification. It is written sheafified here only so that the statement takes no input from that tag.
theorem flatDimensionFunctor_iso_coproduct_freeAtGenericPointsFunctor [IsAffine D.X]
[IsAffine D.S] [D.F.IsFinitePresentation] {d : ℕ} (hd : RelativeDimension D.f d) :
∃ c : ℕ, Nonempty
((presheafToSheaf (Scheme.zariskiTopology.over D.S) (Type (u + 1))).obj
((D.toFlatDimensionSituation d).flatDimensionFunctor ⋙ uliftFunctor.{u + 1}) ≅
∐ fun p : Fin (c + 1) ↦
(presheafToSheaf (Scheme.zariskiTopology.over D.S) (Type (u + 1))).obj
(D.freeAtGenericPointsFunctor p.val ⋙ uliftFunctor.{u + 1}))
AlgebraicGeometry.isFlatOverInDimensionsGE_iff_forall_exists_freeAtPointOfRank, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/GenericRankDecomposition.lean, line 248. The attribute's comment: “F_d is the union of the H_p”.
Stacks Project, Tag 05UE. Let
f : X ⟶ Sbe a smooth morphism of affine schemes with geometrically irreducible fibres of dimensiondand letFbe a quasi-coherent𝒪_X-module of finite presentation. ThenFis flat overSin dimensions≥ dif and only ifFis free of some finite rank on a neighbourhood of the generic point of every fibre.This is the decomposition
F_d = ∐_p H_pof the source read on sections:H_pof Stacks 05MP is freeness of the fixed rankpnear every fibre's generic point, and the right hand side is the union of theH_p. Since every hypothesis is stable under base change, the equivalence overScarries the same equivalence over every schemeToverS.
theorem isFlatOverInDimensionsGE_iff_forall_exists_freeAtPointOfRank [IsAffine X] [IsAffine S]
[Smooth f] (hirr : ∀ s : S, GeometricallyIrreducible (f.fiberToSpecResidueField s)) {d : ℕ}
(hd : RelativeDimension f d) (F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType]
[F.IsFinitePresentation] :
IsFlatOverInDimensionsGE f F d ↔
∀ (s : S) (ξ : f.fiber s), IsGenericPoint ξ (Set.univ : Set (f.fiber s)) →
∃ r : ℕ, FreeAtPointOfRank F (f.fiberι s ξ) r
Tag 05UF, a lemma
Tag 05UF in the Stacks Project.
AlgebraicGeometry.FlatDimensionSituation.exists_mono_finitePresentation_representableBy, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/FlatDimensionFunctorRepresentability.lean, line 344.
Stacks Project, Tag 05UF. In Situation 05MT, let
sbe a point ofSand letd = nbe the bound of the situation. Assume that
- there exists a complete dévissage of
F/X/Sovers,Xis of finite presentation overS,Fis an𝒪_X-module of finite presentation, andFis flat overSin dimensions≥ d + 1.Then, after replacing
Sby an open neighbourhoodUofs, the functorF_dof Stacks 05MU is representable by a monomorphismZ_d ⟶ Uof finite presentation.Hypothesis (1) is the source's own: the existence of a complete dévissage is assumed by Tag 05UF, and is produced étale locally (Tag 05HU) only in the proof of Tag 05UG.
theorem exists_mono_finitePresentation_representableBy (s : D.S)
(hdev : Nonempty (CompleteDevissage D.f D.F s)) (hf : FinitePresentation D.f)
[D.F.IsFinitePresentation] (h : IsFlatOverInDimensionsGE D.f D.F (D.n + 1)) :
∃ U : D.S.Opens, s ∈ U ∧ ∃ Z : Over U.toScheme,
Mono Z.hom ∧ FinitePresentation Z.hom ∧
Nonempty ((D.openFlatDimensionFunctor U).RepresentableBy Z)
Tag 05UG, a theorem
Tag 05UG in the Stacks Project.
AlgebraicGeometry.FlatDimensionSituation.exists_mono_finitePresentation_representableBy_of_isPure, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/FlatDimensionFunctorPure.lean, line 432.
Stacks Project, Tag 05UG. In Situation 05MT, assume moreover that
fis of finite presentation, thatFis an𝒪_X-module of finite presentation, and thatFis pure relative toS. ThenF_nis representable by a monomorphismZ_n ⟶ Sof finite presentation.
fof finite presentation is spelled out as locally of finite presentation, quasi-compact and quasi-separated.
theorem exists_mono_finitePresentation_representableBy_of_isPure [LocallyOfFinitePresentation D.f]
[QuasiCompact D.f] [QuasiSeparated D.f] [D.F.IsFinitePresentation]
(hpure : IsPureRelative D.f D.F) :
∃ Z : Over D.S, Mono Z.hom ∧ FinitePresentation Z.hom ∧
Nonempty (D.flatDimensionFunctor.RepresentableBy Z)
Tag 05UH, a lemma
Tag 05UH in the Stacks Project.
AlgebraicGeometry.exists_mono_finitePresentation_representableBy_of_isPureRelative, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/UniversalFlatteningOfPure.lean, line 79. The attribute's comment: “part (1)”.
Stacks Project, Tag 05UH, part (1). Let
f : X ⟶ Sbe of finite presentation and letFbe an𝒪_X-module of finite presentation which is pure relative toS. Then the universal flatteningZ ⟶ SofFexists and is a monomorphism of finite presentation.
theorem exists_mono_finitePresentation_representableBy_of_isPureRelative
{X S : Scheme.{u}}
(f : X ⟶ S) [LocallyOfFinitePresentation f] [QuasiCompact f] [QuasiSeparated f]
(F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType] [F.IsFinitePresentation]
(hpure : IsPureRelative f F) :
∃ Z : Over S, Mono Z.hom ∧ FinitePresentation Z.hom ∧
Nonempty (Functor.RepresentableBy
({ S := S, X := X, f := f, F := F, isQuasicoherent := ‹F.IsQuasicoherent› } :
FlatnessSituation.{u}).flatFunctor Z)
AlgebraicGeometry.exists_mono_finitePresentation_representableBy_of_isSchemePureRelative, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/UniversalFlatteningOfPure.lean, line 100. The attribute's comment: “part (2)”.
Stacks Project, Tag 05UH, part (2). Let
f : X ⟶ Sbe of finite presentation and letXbe pure relative toS. Then the universal flatteningZ ⟶ SofXexists and is a monomorphism of finite presentation.
theorem exists_mono_finitePresentation_representableBy_of_isSchemePureRelative
{X S : Scheme.{u}}
(f : X ⟶ S) [LocallyOfFinitePresentation f] [QuasiCompact f] [QuasiSeparated f]
(hpure : IsSchemePureRelative f) :
∃ Z : Over S, Mono Z.hom ∧ FinitePresentation Z.hom ∧
Nonempty ((structureSheafFlatnessSituation f).flatFunctor.RepresentableBy Z)
AlgebraicGeometry.exists_mono_finitePresentation_representableBy_of_isProper, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/UniversalFlatteningOfPure.lean, line 115. The attribute's comment: “part (3)”.
Stacks Project, Tag 05UH, part (3). Let
f : X ⟶ Sbe proper and of finite presentation and letFbe an𝒪_X-module of finite presentation. Then the universal flatteningZ ⟶ SofFexists and is a monomorphism of finite presentation.
theorem exists_mono_finitePresentation_representableBy_of_isProper
{X S : Scheme.{u}}
(f : X ⟶ S) [IsProper f] [LocallyOfFinitePresentation f] (F : X.Modules)
[F.IsQuasicoherent] [F.IsFinitePresentation] :
∃ Z : Over S, Mono Z.hom ∧ FinitePresentation Z.hom ∧
Nonempty (Functor.RepresentableBy
({ S := S, X := X, f := f, F := F, isQuasicoherent := ‹F.IsQuasicoherent› } :
FlatnessSituation.{u}).flatFunctor Z)
AlgebraicGeometry.exists_mono_finitePresentation_representableBy_structureSheaf_of_isProper, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/UniversalFlatteningOfPure.lean, line 131. The attribute's comment: “part (4)”.
Stacks Project, Tag 05UH, part (4). Let
f : X ⟶ Sbe proper and of finite presentation. Then the universal flatteningZ ⟶ SofXexists, and it is a monomorphism of finite presentation.
theorem exists_mono_finitePresentation_representableBy_structureSheaf_of_isProper
{X S : Scheme.{u}}
(f : X ⟶ S) [IsProper f] [LocallyOfFinitePresentation f] :
∃ Z : Over S, Mono Z.hom ∧ FinitePresentation Z.hom ∧
Nonempty ((structureSheafFlatnessSituation f).flatFunctor.RepresentableBy Z)
Sources
Section38.28 Grothendieck's Existence Theorem, IV#
Section 38.28 of the Stacks Project, Tag 0CTB. 9 tags here are carried by 11 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 0CTC, a situation
Tag 0CTC in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.ExistenceSituation, a structure in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/BlowingUp/GrothendieckExistenceSituation.lean, line 60.
The standing data of Grothendieck's existence theorem for modules: an inverse system of rings with surjective, locally nilpotent transitions, a separated scheme of finite presentation over the inverse-limit ring, and a compatible system of finitely presented sheaves on its base changes which are flat over, and have proper support over, the affine base at their level.
structure ExistenceSituation
Tag 0CTD, a lemma
Tag 0CTD in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.ExistenceSituation.nonempty_derivedLimitQCoh_and_isDerivedLimit_isGE_isLE, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/BlowingUp/GrothendieckExistenceCoheratorLimit.lean, line 462.
Stacks Project, Tag 0CTD. In Situation [Stacks, Tag 0CTC] consider
K = R lim_{D_QCoh(𝒪_X)}(Fₙ) = DQ_X(R lim_{D(𝒪_X)} Fₙ). ThenKis inD^b_QCoh(𝒪_X)and in factKhas nonzero cohomology sheaves only in degrees≥ 0.Here, at any model of
D(𝒪_X), the datadofAlgebraicGeometry.GrothendieckExistence.ExistenceSituation.DerivedLimitQCohare a derived limitL = R lim_{D(𝒪_X)} FₙandK = DQ_X(L), characterized by its universal property; such data exist (first conjunct). For any of them,Kis also a derived limitR lim_{D_QCoh(𝒪_X)}(Fₙ)of the system read inD_QCoh(𝒪_X), which is the displayed equality, and its cohomology sheaves vanish outside[0, c]for somec.
theorem nonempty_derivedLimitQCoh_and_isDerivedLimit_isGE_isLE :
Nonempty S.DerivedLimitQCoh ∧ ∀ d : S.DerivedLimitQCoh,
(∃ _hp : HasProduct fun n : ℕ => S.quasiCoherentPushforwardSystem.obj ⟨n⟩,
IsDerivedLimit S.quasiCoherentPushforwardSystem ⟨d.K, d.quasicoherent⟩) ∧
d.K.IsGE 0 ∧ ∃ c : ℤ, d.K.IsLE c
AlgebraicGeometry.GrothendieckExistence.isDerivedLimit_coherator_obj_pushforwardSystem, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/BlowingUp/GrothendieckExistenceDerivedLimit.lean, line 259. The attribute's comment: “the displayed equality only; the coherator of Stacks 0CR0 is an argument, as in Stacks 0CSA and 0CR2”.
[Stacks, Tag 0CTD], the displayed equality. In Situation [Stacks, Tag 0CTC], if
Kis a derived limit inD(𝒪_X)of the system(iₙ,* Fₙ)ofAlgebraicGeometry.GrothendieckExistence.ExistenceSituation.derivedPushforwardSystem, thenDQ_X(K)is a derived limit of the system(DQ_X(iₙ,* Fₙ))inD_QCoh(𝒪_X). This is the equalityR lim_{D_QCoh(𝒪_X)}(Fₙ) = DQ_X(R lim_{D(𝒪_X)} Fₙ)of the statement of the tag; the existence of the product of the images is part of the conclusion.The reason is the source's:
DQ_Xis a right adjoint, so it commutes with the countable product occurring in a derived-limit triangle, and it is exact because the adjunctionι ⊣ DQ_Xis triangulated.
theorem isDerivedLimit_coherator_obj_pushforwardSystem (adj : quasiCoherentι S.X.left ⊣ DQ)
[DQ.CommShift ℤ] [adj.IsTriangulated]
[HasProduct fun n : ℕ => S.derivedPushforwardSystem.obj ⟨n⟩]
(K : DerivedCategory S.X.left.Modules)
(hK : IsDerivedLimit S.derivedPushforwardSystem K) :
∃ h : HasProduct fun n : ℕ => DQ.obj (S.derivedPushforwardSystem.obj ⟨n⟩),
@IsDerivedLimit (quasiCoherentDerivedCategory S.X.left) _ _ _ _ _ _
(S.derivedPushforwardSystem ⋙ DQ) h (DQ.obj K)
Tag 0CTE, a lemma
Tag 0CTE in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.ExistenceSituation.DerivedLimitQCoh.isPerfect_and_isIso_sheafHomBaseChange, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/BlowingUp/GrothendieckExistencePerfectSheafHom.lean, line 204. The attribute's comment: “(2)”.
Stacks Project, Tag 0CTE, part (2). In Situation [Stacks, Tag 0CTC] let
Kbe as in [Stacks, Tag 0CTD] and letEbe a perfect object ofD(𝒪_X). ThenN = RHom_X(E, K) = RΓ_A(X, R𝓗om(E, K))is a perfect object ofD(A), and there is a canonical isomorphismN ⊗^𝐋_A Aₙ ≅ RHom_{Xₙ}(E|_{Xₙ}, ℱₙ)inD(Aₙ)for everyn, withE|_{Xₙ}the derived pullback: the derived base change ofAlgebraicGeometry.GrothendieckExistence.ExistenceSituation.DerivedLimitQCoh.sheafHomLevelMap, built from a conepexhibitingL = R lim ℱₙ, is invertible.As in the source, part (2) and part (1) are translated into each other by [Stacks, Tag 08DQ]; here part (2) is read off part (1) at
E^∨. Stated atHasDerivedCategory.standard(scoped to this declaration).
theorem DerivedLimitQCoh.isPerfect_and_isIso_sheafHomBaseChange (d : S.DerivedLimitQCoh)
(E : DerivedCategory S.X.left.Modules)
(hE : RingedSpace.IsPerfect (X := S.X.left.toRingedSpace) E) :
StacksDraft.Perfect.IsPerfect ((derivedGlobalSectionsOver S.X.hom).obj
(((derivedSheafHom S.X.left.sheaf).obj (op E)).obj d.K)) ∧
∀ (p : d.L ⟶ ∏ᶜ fun n : ℕ => S.derivedPushforwardSystemOfModel.obj ⟨n⟩),
S.IsDerivedLimitCone p → ∀ n : ℕ,
IsIso (derivedBaseChangeComparison (S.limitProjection n)
(DerivedLimitQCoh.sheafHomLevelMap S d E hE p n))
AlgebraicGeometry.GrothendieckExistence.ExistenceSituation.DerivedLimitQCoh.isPerfect_and_isIso_tensorBaseChange, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/BlowingUp/GrothendieckExistencePerfectTensor.lean, line 377. The attribute's comment: “(1)”.
Stacks Project, Tag 0CTE, part (1). In Situation [Stacks, Tag 0CTC] let
Kbe as in [Stacks, Tag 0CTD] and letEbe a perfect object ofD(𝒪_X). ThenM = RΓ(X, K ⊗^𝐋 E)is a perfect object ofD(A), and the canonical mapM ⊗^𝐋_A Aₙ ⟶ RΓ(Xₙ, ℱₙ ⊗^𝐋 E|_{Xₙ})is an isomorphism inD(Aₙ)for everyn, withE|_{Xₙ}the derived pullback.Here
Kis given by the datadofAlgebraicGeometry.GrothendieckExistence.ExistenceSituation.DerivedLimitQCoh, the canonical map is(DerivedLimitQCoh.tensorBaseChange S d p n).app E, built from a conepexhibitingL = R lim ℱₙ, and the indexnstands for the leveln + 1of the source. Stated atHasDerivedCategory.standard(scoped to this declaration).
theorem DerivedLimitQCoh.isPerfect_and_isIso_tensorBaseChange (d : S.DerivedLimitQCoh)
(E : DerivedCategory S.X.left.Modules)
(hE : Stacks.Cohomology.PerfectComplexes.IsPerfect (X := S.X.left.toRingedSpace) E) :
StacksDraft.Perfect.IsPerfect ((derivedGlobalSectionsOver S.X.hom).obj
(((derivedTensorProductFunctor S.X.left.toRingedSpace.sheaf).obj d.K).obj E)) ∧
∀ (p : d.L ⟶ ∏ᶜ fun n : ℕ => S.derivedPushforwardSystemOfModel.obj ⟨n⟩),
S.IsDerivedLimitCone p → ∀ n : ℕ,
IsIso ((DerivedLimitQCoh.tensorBaseChange S d p n).app E)
Tag 0CTF, a lemma
Tag 0CTF in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.ExistenceSituation.DerivedLimitQCoh.isPseudoCoherent, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/BlowingUp/GrothendieckExistencePseudoCoherent.lean, line 64.
[Stacks, Tag 0CTF]. In Situation [Stacks, Tag 0CTC], let
Kbe as in [Stacks, Tag 0CTD], i.e.K = DQ_X(R lim_{D(𝒪_X)} iₙ,* ℱₙ). ThenKis pseudo-coherent relative toA = lim Aₙ: relatively pseudo-coherent ([Stacks, Tag 09UI]) for the structure morphismX ⟶ Spec A. Stated at the standard model.
theorem DerivedLimitQCoh.isPseudoCoherent (d : S.DerivedLimitQCoh) :
S.X.hom.IsPseudoCoherent d.K
Tag 0CTG, a lemma
Tag 0CTG in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.ExistenceSituation.isIso_sectionsOverComparison, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/BlowingUp/GrothendieckExistenceTheorem.lean, line 54.
[Stacks, Tag 0CTG]. In Situation [Stacks, Tag 0CTC], let
Kbe as in [Stacks, Tag 0CTD], with a derived-limit conepofR lim (iₙ,* ℱₙ). For every quasi-compact openU ⊆ X, the canonical mapRΓ(U, K) ⊗_A^𝐋 Aₙ ⟶ RΓ(Uₙ, ℱₙ)ofD(Aₙ),Uₙ = U ∩ Xₙ, is an isomorphism. Stated at the standard model.
theorem isIso_sectionsOverComparison (d : S.DerivedLimitQCoh)
(p : d.L ⟶ ∏ᶜ fun n : ℕ => S.derivedPushforwardSystemOfModel.obj ⟨n⟩)
(hp : S.IsDerivedLimitCone p) (U : S.X.left.Opens) (hU : IsCompact (U : Set S.X.left))
(n : ℕ) : IsIso (S.sectionsOverComparison d p U n)
Tag 0CTH, a lemma
Tag 0CTH in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.ExistenceSituation.exists_open_isZero_homology_isFinitePresentation_isIso, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/BlowingUp/GrothendieckExistenceTheorem.lean, line 69.
[Stacks, Tag 0CTH]. In Situation [Stacks, Tag 0CTC], let
Kbe as in [Stacks, Tag 0CTD], with a derived-limit conep. There is an openW ⊆ XcontainingX₀such thatHⁱ(K)|_W = 0fori ≠ 0,ℱ = H⁰(K)|_Wis of finite presentation, andℱₙ = ℱ ⊗_{𝒪_X} 𝒪_{Xₙ}: the canonical mapsiₙ^* H⁰(K) ⟶ ℱₙ, adjoint to the mapsH⁰(K) ⟶ iₙ,* ℱₙinduced byK ⟶ iₙ,* ℱₙ, are isomorphisms. Stated at the standard model.
theorem exists_open_isZero_homology_isFinitePresentation_isIso (d : S.DerivedLimitQCoh)
(p : d.L ⟶ ∏ᶜ fun n : ℕ => S.derivedPushforwardSystemOfModel.obj ⟨n⟩)
(hp : S.IsDerivedLimitCone p) :
∃ W : S.X.left.Opens, Set.range (S.closedImmersion 0) ⊆ W ∧
(∀ j : ℤ, j ≠ 0 →
IsZero (((DerivedCategory.homologyFunctor S.X.left.Modules j).obj d.K).restrict W.ι)) ∧
(((DerivedCategory.homologyFunctor S.X.left.Modules 0).obj d.K).restrict
W.ι).IsFinitePresentation ∧
∀ n : ℕ, IsIso
(((Scheme.Modules.pullbackPushforwardAdjunction (S.closedImmersion n)).homEquiv _ _).symm
(S.zerothLevelMap d p n))
Tag 0CTI, a lemma
Tag 0CTI in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.ExistenceSituation.exists_open_isProperOver_supp, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/BlowingUp/GrothendieckExistenceTheorem.lean, line 90.
[Stacks, Tag 0CTI]. In Situation [Stacks, Tag 0CTC], with
Kas in [Stacks, Tag 0CTD] andWas in [Stacks, Tag 0CTH]: after shrinkingW, the support ofℱ = H⁰(K)|_Wis proper overA. The open produced keeps the three properties of [Stacks, Tag 0CTH]. Stated at the standard model.
theorem exists_open_isProperOver_supp (d : S.DerivedLimitQCoh)
(p : d.L ⟶ ∏ᶜ fun n : ℕ => S.derivedPushforwardSystemOfModel.obj ⟨n⟩)
(hp : S.IsDerivedLimitCone p) :
∃ W : S.X.left.Opens, Set.range (S.closedImmersion 0) ⊆ W ∧
(∀ j : ℤ, j ≠ 0 →
IsZero (((DerivedCategory.homologyFunctor S.X.left.Modules j).obj d.K).restrict W.ι)) ∧
(((DerivedCategory.homologyFunctor S.X.left.Modules 0).obj d.K).restrict
W.ι).IsFinitePresentation ∧
(∀ n : ℕ, IsIso
(((Scheme.Modules.pullbackPushforwardAdjunction (S.closedImmersion n)).homEquiv _ _).symm
(S.zerothLevelMap d p n))) ∧
∃ Z : Closeds W.toScheme, (Z : Set W.toScheme) = SheafOfModules.supp
(((DerivedCategory.homologyFunctor S.X.left.Modules 0).obj d.K).restrict W.ι) ∧
IsProperOver (W.ι ≫ S.X.hom) Z
Tag 0CTJ, a lemma
Tag 0CTJ in the Stacks Project.
AlgebraicGeometry.isIso_of_forall_spec_factors_of_isLimit, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Morphisms/QuasiFinite/Monomorphism.lean, line 101.
Let
Abe the limit of a sequence of rings whose transition maps are surjective with locally nilpotent kernels. A monomorphismf : T ⟶ Spec Alocally of finite type through which everySpec Aₙ ⟶ Spec Afactors is an isomorphism.
theorem isIso_of_forall_spec_factors_of_isLimit (hc : IsLimit c)
(hF : ∀ n : ℕ, Function.Surjective (F.map (homOfLE (Nat.le_succ n)).op).hom ∧
RingHom.ker (F.map (homOfLE (Nat.le_succ n)).op).hom ≤ nilradical (F.obj (.op (n + 1))))
{T : Scheme.{u}} (f : T ⟶ Spec c.pt) [Mono f] [LocallyOfFiniteType f]
(hfac : ∀ n : ℕ, ∃ g : Spec (F.obj (.op n)) ⟶ T, g ≫ f = Spec.map (c.π.app (.op n))) :
IsIso f
Tag 0CTK, a theorem
Tag 0CTK in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.ExistenceSituation.exists_algebraization, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/BlowingUp/GrothendieckExistenceTheorem.lean, line 113.
[Stacks, Tag 0CTK], Grothendieck's existence theorem for flat modules. In Situation [Stacks, Tag 0CTC] there is a finitely presented
𝒪_X-moduleℱ, flat overA, with support proper overA, such thatℱₙ = ℱ ⊗_{𝒪_X} 𝒪_{Xₙ}for allncompatibly with the mapsφₙ. The derived categories in the proof are the standard ones; none appears in the statement.
theorem exists_algebraization :
∃ (F : S.X.left.Modules) (_ : F.IsFinitePresentation),
IsFlatOver S.X.hom.toLRSHom.toShHom F ∧
(∃ Z : Closeds S.X.left, (Z : Set S.X.left) = SheafOfModules.supp F ∧
IsProperOver S.X.hom Z) ∧
∃ e : ∀ n : ℕ, (Scheme.Modules.pullback (S.closedImmersion n)).obj F ≅ S.F n,
∀ n : ℕ,
(Scheme.Modules.pullbackComp (S.transitionScheme n) (S.closedImmersion (n + 1))).app F ≪≫
(Scheme.Modules.pullbackCongr (S.transition_fst n)).app F ≪≫ e n =
(Scheme.Modules.pullback (S.transitionScheme n)).mapIso (e (n + 1)) ≪≫ S.φ n
Sources
Section38.29 Grothendieck's Existence Theorem, V#
Section 38.29 of the Stacks Project, Tag 0DIA. 6 tags here are carried by 7 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 0DIB, a situation
Tag 0DIB in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation, a structure in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/GrothendieckExistence/Basic.lean, line 99.
Stacks Project, Tag 0DIB. The standing data of Grothendieck's existence theorem in its derived form: an inverse system of rings with surjective, locally nilpotent transitions, a proper flat scheme of finite presentation over the inverse-limit ring, and a compatible system of pseudo-coherent objects on its base changes.
public structure DerivedExistenceSituation
Tag 0DIC, a lemma
Tag 0DIC in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.isDerivedLimit_coherator_obj, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/GrothendieckExistence/DerivedLimitBounded.lean, line 164. The attribute's comment: “the displayed equality only; the coherator of Stacks 0CR0 is an argument, as in Stacks 0CSA and 0CR2, and the tower is an arbitrary inverse system in D(O_X) rather than the system Ri_n,* K_n of Situation 0DIB, which this library cannot yet form at the locally small model the coherator lives at”.
The displayed equality of [Stacks, Tag 0DIC]:
Rlim_{D_QCoh(𝒪_X)}(Kₙ)andDQ_X(Rlim_{D(𝒪_X)} Kₙ)agree. Precisely, ifKis a derived limit of an inverse system(Kₙ)inD(𝒪_X)thenDQ_X(K)is a derived limit of the system(DQ_X(Kₙ))inD_QCoh(𝒪_X); the existence of the product of the images is part of the conclusion.This is the source's reason for the equality:
DQ_Xis a right adjoint, so it commutes with products, and it is exact because the adjunctionι ⊣ DQ_Xis triangulated, so it carries the derived-limit triangle of(Kₙ)to the derived-limit triangle of(DQ_X(Kₙ)).
theorem isDerivedLimit_coherator_obj (adj : quasiCoherentι X ⊣ DQ) [DQ.CommShift ℤ]
[adj.IsTriangulated] (L : ℕᵒᵖ ⥤ DerivedCategory X.Modules)
[HasProduct fun n : ℕ => L.obj ⟨n⟩] (K : DerivedCategory X.Modules)
(hK : IsDerivedLimit L K) :
∃ h : HasProduct fun n : ℕ => DQ.obj (L.obj ⟨n⟩),
@IsDerivedLimit (quasiCoherentDerivedCategory X) _ _ _ _ _ _ (L ⋙ DQ) h (DQ.obj K)
AlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.limitObject_spec, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/GrothendieckExistence/DerivedLimitBoundedAbove.lean, line 183.
Stacks Project, Tag 0DIC. In Situation [Stacks, Tag 0DIB] consider
K = R lim_{D_QCoh(𝒪_X)}(Kₙ) = DQ_X(R lim_{D(𝒪_X)} Kₙ). ThenKis inD^-_QCoh(𝒪_X).Here
R lim_{D(𝒪_X)} Kₙis a chosen derived limit (AlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.derivedLimit) of the system(R(iₙ)_* Kₙ)whose transition maps are the adjoints of theφₙ, andDQ_Xis the coherator of [Stacks, Tag 0CR0]. The three conjuncts are:
- the displayed equality:
DQ_X(R lim_{D(𝒪_X)} Kₙ)is a derived limitR lim_{D_QCoh(𝒪_X)}(Kₙ)of the system inD_QCoh(𝒪_X);K, read at the model of the situation (AlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.limitObject), has quasi-coherent cohomology sheaves;Kis bounded above.The proof is the source's, see the module documentation and that of
StacksFrontier/AlgebraicGeometry/Flatness/GrothendieckExistence/DerivedLimitObject.lean.
theorem limitObject_spec :
(∃ _ : HasProduct fun n : ℕ => S.qcohTower.obj (op n),
IsDerivedLimit S.qcohTower S.coheratorLimit) ∧
letI := HasDerivedCategory.standard
(StrictlyPerfect.OXMod.{u, u, u} S.X.left.toRingedSpace)
(∀ j : ℤ, ((DerivedCategory.homologyFunctor _ j).obj S.limitObject).IsQuasicoherent) ∧
∃ c : ℤ, S.limitObject.IsLE c
Tag 0DID, a lemma
Tag 0DID in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.isPseudoCoherent_cohomology_and_isIso, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/GrothendieckExistence/CohomologyAgainstPerfect.lean, line 617.
[Stacks, Tag 0DID]. In Situation [Stacks, Tag 0DIB] let
Kbe as in [Stacks, Tag 0DIC]. For any perfect objectEofD(𝒪_X)the cohomologyM = RΓ(X, K ⊗^L E)is a pseudo-coherent object ofD(A)and there is a canonical isomorphismRΓ(X_n, K_n ⊗^L E|_{X_n}) = M ⊗^L_A A_ninD(A_n), whereE|_{X_n}is the derived pullback ofEtoX_n.Here
KisAlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.limitObject,MisAlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.cohomology, and the canonical isomorphism is the base change mapM ⊗^L_A A_n ⟶ RΓ(X_n, K_n ⊗^L E|_{X_n})adjoint to the canonical mapM ⟶ RΓ(X_n, K_n ⊗^L E|_{X_n})(AlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.cohomologyMap): pull back alongX_n ⟶ X, identify(K ⊗^L E)|_{X_n} = K|_{X_n} ⊗^L E|_{X_n}, and apply the canonical mapK|_{X_n} ⟶ K_n.The proof is the source's.
RΓ(X, - ⊗^L E)carries the derived-limit triangle ofK = DQ_X(R lim K_n)to a triangle presentingMasR lim M_nforM_n = RΓ(X_n, K_n ⊗^L E_n)(AlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.exists_distTriang_cohomology); theM_nare pseudo-coherent ([Stacks, Tag 0CSD]) withM_{n+1} ⊗^L A_n = M_nby flat base change; and [Stacks, Tag 0CQF] concludes.
theorem isPseudoCoherent_cohomology_and_isIso
(hE : RingedSpace.IsPerfect (X := S.X.left.toRingedSpace) E) :
StacksDraft.PseudoCoherence.IsPseudoCoherent (S.cohomology E) ∧
∀ n : ℕ, IsIso (StacksDraft.DerivedInverseLimit.derivedBaseChangeComparison.{u, u, u}
(limit.π S.system (op n)).hom (S.cohomologyMap E n))
Tag 0DIE, a lemma
Tag 0DIE in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.isPseudoCoherent_limitObject, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/GrothendieckExistence/LimitObjectPseudoCoherent.lean, line 77.
Stacks Project, Tag 0DIE. In Situation [Stacks, Tag 0DIB] let
Kbe as in [Stacks, Tag 0DIC]. ThenKis pseudo-coherent onX.Here
K = DQ_X(R lim Kₙ)isAlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.limitObject, an object ofD(𝒪_X)at the model at which theKₙare given. By [Stacks, Tag 0DID] (its first assertion,DerivedExistenceSituation.isPseudoCoherent_cohomology_and_isIso)RΓ(X, K ⊗^𝐋 E)is pseudo-coherent for every perfectE; [Stacks, Tag 0GES] (which is [Stacks, Tags 0CSH and 0CSL] together,Xbeing separated and of finite presentation overAandKlying inD_QCoh(𝒪_X)by [Stacks, Tag 0DIC]) makesKpseudo-coherent relative toA, and [Stacks, Tag 09UU] (for schemes, [Stacks, Tag 0DII]) turns that into pseudo-coherence onX,Xbeing flat and of finite presentation overA.
theorem isPseudoCoherent_limitObject (S : DerivedExistenceSituation.{u}) :
letI := HasDerivedCategory.standard (StrictlyPerfect.OXMod.{u, u, u} S.X.left.toRingedSpace)
RingedSpace.IsPseudoCoherent (X := S.X.left.toRingedSpace) S.limitObject
Tag 0DIF, a lemma
Tag 0DIF in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.isIso_derivedBaseChangeComparison_derivedSections, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/GrothendieckExistence/DerivedSectionsBaseChange.lean, line 155.
In Situation [Stacks, Tag 0DIB] let
Kbe as in [Stacks, Tag 0DIC]. For any quasi-compact openU ⊆ Xwe haveRΓ(U, K) ⊗^𝐋_A Aₙ = RΓ(Uₙ, Kₙ)inD(Aₙ), whereUₙ = U ∩ Xₙ.Here
KisAlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.limitObject,RΓ(U, K)is theA-linear derived global sections ofK|_U,RΓ(Uₙ, Kₙ)theAₙ-linear derived global sections ofKₙ|_{Uₙ}, and the identification is the canonical mapRΓ(U, K) ⊗^𝐋_A Aₙ ⟶ RΓ(Uₙ, Kₙ): the adjoint ofAlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.openRestrictionMap, which pulls derived sections back alongUₙ ⟶ Uand applies the canonical mapK|_{Xₙ} ⟶ Kₙadjoint to the projectionK ⟶ R(iₙ)_* Kₙ.
theorem isIso_derivedBaseChangeComparison_derivedSections (hU : IsCompact (U : Set S.X.left)) :
IsIso (derivedBaseChangeComparison (limit.π S.system (op n)).hom
(S.openRestrictionMap U n S.limitObject (S.restrictionMap n)))
Tag 0DIG, a theorem
Tag 0DIG in the Stacks Project.
AlgebraicGeometry.GrothendieckExistence.DerivedExistenceSituation.exists_isPseudoCoherent_derivedPullback_iso, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/GrothendieckExistence/DerivedExistenceTheorem.lean, line 66.
[Stacks, Tag 0DIG], Grothendieck's existence theorem in its derived form. In Situation [Stacks, Tag 0DIB] there is a pseudo-coherent
K ∈ D(𝒪_X)together with isomorphismsβₙ : K ⊗ᴸ_{𝒪_X} 𝒪_{Xₙ} = L(iₙ)^* K ≅ Kₙcompatible with the mapsφₙ: the compositeL(jₙ)^* L(iₙ₊₁)^* K ≅ L(iₙ)^* K ⟶ Kₙof the composition isomorphism withβₙisL(jₙ)^* βₙ₊₁followed byφₙ.
theorem exists_isPseudoCoherent_derivedPullback_iso :
∃ K : DerivedCategory (StrictlyPerfect.OXMod.{u, u, u} S.X.left.toRingedSpace),
RingedSpace.IsPseudoCoherent (X := S.X.left.toRingedSpace) K ∧
∃ β : ∀ n : ℕ, (derivedPullback (S.levelInclusion n)).obj K ≅ S.K n,
∀ n : ℕ,
(Stacks.DerivedPullback.Composition.derivedPullbackCompIsoCanonical
(S.levelTransition n) (S.levelInclusion (n + 1))).hom.app K ≫
eqToHom (congrArg (fun t : (schemeAt S.system S.X n).toRingedSpace ⟶
S.X.left.toRingedSpace => (derivedPullback t).obj K)
(S.levelTransition_comp_levelInclusion n)) ≫ (β n).hom =
(derivedPullback (S.levelTransition n)).map (β (n + 1)).hom ≫ S.φ n
Sources
Section38.30 Blowing up and flatness#
Section 38.30 of the Stacks Project, Tag 080X. 7 tags here are carried by 15 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 080Y, a remark
Tag 080Y in the Stacks Project.
AlgebraicGeometry.exists_admissibleBlowup_forall_restrict_factors, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Blowup/AdmissibleLocalOnBase.lean, line 91. The attribute's comment: “locality on S: finitely many admissible blowups of quasi-compact opens of S are all refined by the restrictions of a single U-admissible blowup of S, each refinement itself an admissible blowup of the local solution”.
Stacks Project, Tag 080Y, the locality on
Sof Remark 38.30.1, for a finite family of quasi-compact opens. LetSbe quasi-compact and quasi-separated,U ⊆ Sa quasi-compact open, and letW j ⊆ Sbe finitely many quasi-compact opens carryingW j ∩ U-admissible blowupsc j : V j ⟶ W j. There is oneU-admissible blowupp : S' ⟶ Swhose restriction to eachW jfactors throughc j.Each
c jextends to aU-admissible blowupq j : T j ⟶ SwithIsPullback (c j) \_ (W j).ι (q j)by [Stacks, Tag 080M], and [Stacks, Tag 080N] produces aU-admissiblep : S' ⟶ Sfactoring through everyq jby aq j ⁻¹ᵁ U-admissible blowupk j. The restrictionp ∣_ W jand the composite(p ⁻¹ᵁ W j).ι ≫ k jagree overS, so the cartesian square of [Stacks, Tag 080M] lifts them to the required maprtoV j; andris the base change ofk jalong the flatg j, hence admissible.
public theorem exists_admissibleBlowup_forall_restrict_factors
[CompactSpace S] [QuasiSeparatedSpace S] (U : S.Opens) (hU : IsCompact (U : Set S))
{ι : Type*} [Finite ι] (W : ι → S.Opens) (hW : ∀ j, IsCompact ((W j : S.Opens) : Set S))
(V : ι → Scheme.{u}) (c : ∀ j, V j ⟶ (W j).toScheme)
(hc : ∀ j, Stacks.Blowup.IsAdmissibleBlowup ((W j).ι ⁻¹ᵁ U) (c j)) :
∃ (S' : Scheme.{u}) (p : S' ⟶ S), Stacks.Blowup.IsAdmissibleBlowup U p ∧
∀ j, ∃ r : (p ⁻¹ᵁ W j).toScheme ⟶ V j, r ≫ c j = p ∣_ (W j) ∧
Stacks.Blowup.IsAdmissibleBlowup (c j ⁻¹ᵁ ((W j).ι ⁻¹ᵁ U)) r
AlgebraicGeometry.exists_admissibleBlowup_finite_cover_restrict_factors, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Blowup/AdmissibleLocalOnBase.lean, line 134. The attribute's comment: “locality on S: a solution on a quasi-compact open neighbourhood of every point of S is refined, over a finite subcover, by the restrictions of a single U-admissible blowup of S, each refinement itself an admissible blowup of the local solution”.
Stacks Project, Tag 080Y, the locality on
Sof Remark 38.30.1 in the paragraph's own formulation. LetSbe quasi-compact and quasi-separated andU ⊆ Sa quasi-compact open. Suppose that every pointsofShas a quasi-compact open neighbourhoodW scarrying aW s ∩ U-admissible blowupc s : V s ⟶ W s. Then there is a finite set of points whose neighbourhoods already coverS, and oneU-admissible blowupp : S' ⟶ Swhose restriction to each of those neighbourhoods factors through the blowup given there.The finite set comes from quasi-compactness of
S, the blowup fromAlgebraicGeometry.exists_admissibleBlowup_forall_restrict_factorsapplied to the finite subfamily.
public theorem exists_admissibleBlowup_finite_cover_restrict_factors
[CompactSpace S] [QuasiSeparatedSpace S] (U : S.Opens) (hU : IsCompact (U : Set S))
(W : S → S.Opens) (hWmem : ∀ s : S, s ∈ W s)
(hW : ∀ s : S, IsCompact ((W s : S.Opens) : Set S))
(V : S → Scheme.{u}) (c : ∀ s : S, V s ⟶ (W s).toScheme)
(hc : ∀ s : S, Stacks.Blowup.IsAdmissibleBlowup ((W s).ι ⁻¹ᵁ U) (c s)) :
∃ (F : Finset S) (S' : Scheme.{u}) (p : S' ⟶ S),
(∀ x : S, ∃ s ∈ F, x ∈ W s) ∧ Stacks.Blowup.IsAdmissibleBlowup U p ∧
∀ s ∈ F, ∃ r : (p ⁻¹ᵁ W s).toScheme ⟶ V s, r ≫ c s = p ∣_ (W s) ∧
Stacks.Blowup.IsAdmissibleBlowup (c s ⁻¹ᵁ ((W s).ι ⁻¹ᵁ U)) r
AlgebraicGeometry.cartierBoundaryDivisorReduction, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Blowup/CartierBoundaryDivisorReduction.lean, line 80. The attribute's comment: “the reduction to a divisor: after one U-admissible blowup the boundary is an effective Cartier divisor whose complement is the inverse image of U, and that inverse image is scheme theoretically dense”.
Stacks Project, Tag 080Y, the reduction to a divisor of Remark 38.30.1 in full. On a quasi-compact and quasi-separated scheme
Sa quasi-compact openUbecomes, after a singleU-admissible blowup, the complement of an effective Cartier divisorDsupported on the boundary; and thenUis scheme theoretically dense.The centre is the one of
AlgebraicGeometry.cartierBoundaryReduction, andDis the exceptional divisor of its blowup: an effective Cartier divisor by [Stacks, Tag 02OS] part (2) (Stacks.Blowup.isEffectiveCartierDivisor_exceptionalIdeal), whose support is the boundary by that theorem. The density is then [Stacks, Tag 07ZU] (Stacks.Divisors.isSchemeTheoreticallyDense_compl_of_isEffectiveCartierDivisor): the complement of an effective Cartier divisor is scheme theoretically dense.
public theorem cartierBoundaryDivisorReduction [CompactSpace S] [QuasiSeparatedSpace S]
(U : S.Opens) (hU : IsCompact (U : Set S)) : CartierBoundaryDivisorReduction S U
AlgebraicGeometry.cartierBoundaryReduction, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Blowup/DominatedByBlowup.lean, line 178.
Stacks Project, Tag 080Y. On a quasi-compact and quasi-separated scheme
S, a quasi-compact openUbecomes the complement of an effective Cartier divisor after a singleU-admissible blowup: a finite type quasi-coherent ideal sheafIcutting outS ∖ Uis finitely presented as a closed subscheme, is disjoint fromU, and the exceptional divisor of the blowup ofSinIis exactly the complement of the inverse image ofU.
public theorem cartierBoundaryReduction [CompactSpace S] [QuasiSeparatedSpace S] (U : S.Opens)
(hU : IsCompact (U : Set S)) : CartierBoundaryReduction S U
AlgebraicGeometry.StrictTransformProblem.isSolvable_of_local, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Blowup/StrictTransformProblem/LocalGlobal.lean, line 268. The attribute's comment: “the local-global reduction, the remark's third paragraph; the locality of P on the base is the hypothesis the remark states it under”.
[Stacks, Tag 080Y], the local-global reduction. Suppose the property
Pis local on the base: for every strict-transform problem with that property, if the base is covered by finitely many quasi-compact opens over each of which the restricted triple hasP, then the triple itself hasP. Then the strict-transform problem is local on the base too: if every point ofShas a quasi-compact open neighbourhood over which the problem is solvable, the problem is solvable.
public theorem isSolvable_of_local (D : StrictTransformProblem.{u})
(hP : ∀ E : StrictTransformProblem.{u}, @E.P = @D.P →
∀ {ι : Type} [Finite ι] (W : ι → E.S.Opens) (hW : ∀ i, IsCompact (W i : Set E.S)),
(⋃ i, (W i : Set E.S)) = Set.univ →
(∀ i, (E.restrict (W i) (hW i)).P (E.restrict (W i) (hW i)).f
(E.restrict (W i) (hW i)).F) →
E.P E.f E.F)
(hlocal : ∀ s : D.S, ∃ (W : D.S.Opens) (hW : IsCompact (W : Set D.S)),
s ∈ (W : Set D.S) ∧ (D.restrict W hW).IsSolvable) :
D.IsSolvable
AlgebraicGeometry.StrictTransformProblem.isSolvable_of_isSolvableIn, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Blowup/StrictTransformProblem/Successive.lean, line 135. The attribute's comment: “the successive reduction, the paragraph beginning `The general strategy will be to use that a composition of U-admissible blowups is a U-admissible blowup': it suffices to find a sequence of U-admissible blowups S = S_0 <- S_1 <- ... <- S_n such that, setting F_0 = F and X_0 = X and F_i/X_i the strict transform of F_{i-1}/X_{i-1}, the triple F_n/X_n/S_n has P. The sequence is IsSolvableIn n and the single blowup it is replaced by is IsSolvable”.
[Stacks, Tag 080Y], the successive reduction. To solve the strict-transform problem it suffices to find a sequence of
U-admissible blowupsS = S₀ ← S₁ ← … ← Sₙwhose iterated strict transform has the propertyP: such a sequence is replaced by a singleU-admissible blowup with the same effect.The sequence is contracted one stage at a time: the amalgamation of [Stacks, Tag 080B], fed by the second-centre factorization of [Stacks, Tag 0803], replaces the last two centres by a single admissible centre on the previous base, and [Stacks, Tag 080I] identifies the iterated strict transform with the strict transform in it.
public theorem isSolvable_of_isSolvableIn (n : ℕ) (D : StrictTransformProblem.{u})
(h : D.IsSolvableIn n) : D.IsSolvable
Tag 0810, a lemma
Tag 0810 in the Stacks Project.
AlgebraicGeometry.exists_idealSheafData_forall_blowUp_exists_free_of_rank, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/BlowupIntegralFibresGeometric.lean, line 316. The attribute's comment: “the scheme-level form”.
Stacks Project, Tag 0810. Let
Sbe an affine scheme,s : Γ(S, ⊤),r ≥ 0an integer,f : X ⟶ San affine morphism andFa quasi-coherent𝒪_X-module. Assume
fis of finite presentation and flat with geometrically integral fibres;Fis of finite type;Frestricted tof⁻¹(D(s))is of finite presentation;- for every point
xofXwhich is generic in its fibre and whose image lies inD(s), the stalkF_xis free of rankrover𝒪_{X,x}.Then there is a quasi-coherent sheaf of ideals
ℐonSwhose ideal of global sections is finitely generated and whose support isV(s), such that over every pointzof the blowupBl_ℐ(S)there is a point ofX ×_S Bl_ℐ(S)abovezwith an open neighbourhood on which the strict transform ofFis free of rankr.This is the geometric reading of the ring-level
AlgebraicGeometry.exists_fg_ideal_forall_blowup_chart_exists_away_basis: hypotheses (1)–(4) are converted into its hypotheses onΓ(S, ⊤) → Γ(X, ⊤)andΓ(F, ⊤), and its conclusion — thea-power-torsion quotient of the base change becomes free of rankrafter inverting one element per prime of each affine blowup chart — is carried onto the sheaf-level strict transform byAlgebraicGeometry.exists_free_open_of_chart_at.
public theorem exists_idealSheafData_forall_blowUp_exists_free_of_rank
{S X : Scheme.{u}} [IsAffine S] (f : X ⟶ S) [IsAffineHom f] [Flat f]
[GeometricallyIntegral f] (hf : AlgebraicGeometry.FinitePresentation f)
(F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType] (s : Γ(S, ⊤)) (r : ℕ)
(hFU : (F.restrict (f ⁻¹ᵁ S.basicOpen s).ι).IsFinitePresentation)
(hrank : ∀ x : X, f.base x ∈ S.basicOpen s → f.base ⁻¹' {f.base x} ⊆ closure {x} →
letI := Stacks.ModuleStalkSpecialization.stalkModule F x
Nonempty (Module.Basis (Fin r) (X.presheaf.stalk x) (F.presheaf.stalk x))) :
∃ ℐ : S.IdealSheafData,
(ℐ.ideal ⟨⊤, isAffineOpen_top S⟩).FG ∧
(ℐ.support : Set S) = (↑(S.basicOpen s))ᶜ ∧
∀ z : Stacks.Blowup.blowUp ℐ,
∃ (W : (Limits.pullback f (Stacks.Blowup.blowUpToBase ℐ)).Opens)
(x : ↥(Limits.pullback f (Stacks.Blowup.blowUpToBase ℐ))),
x ∈ W ∧ (pullback.snd f (Stacks.Blowup.blowUpToBase ℐ)).base x = z ∧
Nonempty ((Stacks.StrictTransform.sheaf f (Stacks.Blowup.blowUpToBase ℐ)
(Stacks.Blowup.exceptionalIdeal ℐ) F).restrict W.ι ≅
SheafOfModules.free.{u} (ULift.{u} (Fin r)))
Stacks.StrictTransform.exists_fg_ideal_forall_chartFreeOfRank, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/StrictTransform/AffineChartSections.lean, line 302. The attribute's comment: “the conclusion read on the strict transform of [Stacks, Tag 080D]: on every affine chart of a base change on which the inverse image of the centre is the zero locus of the image of the chart's denominator, the strict transform of the module is free of rank r on a basic open through every extended prime of the chart base. The hypotheses are the source's own, read on the global sections of the two affine schemes; the existence of such charts is not claimed”.
Stacks Project, Tag 0810, read on the strict transform. Let
Sbe an affine scheme,Xan affine scheme over it withΓ(S, ⊤) ⟶ Γ(X, ⊤)flat and of finite presentation with geometrically integral fibres, letFbe a quasi-coherent module onXpresented asM^~withMfinite overΓ(X, ⊤), lett : Γ(S, ⊤)andr : ℕ, and assumeMis finitely presented after invertingtand free of rankrat every extended primeqΓ(X, ⊤)witht ∉ q. Then there is a finitely generated idealI ⊆ Γ(S, ⊤)withV(t) = V(I)such that for everya ∈ Iand every primeq'of the affine blowup algebraΓ(S, ⊤)[I/a], the chartSpec (Γ(X, ⊤) ⊗_{Γ(S,⊤)} Γ(S, ⊤)[I/a])of a base change satisfiesStacks.StrictTransform.ChartFreeOfRankfor the image ofaand the extension ofq': on every such chart on which the inverse image of the centre is the zero locus of the image ofa, the strict transform ofFof [Stacks, Tag 080D] is free of rankron a basic openD(g)withgoutsideq'·(Γ(X, ⊤) ⊗ Γ(S, ⊤)[I/a]).This is the scheme-level form of the ring-level
exists_fg_ideal_forall_blowup_chart_exists_away_basis: the ideal, the chart algebras and the elementgare the ring-level ones, and the module the ring-level statement produces a basis for is identified with the strict transform byStacks.StrictTransform.affineChartSheafIso, throughStacks.StrictTransform.nonempty_restrict_basicOpen_free_of_basis. It is the form the proof of [Stacks, Tag 0811] consumes, which is about the strict transform and not about the chart-level torsion quotient: freeness of the strict transform near the generic point of a fibre ofX ×_S Bl_I(S) ⟶ Bl_I(S)is the flatness conjunct ofAlgebraicGeometry.GenericFibreFlatteningBlowup.The charts are universally quantified inside
Stacks.StrictTransform.ChartFreeOfRank: nothing is claimed here about their existence, which is the content of [Stacks, Tag 0804] for the blowup ofSinItogether with the base change of that covering alongf.
public theorem exists_fg_ideal_forall_chartFreeOfRank [IsAffine X] [IsAffine S] (f : X ⟶ S)
(F : X.Modules) [F.IsQuasicoherent] (M : ModuleCat.{u} Γ(X, ⊤))
(e : F ≅ (Scheme.Modules.pullback X.isoSpec.hom).obj (tilde M))
[Algebra Γ(S, ⊤) Γ(X, ⊤)]
(halg : (algebraMap Γ(S, ⊤) Γ(X, ⊤) : Γ(S, ⊤) →+* Γ(X, ⊤)) = f.appTop.hom)
[Algebra.FinitePresentation Γ(S, ⊤) Γ(X, ⊤)] [Module.Flat Γ(S, ⊤) Γ(X, ⊤)]
[Module.Finite Γ(X, ⊤) M] (t : Γ(S, ⊤)) (r : ℕ)
(hfibre : ∀ (q : Ideal Γ(S, ⊤)) (hq : q.IsPrime),
letI := hq
Algebra.IsGeometricallyIntegral q.ResidueField (q.Fiber Γ(X, ⊤)))
(hfp : Module.FinitePresentation (Localization.Away (algebraMap Γ(S, ⊤) Γ(X, ⊤) t))
(LocalizedModule (Submonoid.powers (algebraMap Γ(S, ⊤) Γ(X, ⊤) t)) M))
(hrank : ∀ (q : Ideal Γ(S, ⊤)) (hq : q.IsPrime), t ∉ q →
letI := hq
let 𝔮 := Ideal.map (algebraMap Γ(S, ⊤) Γ(X, ⊤)) q
∀ h𝔮 : 𝔮.IsPrime,
letI := h𝔮
Nonempty (LocalizedModule 𝔮.primeCompl M ≃ₗ[Localization 𝔮.primeCompl]
(Fin r → Localization 𝔮.primeCompl))) :
∃ I : Ideal Γ(S, ⊤), I.FG ∧
(∀ q : Ideal Γ(S, ⊤), q.IsPrime → (t ∈ q ↔ I ≤ q)) ∧
∀ (a : Γ(S, ⊤)) (ha : a ∈ I),
letI : Fact (a ∈ I) := ⟨ha⟩
∀ q' : Ideal (Blowup I a), q'.IsPrime →
ChartFreeOfRank f F M (CommRingCat.of (Γ(X, ⊤) ⊗[Γ(S, ⊤)] Blowup I a))
(CommRingCat.ofHom (algebraMap Γ(X, ⊤) (Γ(X, ⊤) ⊗[Γ(S, ⊤)] Blowup I a)))
(algebraMap Γ(X, ⊤) (Γ(X, ⊤) ⊗[Γ(S, ⊤)] Blowup I a) (f.appTop.hom a)) r
(Ideal.map Algebra.TensorProduct.includeRight q')
exists_fg_ideal_forall_blowup_chart_exists_away_basis, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/RingTheory/Flat/BlowupFlattening.lean, line 57.
Stacks Project, Tag 0810. Let
R → Sbe flat and of finite presentation with geometrically integral fibres, letf : R, and letMbe a finiteS-module which is finitely presented after invertingfand free of rankrat every extended primepSwithf ∉ p. Then there is a finitely generated idealI ⊆ RwithV(f) = V(I)such that for everya ∈ I, writingR' = R[I/a]andS' = S ⊗[R] R', the quotientM'ofS' ⊗[S] Mby itsa-power torsion is free of rankrafter inverting someg : S'outsidep'S', for every primep'ofR'.This is
exists_fg_ideal_forall_blowup_chart_exists_away_basis_of_projectivewith its hypothesisModule.Projective R Ssupplied by Stacks 05FT,Algebra.projective_of_geometricallyIntegral_fibres.
public theorem exists_fg_ideal_forall_blowup_chart_exists_away_basis
(R S : Type u) [CommRing R] [CommRing S] [Algebra R S]
[Algebra.FinitePresentation R S] [Module.Flat R S]
(M : Type v) [AddCommGroup M] [Module S M] [Module R M] [IsScalarTower R S M]
[Module.Finite S M] (f : R) (r : ℕ)
(hfibre : ∀ (p : Ideal R) (hp : p.IsPrime),
letI := hp
Algebra.IsGeometricallyIntegral p.ResidueField (p.Fiber S))
(hfp : Module.FinitePresentation (Localization.Away (algebraMap R S f))
(LocalizedModule (Submonoid.powers (algebraMap R S f)) M))
(hrank : ∀ (p : Ideal R) (hp : p.IsPrime), f ∉ p →
letI := hp
let q := Ideal.map (algebraMap R S) p
∀ hq : q.IsPrime,
letI := hq
Nonempty
(LocalizedModule q.primeCompl M ≃ₗ[Localization q.primeCompl]
(Fin r → Localization q.primeCompl))) :
∃ I : Ideal R, I.FG ∧
(∀ (p : Ideal R), p.IsPrime → (f ∈ p ↔ I ≤ p)) ∧
∀ (a : R) (ha : a ∈ I),
letI : Fact (a ∈ I) := ⟨ha⟩
let R' := Blowup I a
let S' := S ⊗[R] R'
let N := S' ⊗[S] M
let M' := N ⧸ Submodule.torsion' S' N
(Submonoid.powers (algebraMap S S' (algebraMap R S a)))
∀ (p' : Ideal R') (_hp' : p'.IsPrime), ∃ g : S',
g ∉ Ideal.map Algebra.TensorProduct.includeRight p' ∧
Nonempty
(LocalizedModule (Submonoid.powers g) M' ≃ₗ[Localization.Away g]
(Fin r → Localization.Away g))
Tag 0811, a lemma
Tag 0811 in the Stacks Project.
AlgebraicGeometry.exists_isAdmissibleBlowup_opens_finitelyLocallyFree_surjective, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/BlowupIntegralFibres0811.lean, line 147. The attribute's comment: “the full statement under hypotheses (1)-(4) of the source: a U-admissible blowup and an open of the base change on which the strict transform is finitely locally free and which surjects onto the blowup”.
Stacks Project, Tag 0811. Let
Sbe a quasi-compact and quasi-separated scheme, letf : X ⟶ Sbe a morphism, letFbe a quasi-coherent𝒪_X-module and letU ⊆ Sbe a quasi-compact open. Assume
fis affine, of finite presentation, flat, with geometrically integral fibres;Fis of finite type;Frestricted toX_Uis of finite presentation;Fis flat overSat every generic point of a fibre over a point ofU.Then there is a
U-admissible blowup ofS— given by a centreIof finite presentation whose support avoidsU— and an open subschemeVofX ×_S Bl_I(S)such that
- (a) the strict transform of
Falong the blowup is free of finite rank on an open neighbourhood, insideV, of every point ofV, that is, finitely locally free onV, and- (b)
Vsurjects ontoBl_I(S).The rank at the generic point of a fibre over
Uis made constant by iterating [Stacks, Tag 080P]; the complement ofUis made an effective Cartier divisor and then, locally on the base, principal on an affine open, by the observations of [Stacks, Tag 080Y]; and that case is [Stacks, Tag 0810].
theorem exists_isAdmissibleBlowup_opens_finitelyLocallyFree_surjective
{S X : Scheme.{u}} [CompactSpace S] [QuasiSeparatedSpace S] (f : X ⟶ S)
[IsAffineHom f] [Flat f] [GeometricallyIntegral f]
(hf : AlgebraicGeometry.FinitePresentation f)
(F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType] (U : S.Opens)
(hU : IsCompact (U : Set S))
(hFU : (F.restrict (f ⁻¹ᵁ U).ι).IsFinitePresentation)
(hflat : ∀ x : X, f.base x ∈ U → f.base ⁻¹' {f.base x} ⊆ closure {x} →
IsFlatOverAt f.toLRSHom.toShHom F x) :
∃ I : S.IdealSheafData,
FinitePresentation I.subschemeι ∧
Disjoint (U : Set S) (I.support : Set S) ∧
Stacks.Blowup.IsAdmissibleBlowup U (blowUpToBase I) ∧
∃ V : (Stacks.StrictTransform.baseChange f (blowUpToBase I)).Opens,
(∀ z : Stacks.StrictTransform.baseChange f (blowUpToBase I), z ∈ V →
∃ (W : (Stacks.StrictTransform.baseChange f (blowUpToBase I)).Opens) (n : ℕ),
z ∈ W ∧ W ≤ V ∧
Nonempty ((Stacks.StrictTransform.sheaf f (blowUpToBase I)
(exceptionalIdeal I) F).restrict W.ι ≅
SheafOfModules.free.{u} (ULift.{u} (Fin n)))) ∧
Function.Surjective (V.ι ≫ pullback.snd f (blowUpToBase I)).base
Tag 0812, a lemma
Tag 0812 in the Stacks Project.
fittingIdealZero_quotient_fg, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/FittingIdealEtale.lean, line 83. The attribute's comment: “finite generation of the Fitting ideal”.
Stacks Project, Tag 0812. The zeroth Fitting ideal of a quotient of a finite projective algebra by a finitely generated ideal is finitely generated.
theorem fittingIdealZero_quotient_fg
(A : Type u) (C : Type v) [CommRing A] [CommRing C] [Algebra A C]
[Module.Finite A C] [Module.Projective A C] (J : Ideal C) (hJ : J.FG) :
(fittingIdeal (R := A) (M := C ⧸ J) 0).FG
map_fittingIdealZero_quotient_eq_mul_of_etale_away, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/FittingIdealEtale.lean, line 263. The attribute's comment: “factorization after localization”.
Stacks Project, Tag 0812. Let
Cbe a finite locally freeA-algebra and letJbe an ideal ofC. IfCbecomes étale overAafter invertingh, then the extension of the zeroth Fitting ideal ofC ⧸ Jis the product of the extension ofJwith another ideal. This other ideal can be chosen finitely generated wheneverJis finitely generated.
theorem map_fittingIdealZero_quotient_eq_mul_of_etale_away
(A : Type u) (C : Type v) [CommRing A] [CommRing C] [Algebra A C]
[Module.Finite A C] [Module.Projective A C] (h : C)
(het : Algebra.Etale A (Localization.Away h)) (J : Ideal C) :
∃ J' : Ideal (Localization.Away h),
(fittingIdeal (R := A) (M := C ⧸ J) 0).map (algebraMap A (Localization.Away h)) =
J.map (algebraMap C (Localization.Away h)) * J' ∧
(J.FG → J'.FG)
Tag 0813, a lemma
Tag 0813 in the Stacks Project.
exists_ideal_map_eq_mul_after_localization, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/FittingIdealEtale.lean, line 403.
Stacks Project, Tag 0813. Let
A → Bbe étale, leta ∈ A, and letJbe a finitely generated ideal ofBwithV(J) ⊆ V(aB). At every primeqofB, after localizing at someg ∉ q, the extension of a finitely generated idealIofA, withV(I) ⊆ V(a), is the product of the extension ofJand a finitely generated ideal.
theorem exists_ideal_map_eq_mul_after_localization
(A : Type u) (B : Type v) [CommRing A] [CommRing B] [Algebra A B]
[Algebra.Etale A B] (a : A) (J : Ideal B) (hJ : J.FG)
(hV : algebraMap A B a ∈ J.radical) (q : Ideal B) [q.IsPrime] :
∃ I : Ideal A, I.FG ∧ a ∈ I.radical ∧
∃ g : B, g ∉ q ∧
∃ J' : Ideal (Localization.Away g), J'.FG ∧
Ideal.map ((algebraMap B (Localization.Away g)).comp (algebraMap A B)) I =
Ideal.map (algebraMap B (Localization.Away g)) J * J'
Tag 0814, a lemma
Tag 0814 in the Stacks Project.
AlgebraicGeometry.exists_isAdmissibleBlowup_isFlatOver_strictTransformSheaf, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/EtaleLocalFlatteningDescent.lean, line 106. The attribute's comment: “the surjectivity half of condition (1) is not assumed; it is unused”.
Stacks Project, Tag 0814. Let
Sbe a quasi-compact and quasi-separated scheme, letf : X ⟶ Sbe a morphism of schemes, letFbe a quasi-coherent𝒪_X-module and letU ⊆ Sbe a quasi-compact open. Assume given finitely many commutative squaresjᵢ ≫ f = fᵢ ≫ eᵢwith
eᵢ : Sᵢ ⟶ Squasi-compact and étale,jᵢ : Xᵢ ⟶ Xétale and jointly surjective,- a centre
IᵢonSᵢwhich is finitely presented as a closed subscheme and supported away fromeᵢ⁻¹(U)— so the blowup ofSᵢinIᵢis aneᵢ⁻¹(U)-admissible blowup — such that the strict transform ofjᵢ^* Falong it is flat over it.Then there is a centre
IonS, finitely presented and supported away fromU, exhibiting the blowup ofSinIas aU-admissible blowup, such that the strict transform ofFalong that blowup is flat over it.
theorem exists_isAdmissibleBlowup_isFlatOver_strictTransformSheaf {S X : Scheme.{u}}
[CompactSpace S] [QuasiSeparatedSpace S] (f : X ⟶ S) (F : X.Modules) [F.IsQuasicoherent]
(U : S.Opens) (hU : IsCompact (U : Set S)) {ι : Type*} [Finite ι]
(Sᵢ Xᵢ : ι → Scheme.{u}) (e : ∀ i, Sᵢ i ⟶ S) (j : ∀ i, Xᵢ i ⟶ X)
(fᵢ : ∀ i, Xᵢ i ⟶ Sᵢ i) (Iᵢ : ∀ i, (Sᵢ i).IdealSheafData)
(he : ∀ i, Etale (e i) ∧ QuasiCompact (e i)) (hj : ∀ i, Etale (j i))
(hcoverX : ∀ x : X, ∃ i : ι, ∃ y : Xᵢ i, (j i).base y = x)
(hcomm : ∀ i, j i ≫ f = fᵢ i ≫ e i)
(hadm : ∀ i, FinitePresentation (Iᵢ i).subschemeι ∧
Disjoint (e i ⁻¹ᵁ U : Set (Sᵢ i)) ((Iᵢ i).support : Set (Sᵢ i)))
(hflat : ∀ i, IsFlatOver
(pullback.snd (fᵢ i) (blowUpToBase (Iᵢ i))).toLRSHom.toShHom
(Stacks.StrictTransform.sheaf (fᵢ i) (blowUpToBase (Iᵢ i)) (exceptionalIdeal (Iᵢ i))
((Scheme.Modules.pullback (j i)).obj F))) :
∃ I : S.IdealSheafData,
FinitePresentation I.subschemeι ∧
Disjoint (U : Set S) (I.support : Set S) ∧
Stacks.Blowup.IsAdmissibleBlowup U (blowUpToBase I) ∧
IsFlatOver (pullback.snd f (blowUpToBase I)).toLRSHom.toShHom
(Stacks.StrictTransform.sheaf f (blowUpToBase I) (exceptionalIdeal I) F)
Tag 0815, a theorem
Tag 0815 in the Stacks Project.
AlgebraicGeometry.exists_isAdmissibleBlowup_isFlatOver_strictTransformSheaf_of_affineCharts, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/ModuleFlatteningBlowup.lean, line 129.
Stacks Project, Tag 0815. Let
Sbe a quasi-compact and quasi-separated scheme, letf : X ⟶ Sbe locally of finite presentation withXquasi-compact, letFbe a quasi-coherent𝒪_X-module of finite type and letU ⊆ Sbe a quasi-compact open such that the restriction ofFtof⁻¹(U)is of finite presentation and flat overU. Then there is a centreIonS, finitely presented and supported away fromU, exhibiting the blowup ofSinIas aU-admissible blowup, such that the strict transform ofFalong that blowup is an𝒪_{X ×_S S'}-module of finite presentation and flat over the blowup.The centre is the one of
AlgebraicGeometry.exists_flatteningCentre_supportSet_eq_compl, whose support isS ∖ U; so the inverse image ofUin the blowup is the complement of the exceptional divisor, hence retrocompact and scheme-theoretically dense, and [Stacks, Tag 081N] gives finite presentation of the flat strict transform from its finite presentation over that open.
theorem exists_isAdmissibleBlowup_isFlatOver_strictTransformSheaf_of_affineCharts
[CompactSpace S] [QuasiSeparatedSpace S] [CompactSpace X] (f : X ⟶ S)
[LocallyOfFinitePresentation f] (F : X.Modules) [F.IsQuasicoherent] [F.IsFiniteType]
(U : S.Opens) (hU : IsCompact (U : Set S))
(hFfp : ((Scheme.Modules.pullback (f ⁻¹ᵁ U).ι).obj F).IsFinitePresentation)
(hFflat : IsFlatOver (f ∣_ U).toLRSHom.toShHom
((Scheme.Modules.pullback (f ⁻¹ᵁ U).ι).obj F)) :
∃ I : S.IdealSheafData,
FinitePresentation I.subschemeι ∧
Disjoint (U : Set S) (I.support : Set S) ∧
Stacks.Blowup.IsAdmissibleBlowup U (blowUpToBase I) ∧
(Stacks.StrictTransform.sheaf f (blowUpToBase I)
(exceptionalIdeal I) F).IsFinitePresentation ∧
IsFlatOver (pullback.snd f (blowUpToBase I)).toLRSHom.toShHom
(Stacks.StrictTransform.sheaf f (blowUpToBase I) (exceptionalIdeal I) F)
Sources
Section38.31 Applications#
Section 38.31 of the Stacks Project, Tag 081Q. 5 tags here are carried by 10 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 081R, a lemma
Tag 081R in the Stacks Project.
AlgebraicGeometry.exists_isAdmissibleBlowup_flat_finitePresentation_strictTransform_of_affineCase, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/StrictTransformFinitePresentationFromFlat.lean, line 407. The attribute's comment: “the conclusion in full -- the strict transform flat AND of finite presentation -- under exactly the source's hypotheses (1) and (2): the affine case of the flatness assertion of [Stacks, Tag 0815] that the proof consumes is AlgebraicGeometry.AffineChartFlatteningCentreUnderSourceHypotheses.of_compactSpace, itself proved from [Stacks, Tag 0811]”.
Stacks Project, Tag 081R. Let
Sbe a quasi-compact and quasi-separated scheme, letf : X ⟶ Sbe of finite type and quasi-separated and letU ⊆ Sbe a quasi-compact open such thatX_U ⟶ Uis flat and locally of finite presentation. Then there is aU-admissible blowup ofSalong which the strict transform ofXis flat and of finite presentation.Both hypotheses of the source are present: (1)
fof finite type and quasi-separated, and (2)X_U ⟶ Uflat and locally of finite presentation. Hypothesis (2) is whatexists_isAdmissibleBlowup_flat_finitePresentation_strictTransform_of_affineChartsandAlgebraicGeometry.exists_isAdmissibleBlowup_flat_strictTransformomit the flatness half of, on the ground that it enters only through the affine case they take as an input. It does enter only through it, but the hypothesis-freeAlgebraicGeometry.AffineChartFlatteningCentrethat those forms take is false in general, so no proof of the affine case can supply it. With hypothesis (2) present the chain closes:AlgebraicGeometry.AffineChartFlatteningCentre.of_affineCaseproduces the chart predicate precisely from hypothesis (2), by the source's own route through the immersion into affine space of [Stacks, Tag 04II], and the affine case it calls on isAffineChartFlatteningCentreUnderSourceHypotheses.of_compactSpace, itself proved from [Stacks, Tag 0811].
theorem exists_isAdmissibleBlowup_flat_finitePresentation_strictTransform_of_affineCase
[CompactSpace S] [QuasiSeparatedSpace S] [LocallyOfFiniteType f] [QuasiCompact f]
[QuasiSeparated f] (U : S.Opens) (hU : IsCompact (U : Set S)) (hflat : Flat (f ∣_ U))
(hfp : LocallyOfFinitePresentation (f ∣_ U)) :
∃ ℐ : S.IdealSheafData,
FinitePresentation ℐ.subschemeι ∧
Disjoint (U : Set S) (ℐ.support : Set S) ∧
Stacks.Blowup.IsAdmissibleBlowup U (blowUpToBase ℐ) ∧
Flat (strictTransformToBlowUp f ℐ) ∧
FinitePresentation (strictTransformToBlowUp f ℐ)
AlgebraicGeometry.exists_isAdmissibleBlowup_flat_strictTransform, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/StrictTransformSchemeFlattening.lean, line 195. The attribute's comment: “the flatness assertion of the conclusion; the affine case is carried as the hypothesis AlgebraicGeometry.AffineChartFlatteningCentre, inherited from the flatness half of [Stacks, Tag 0815], and hypothesis (2) of the source — X_U ⟶ U flat and locally of finite presentation — is not assumed separately because it enters only through that hypothesis; finite presentation of the strict transform is not claimed”.
Stacks Project, Tag 081R, flatness assertion. Let
Sbe a quasi-compact and quasi-separated scheme, letf : X ⟶ Sbe of finite type and quasi-separated and letU ⊆ Sbe a quasi-compact open. Granted the affine caseAlgebraicGeometry.AffineChartFlatteningCentrefor the structure sheaf ofX, there is a centreIonS, finitely presented and supported away fromU, exhibiting the blowup ofSinIas aU-admissible blowup, such that the strict transform ofXalong that blowup is flat over it.The flatness assertion of [Stacks, Tag 0815] for
𝒪_Xgives the centre and the flatness of the strict transform of𝒪_X, andAlgebraicGeometry.flat_strictTransformToBlowUp_iffreads that as flatness of the strict transform ofX.
theorem exists_isAdmissibleBlowup_flat_strictTransform [CompactSpace S] [QuasiSeparatedSpace S]
[LocallyOfFiniteType f] [QuasiCompact f] [QuasiSeparated f] (U : S.Opens)
(hU : IsCompact (U : Set S)) (H : AffineChartFlatteningCentre f X.unitModule U) :
∃ I : S.IdealSheafData,
FinitePresentation I.subschemeι ∧
Disjoint (U : Set S) (I.support : Set S) ∧
Stacks.Blowup.IsAdmissibleBlowup U (blowUpToBase I) ∧
Flat (strictTransformToBlowUp f I)
Tag 0B49, a lemma
Tag 0B49 in the Stacks Project.
AlgebraicGeometry.exists_isAdmissibleBlowup_isFiniteLocallyFree_strictTransform, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Applications/FiniteLocallyFreeStrictTransform.lean, line 155. The attribute's comment: “the conclusion of Tag 081R -- a U-admissible centre whose strict transform is flat and locally of finite presentation -- is carried as the hypothesis h081R. The library proves its first three clauses in AlgebraicGeometry.exists_isAdmissibleBlowup_flat_strictTransform, itself carrying the affine case AffineChartFlatteningCentre of Tag 0815, and does not claim the fourth, local finite presentation of the strict transform, at all. Everything else is proved here: the composite centre and its finite presentation, its support being exactly the complement of U, its admissibility, the two-step-blowup identification, vanishing of the second strict-transform ideal by flatness, density of the inverse image of U, and the passage to finite locally free”.
Stacks Project, Tag 0B49. Let
Sbe a quasi-compact and quasi-separated scheme, letf : X ⟶ Sbe proper and letU ⊆ Sbe a quasi-compact open over whichXis finite locally free. Granted the conclusion of [Stacks, Tag 081R] forfandU, there is aU-admissible blowup ofSalong which the strict transform ofXis finite locally free.
theorem exists_isAdmissibleBlowup_isFiniteLocallyFree_strictTransform {X S : Scheme.{u}}
[CompactSpace S] [QuasiSeparatedSpace S] (f : X ⟶ S) [IsProper f] (U : S.Opens)
(hU : IsCompact (U : Set S))
[Stacks.Morphisms.IsFiniteLocallyFree (pullback.snd f U.ι)]
(h081R : ∃ I : S.IdealSheafData,
FinitePresentation I.subschemeι ∧ Disjoint (U : Set S) (I.support : Set S) ∧
Flat (strictTransformToBlowUp f I) ∧
LocallyOfFinitePresentation (strictTransformToBlowUp f I)) :
∃ I : S.IdealSheafData,
Stacks.Blowup.IsAdmissibleBlowup U (blowUpToBase I) ∧
Stacks.Morphisms.IsFiniteLocallyFree (strictTransformToBlowUp f I)
AlgebraicGeometry.exists_isAdmissibleBlowup_isFiniteLocallyFree_strictTransform_of_isProper, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Applications/FiniteLocallyFreeStrictTransformOfProper.lean, line 46. The attribute's comment: “the conclusion in full, under exactly the source's hypotheses (1) and (2)”.
Stacks Project, Tag 0B49. Let
Sbe a quasi-compact and quasi-separated scheme, letf : X ⟶ Sbe proper and letU ⊆ Sbe a quasi-compact open over whichXis finite locally free. Then there is aU-admissible blowup ofSalong which the strict transform ofXis finite locally free.
theorem exists_isAdmissibleBlowup_isFiniteLocallyFree_strictTransform_of_isProper
{X S : Scheme.{u}} [CompactSpace S] [QuasiSeparatedSpace S] (f : X ⟶ S) [IsProper f]
(U : S.Opens) (hU : IsCompact (U : Set S))
[Stacks.Morphisms.IsFiniteLocallyFree (pullback.snd f U.ι)] :
∃ I : S.IdealSheafData,
Stacks.Blowup.IsAdmissibleBlowup U (blowUpToBase I) ∧
Stacks.Morphisms.IsFiniteLocallyFree (strictTransformToBlowUp f I)
Tag 081S, a lemma
Tag 081S in the Stacks Project.
AlgebraicGeometry.exists_isAdmissibleBlowup_isOpenImmersion_strictTransform, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Compactification/StrictTransformOpenSubscheme.lean, line 55.
Let
f : X ⟶ Sbe a separated morphism of finite type withSquasi-compact and quasi-separated, and letU ⊆ Sbe a quasi-compact open such thatfis an isomorphism overU. Then there is a centreMonS, finitely presented and supported away fromU, such that the blowup ofSinMisU-admissible and the strict transform ofXalong it is an open subscheme of that blowup.
theorem exists_isAdmissibleBlowup_isOpenImmersion_strictTransform {X S : Scheme.{u}} (f : X ⟶ S)
[IsSeparated f] [LocallyOfFiniteType f] [QuasiCompact f]
[CompactSpace S] [QuasiSeparatedSpace S] (U : S.Opens) (hU : IsCompact (U : Set S))
[IsIso (f ∣_ U)] :
∃ M : S.IdealSheafData, FinitePresentation M.subschemeι ∧
Disjoint (U : Set S) (M.support : Set S) ∧
Stacks.Blowup.IsAdmissibleBlowup U (blowUpToBase M) ∧
IsOpenImmersion (strictTransformToBlowUp f M)
AlgebraicGeometry.strictTransformOpenImmersion_of_isIso_morphismRestrict, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Compactification/StrictTransformOpenSubscheme.lean, line 142.
A separated morphism of finite type which is an isomorphism over a quasi-compact open
Uof a quasi-compact quasi-separated base satisfiesAlgebraicGeometry.StrictTransformOpenImmersion: along the blowup in some finitely presented centre avoidingU, its strict transform is an open subscheme of the blowup.
theorem strictTransformOpenImmersion_of_isIso_morphismRestrict {X S : Scheme.{u}} (f : X ⟶ S)
[IsSeparated f] [LocallyOfFiniteType f] [QuasiCompact f]
[CompactSpace S] [QuasiSeparatedSpace S] (U : S.Opens) (hU : IsCompact (U : Set S))
[IsIso (f ∣_ U)] : StrictTransformOpenImmersion f U
Tag 081T, a lemma
Tag 081T in the Stacks Project.
AlgebraicGeometry.exists_isAdmissibleBlowup_dominating, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Blowup/DominatedByBlowup.lean, line 203. The attribute's comment: “conditional on cited 080Y and 081S, carried as hypotheses; qc/qs dropped”.
Stacks Project, Tag 081T. A proper morphism
f : X ⟶ Swhich is an isomorphism over an openU ⊆ Sis dominated by aU-admissible blowup: there are aU-admissible blowupb : S' ⟶ Sand a morphismg : S' ⟶ Xwithg ≫ f = b.
public theorem exists_isAdmissibleBlowup_dominating (f : X ⟶ S) [IsProper f] (U : S.Opens)
[IsIso (f ∣_ U)] (h080Y : CartierBoundaryReduction S U)
(h081S : StrictTransformOpenImmersion f U) :
∃ (S' : Scheme.{u}) (b : S' ⟶ S),
Stacks.Blowup.IsAdmissibleBlowup U b ∧ ∃ g : S' ⟶ X, g ≫ f = b
AlgebraicGeometry.exists_isAdmissibleBlowup_dominating_of_affineCase, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Blowup/DominatingBlowupFromFlattening.lean, line 90. The attribute's comment: “the conclusion in full, under exactly the source's hypotheses: the cited [Stacks, Tag 080Y] is supplied by AlgebraicGeometry.cartierBoundaryReduction and the cited [Stacks, Tag 081S] by AlgebraicGeometry.strictTransformOpenImmersion_of_isIso_morphismRestrict, each of which stands on its own hypotheses alone”.
Stacks Project, Tag 081T. Let
f : X ⟶ Sbe a proper morphism withSquasi-compact and quasi-separated, and letU ⊆ Sbe a quasi-compact open such thatfis an isomorphism overU. Then there is aU-admissible blowupb : S' ⟶ Swhich dominatesX: a morphismg : S' ⟶ Xwithg ≫ f = b.The hypotheses are exactly the source's. Both results the source cites are supplied by proved declarations: [Stacks, Tag 080Y] by
AlgebraicGeometry.cartierBoundaryReductionand [Stacks, Tag 081S] byAlgebraicGeometry.strictTransformOpenImmersion_of_isIso_morphismRestrict, each of which stands on its own hypotheses alone.
theorem exists_isAdmissibleBlowup_dominating_of_affineCase (f : X ⟶ S) [IsProper f]
[CompactSpace S] [QuasiSeparatedSpace S] (U : S.Opens) (hU : IsCompact (U : Set S))
[IsIso (f ∣_ U)] :
∃ (S' : Scheme.{u}) (b : S' ⟶ S),
Stacks.Blowup.IsAdmissibleBlowup U b ∧ ∃ g : S' ⟶ X, g ≫ f = b
Tag 0CP1, a lemma
Tag 0CP1 in the Stacks Project.
AlgebraicGeometry.exists_isAdmissibleBlowup_extending_section, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Blowup/SectionExtension.lean, line 96. The attribute's comment: “with Stacks 080Y and 081S as hypotheses, in the shape Stacks 081T consumes them”.
Stacks Project, Tag 0CP1. Let
Sbe a quasi-compact and quasi-separated scheme, letW ⊆ Sbe a quasi-compact open subscheme and letU ⊆ Wbe a quasi-compact open subscheme. Letf : X ⟶ Wbe proper and lets : U ⟶ Xsatisfys ≫ f = U.ι. Then there is aU-admissible blowupb : S' ⟶ Sand a morphisms' : b⁻¹(W) ⟶ Xwiths' ≫ f = b|_{b⁻¹(W)}extendings, the extension being witnessed by a morphismt : U ⟶ b⁻¹(W)overW.
theorem exists_isAdmissibleBlowup_extending_section [CompactSpace S] [QuasiSeparatedSpace S]
(W : S.Opens) (U : W.toScheme.Opens) (hW : IsCompact (W : Set S))
(hU : IsCompact (U : Set W.toScheme)) (f : X ⟶ W.toScheme) [IsProper f]
(s : U.toScheme ⟶ X) (hs : s ≫ f = U.ι)
(h080Y : CartierBoundaryReduction W.toScheme U)
(h081S : StrictTransformOpenImmersion (s.imageι ≫ f) U) :
∃ (S' : Scheme.{u}) (b : S' ⟶ S),
Stacks.Blowup.IsAdmissibleBlowup (W.ι ''ᵁ U) b ∧
∃ s' : (b ⁻¹ᵁ W).toScheme ⟶ X,
s' ≫ f = b ∣_ W ∧
∃ t : U.toScheme ⟶ (b ⁻¹ᵁ W).toScheme, t ≫ b ∣_ W = U.ι ∧ t ≫ s' = s
AlgebraicGeometry.exists_isAdmissibleBlowup_extending_section_of_qcqs, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Blowup/SectionExtensionOfQcqs.lean, line 46. The attribute's comment: “the conclusion in full, under exactly the source's hypotheses (1)-(3)”.
Stacks Project, Tag 0CP1. Let
Sbe a quasi-compact and quasi-separated scheme, letW ⊆ Sbe a quasi-compact open subscheme and letU ⊆ Wbe a quasi-compact open subscheme. Letf : X ⟶ Wbe proper and lets : U ⟶ Xsatisfys ≫ f = U.ι. Then there is aU-admissible blowupb : S' ⟶ Sand a morphisms' : b⁻¹(W) ⟶ Xwiths' ≫ f = b|_{b⁻¹(W)}extendings, the extension being witnessed by a morphismt : U ⟶ b⁻¹(W)overW.
theorem exists_isAdmissibleBlowup_extending_section_of_qcqs [CompactSpace S]
[QuasiSeparatedSpace S] (W : S.Opens) (U : W.toScheme.Opens) (hW : IsCompact (W : Set S))
(hU : IsCompact (U : Set W.toScheme)) (f : X ⟶ W.toScheme) [IsProper f]
(s : U.toScheme ⟶ X) (hs : s ≫ f = U.ι) :
∃ (S' : Scheme.{u}) (b : S' ⟶ S),
Stacks.Blowup.IsAdmissibleBlowup (W.ι ''ᵁ U) b ∧
∃ s' : (b ⁻¹ᵁ W).toScheme ⟶ X,
s' ≫ f = b ∣_ W ∧
∃ t : U.toScheme ⟶ (b ⁻¹ᵁ W).toScheme, t ≫ b ∣_ W = U.ι ∧ t ≫ s' = s
Sources
Section38.32 Compactifications#
Section 38.32 of the Stacks Project, Tag 0ATT. 4 tags here are carried by 9 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 0ATU, a lemma
Tag 0ATU in the Stacks Project.
AlgebraicGeometry.CategoryOfCompactifications.isCofiltered_category, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Compactification/DenseInterior.lean, line 267. The attribute's comment: “part (a)”.
The category of compactifications of a scheme over a quasi-compact, quasi-separated base is cofiltered.
theorem isCofiltered_category : IsCofiltered D.category
AlgebraicGeometry.CategoryOfCompactifications.initial_ι_hasDenseInterior, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Compactification/DenseInterior.lean, line 283. The attribute's comment: “part (b)”.
The full subcategory of compactifications whose interior is dense and scheme-theoretically dense is initial.
theorem initial_ι_hasDenseInterior : (HasDenseInterior D.X).ι.Initial
AlgebraicGeometry.preimage_range_immersion_eq, a lemma in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/Compactifications.lean, line 140. The attribute's comment: “preimage_of_interior”.
Stacks Project, Tag 0ATU. For a morphism between compactifications whose source interior is dense, the inverse image of the target interior is exactly the source interior.
lemma preimage_range_immersion_eq
(D : CategoryOfCompactifications.{u}) (j' j : D.category) (f : j' ⟶ j)
(hdense : DenseRange j'.immersion.base) :
(CompactificationOf.Hom.map f).base ⁻¹'
Set.range j.immersion.base = Set.range j'.immersion.base
AlgebraicGeometry.CategoryOfCompactifications.isCofiltered, an instance in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/CompactificationsCofiltered.lean, line 167. The attribute's comment: “cofiltered”.
Stacks Project, Tag 0ATU. The category of compactifications of a scheme over a quasi-compact and quasi-separated base is cofiltered.
instance isCofiltered : IsCofiltered D.category
AlgebraicGeometry.CategoryOfCompactifications.denseCompactification_initial, an instance in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/CompactificationsCofiltered.lean, line 195. The attribute's comment: “dense_compactifications_initial”.
Stacks Project, Tag 0ATU. The compactifications in which the image of
Xis dense and scheme-theoretically dense form an initial full subcategory of the category of all compactifications.
instance denseCompactification_initial :
(ObjectProperty.ι (IsDenseCompactification D : ObjectProperty D.category)).Initial
Tag 0A9Z, a lemma
Tag 0A9Z in the Stacks Project.
AlgebraicGeometry.exists_quasiCompact_compactification_over, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Compactification/OverIntermediate.lean, line 47. References: SGA 4 XVII (3.2.2), “(v)”.
A compactifiable
S-scheme is also compactifiable over a separated finite-typeS-scheme through which its structure morphism factors.
theorem exists_quasiCompact_compactification_over
{X Y S : Scheme.{u}} (f : X ⟶ Y) (g : Y ⟶ S)
[CompactSpace S] [QuasiSeparatedSpace S]
[IsSeparated g] [LocallyOfFiniteType g] [QuasiCompact g]
(hX : ∃ j : CompactificationOf (Over.mk (f ≫ g)),
QuasiCompact j.immersion) :
∃ j : CompactificationOf (Over.mk f),
QuasiCompact j.immersion
Tag 0ATV, a lemma
Tag 0ATV in the Stacks Project.
AlgebraicGeometry.interiorIsomorphisms_hasRightCalculusOfFractions, an instance in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Flattening/CompactificationFractions.lean, line 365.
Stacks Project, Tag 0ATV. Morphisms of compactifications inducing an isomorphism on the open subschemes form a right multiplicative system.
instance interiorIsomorphisms_hasRightCalculusOfFractions (S : Scheme.{u}) :
(interiorIsomorphisms S).HasRightCalculusOfFractions
Tag 0ATW, a lemma
Tag 0ATW in the Stacks Project.
AlgebraicGeometry.localizedInteriorEquivalence, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Compactification/LocalizationEquivalence.lean, line 390. The attribute's comment: “the equivalence”.
Stacks Project, Tag 0ATW. The equivalence induced by forgetting the ambient proper scheme after localizing compactifications at interior isomorphisms.
noncomputable def localizedInteriorEquivalence (S : Scheme.{u})
[CompactSpace S] [QuasiSeparatedSpace S] :
(interiorIsomorphisms S).Localization ≌ Compactifyable S
AlgebraicGeometry.localizedInteriorEquivalenceCompQ, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Compactification/LocalizationEquivalence.lean, line 404. The attribute's comment: “the forgetful functor”.
Stacks Project, Tag 0ATW. The equivalence extends the forgetful functor from compactifications, up to a canonical natural isomorphism.
noncomputable def localizedInteriorEquivalenceCompQ (S : Scheme.{u})
[CompactSpace S] [QuasiSeparatedSpace S] :
(interiorIsomorphisms S).Q ⋙
(localizedInteriorEquivalence S).functor ≅ compactificationInterior S
Sources
Section38.33 Nagata compactification#
Section 38.33 of the Stacks Project, Tag 0F3T. 8 tags here are carried by 10 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.
Tag 0F3U, a lemma
Tag 0F3U in the Stacks Project.
AlgebraicGeometry.isSeparated_of_sup_eq_top_of_isClosedImmersion_mapDesc, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Compactification/SeparatedTwoOpens.lean, line 47.
Stacks Project, Tag 0F3U. Two separated open subschemes covering the source, whose overlap is closed in their fibre product over the base, give a separated morphism.
theorem isSeparated_of_sup_eq_top_of_isClosedImmersion_mapDesc
{X S : Scheme.{u}} (f : X ⟶ S) (U V : X.Opens)
(hcover : U ⊔ V = ⊤)
[IsSeparated (U.ι ≫ f)] [IsSeparated (V.ι ≫ f)]
(hUV : IsClosedImmersion (pullback.mapDesc U.ι V.ι f)) :
IsSeparated f
Tag 0F3V, a lemma
Tag 0F3V in the Stacks Project.
AlgebraicGeometry.exists_isAdmissibleBlowup_disjoint_strictTransforms, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Blowup/Separation.lean, line 331. The attribute's comment: “separate_strict_transforms”.
Stacks Project, Tag 0F3V, part (1). Let
Xbe a quasi-compact and quasi-separated scheme andU ⊆ Xan open. LetZ₁ = V(ℐ₁)andZ₂ = V(ℐ₂)be closed subschemes of finite presentation which do not meet insideU. Then there is a centre of finite presentation disjoint fromU— so that the blowup ofXin it is aU-admissible blowup — on which the strict transforms ofZ₁andZ₂are disjoint.Quasi-compactness of
Uis not needed; see the implementation notes of this file.
theorem exists_isAdmissibleBlowup_disjoint_strictTransforms [CompactSpace X]
[QuasiSeparatedSpace X] (U : X.Opens) (I₁ I₂ : X.IdealSheafData)
(h₁ : FinitePresentation I₁.subschemeι) (h₂ : FinitePresentation I₂.subschemeι)
(hdisj : Disjoint ((U : Set X) ∩ (I₁.support : Set X)) (I₂.support : Set X)) :
∃ I : X.IdealSheafData, Stacks.Blowup.IsAdmissibleBlowup U (blowUpToBase I) ∧
Disjoint (U : Set X) (I.support : Set X) ∧
Disjoint (Set.range (strictTransformToBlowUp I₁.subschemeι I).base)
(Set.range (strictTransformToBlowUp I₂.subschemeι I).base)
AlgebraicGeometry.exists_isAdmissibleBlowup_disjoint_closures, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Blowup/Separation.lean, line 474. The attribute's comment: “separate_constructible_closures”.
Stacks Project, Tag 0F3V, part (2). Let
Xbe a quasi-compact and quasi-separated scheme, letU ⊆ Xbe a quasi-compact open and letT₁, T₂ ⊆ Ube disjoint constructible closed subsets. Then there is aU-admissible blowupX' ⟶ Xin which the closures ofT₁andT₂are disjoint.This is part (1) applied to closed subschemes of
Xcutting outT₁andT₂onU: the closure of the preimage ofTᵢis contained in the strict transform of thei-th subscheme, which is closed because the subscheme is a closed subscheme ofX.
theorem exists_isAdmissibleBlowup_disjoint_closures [CompactSpace X] [QuasiSeparatedSpace X]
(U : X.Opens) (hU : IsCompact (U : Set X)) (T₁ T₂ : Set U.toScheme)
(hT₁ : IsClosed T₁) (hT₂ : IsClosed T₂) (hc₁ : Topology.IsConstructible T₁)
(hc₂ : Topology.IsConstructible T₂) (hdisj : Disjoint T₁ T₂) :
∃ (X' : Scheme.{u}) (f : X' ⟶ X), Stacks.Blowup.IsAdmissibleBlowup U f ∧
Disjoint (closure (f.base ⁻¹' (U.ι.base '' T₁)))
(closure (f.base ⁻¹' (U.ι.base '' T₂)))
Tag 0F3W, a lemma
Tag 0F3W in the Stacks Project.
AlgebraicGeometry.exists_isAdmissibleBlowup_strictTransform_isIso_near_closure, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Compactification/IsoNearClosure.lean, line 178.
Stacks Project, Tag 0F3W. A proper morphism which is an isomorphism over an open containing a subset
Tclosed in a quasi-compact openVbecomes, after aV-admissible blowup, a morphism whose strict transform is an isomorphism over an open neighbourhood of the closure of the inverse image ofT.
theorem exists_isAdmissibleBlowup_strictTransform_isIso_near_closure
{X Y : Scheme.{u}} (f : X ⟶ Y) [IsProper f]
[CompactSpace X] [QuasiSeparatedSpace X]
[CompactSpace Y] [QuasiSeparatedSpace Y]
(V : Y.Opens) (hV : IsCompact (V : Set Y))
(T : Set Y) (hTV : T ⊆ (V : Set Y))
(hT : IsClosed (V.ι.base ⁻¹' T))
(hiso : ∃ W : Y.Opens, W ≤ V ∧ T ⊆ (W : Set Y) ∧ IsIso (f ∣_ W)) :
∃ I : Y.IdealSheafData,
FinitePresentation I.subschemeι ∧
Disjoint (V : Set Y) (I.support : Set Y) ∧
∃ W : (blowUp I).Opens,
closure ((blowUpToBase I).base ⁻¹' T) ⊆ (W : Set (blowUp I)) ∧
IsIso (strictTransformToBlowUp f I ∣_ W)
Tag 0F3X, a lemma
Tag 0F3X in the Stacks Project.
AlgebraicGeometry.exists_common_isAdmissibleBlowup_isOpenImmersion, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Compactification/CommonAdmissibleBlowups.lean, line 214.
Stacks Project, Tag 0F3X. Let
Sbe a quasi-compact and quasi-separated scheme and letu₁ : U ⟶ X₁andu₂ : U ⟶ X₂be open immersions of schemes overS, withU,X₁andX₂of finite type and separated overS. Then there is a commutative diagram of schemes overSin whichXᵢ' ⟶ Xᵢis aU-admissible blowup,Xᵢ' ⟶ Xis an open immersion, andXis separated and of finite type overS.
theorem exists_common_isAdmissibleBlowup_isOpenImmersion {S U X₁ X₂ : Scheme.{u}}
[CompactSpace S] [QuasiSeparatedSpace S]
(fU : U ⟶ S) (f₁ : X₁ ⟶ S) (f₂ : X₂ ⟶ S)
[LocallyOfFiniteType fU] [QuasiCompact fU] [IsSeparated fU]
[LocallyOfFiniteType f₁] [QuasiCompact f₁] [IsSeparated f₁]
[LocallyOfFiniteType f₂] [QuasiCompact f₂] [IsSeparated f₂]
(u₁ : U ⟶ X₁) (u₂ : U ⟶ X₂) [IsOpenImmersion u₁] [IsOpenImmersion u₂]
(hu₁ : u₁ ≫ f₁ = fU) (hu₂ : u₂ ≫ f₂ = fU) :
∃ (X₁' X₂' X : Scheme.{u}) (b₁ : X₁' ⟶ X₁) (b₂ : X₂' ⟶ X₂)
(j₁ : X₁' ⟶ X) (j₂ : X₂' ⟶ X)
(v₁ : U ⟶ X₁') (v₂ : U ⟶ X₂') (v : U ⟶ X) (f : X ⟶ S),
Stacks.Blowup.IsAdmissibleBlowup u₁.opensRange b₁ ∧
Stacks.Blowup.IsAdmissibleBlowup u₂.opensRange b₂ ∧
IsOpenImmersion j₁ ∧ IsOpenImmersion j₂ ∧
LocallyOfFiniteType f ∧ QuasiCompact f ∧ IsSeparated f ∧
(v₁ ≫ b₁ = u₁) ∧ (v₂ ≫ b₂ = u₂) ∧
(v₁ ≫ j₁ = v) ∧ (v₂ ≫ j₂ = v) ∧
(b₁ ≫ f₁ = j₁ ≫ f) ∧ (b₂ ≫ f₂ = j₂ ≫ f) ∧ (v ≫ f = fU)
Tag 0F3Y, a lemma
Tag 0F3Y in the Stacks Project.
Stacks.Blowup.exists_iso_image_strictTransform, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Blowup/StrictTransformImage.lean, line 242.
Stacks Project, Tag 0F3Y. For
f : V ⟶ X ×_S Yquasi-compact with first projection landing in an openU ⊆ X, aU-admissible blowupb : X' ⟶ Xand a liftg : V ⟶ X' ×_S Yoff, the scheme-theoretic image ofgis the strict transform alongbof that off.
theorem exists_iso_image_strictTransform
{X Y S V X' : Scheme.{u}} (p : X ⟶ S) (q : Y ⟶ S)
(U : X.Opens) (b : X' ⟶ X)
(f : V ⟶ pullback p q) [QuasiCompact f]
(g : V ⟶ pullback (b ≫ p) q)
(hfU : Set.range (f ≫ pullback.fst p q).base ⊆ (U : Set X))
(hbgX : g ≫ pullback.fst (b ≫ p) q ≫ b = f ≫ pullback.fst p q)
(hbgY : g ≫ pullback.snd (b ≫ p) q = f ≫ pullback.snd p q)
(hb : IsAdmissibleBlowup U b) :
∃ I : X.IdealSheafData,
∃ e : X' ≅ blowUp I,
e.hom ≫ blowUpToBase I = b ∧
Disjoint (U : Set X) (I.support : Set X) ∧
∃ (j : strictTransform (f.imageι ≫ pullback.fst p q) I ⟶ pullback (b ≫ p) q)
(a : g.image ≅ strictTransform (f.imageι ≫ pullback.fst p q) I),
j ≫ pullback.fst (b ≫ p) q ≫ e.hom =
strictTransformι (f.imageι ≫ pullback.fst p q) I ≫
pullback.snd (f.imageι ≫ pullback.fst p q) (blowUpToBase I) ∧
j ≫ pullback.snd (b ≫ p) q =
strictTransformι (f.imageι ≫ pullback.fst p q) I ≫
pullback.fst (f.imageι ≫ pullback.fst p q) (blowUpToBase I) ≫
f.imageι ≫ pullback.snd p q ∧
a.hom ≫ j = g.imageι
Tag 0F3Z, a lemma
Tag 0F3Z in the Stacks Project.
AlgebraicGeometry.exists_isAdmissibleBlowup_properExtension, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Compactification/ProperExtension.lean, line 62.
Stacks Project, Tag 0F3Z. After a
V-admissible blowupb : Y' ⟶ Yof a compactificationjof a quasi-compact open subschemeVofU, the blowup contains an open subschemeV'which maps properly toU, extending the inclusion ofV, and whose copy ofVis exactly the inverse image of the interior of the compactification.
theorem exists_isAdmissibleBlowup_properExtension
{S U : Scheme.{u}} (f : U ⟶ S)
[CompactSpace S] [QuasiSeparatedSpace S]
[LocallyOfFiniteType f] [QuasiCompact f] [IsSeparated f]
(V : U.Opens) [QuasiCompact V.ι]
(j : CompactificationOf (Over.mk (V.ι ≫ f))) :
∃ (Y' : Scheme.{u}) (b : Y' ⟶ j.space) (V' : Y'.Opens)
(e : V.toScheme ⟶ V'.toScheme) (p : V'.toScheme ⟶ U),
Stacks.Blowup.IsAdmissibleBlowup j.immersion.opensRange b ∧
IsOpenImmersion e ∧
Set.range (e ≫ V'.ι).base =
(b ⁻¹ᵁ j.immersion.opensRange : Y'.Opens) ∧
e ≫ V'.ι ≫ b = j.immersion ∧
IsProper p ∧
e ≫ p = V.ι ∧ p ≫ f = V'.ι ≫ b ≫ j.toBase
Tag 0F40, a lemma
Tag 0F40 in the Stacks Project.
AlgebraicGeometry.hasCompactification_of_two_opens, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Compactification/TwoOpens.lean, line 162.
Stacks Project, Tag 0F40. A separated finite-type scheme over a Noetherian base has a compactification as soon as it is covered by two compactifiable open subschemes whose intersection is dense.
theorem hasCompactification_of_two_opens
{S U : Scheme.{u}} (f : U ⟶ S)
[IsNoetherian S] [LocallyOfFiniteType f] [QuasiCompact f] [IsSeparated f]
(U₁ U₂ : U.Opens) (hcover : U₁ ⊔ U₂ = ⊤)
(hdense : Dense ((U₁ ⊓ U₂ : U.Opens) : Set U))
(h₁ : HasCompactification (U₁.ι ≫ f)) (h₂ : HasCompactification (U₂.ι ≫ f)) :
HasCompactification f
Tag 0F41, a theorem
Tag 0F41 in the Stacks Project.
AlgebraicGeometry.exists_quasiCompact_compactificationOf_of_isQuasiAffine, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Flatness/Compactification/QuasiAffineSource.lean, line 86. The attribute's comment: “the case of a quasi-affine source”. References: SGA 4½ Arcata (4.5.3), “special case”; SGA 4½ Th finitude (2.8), “more general”; SGA 7 XIII (2.1.6), “2.1.6 c), special case”.
Nagata compactification for a quasi-affine source (Stacks Project, Tag 0F41). A separated morphism of finite type from a quasi-affine scheme to a quasi-compact and quasi-separated scheme admits a compactification: a quasi-compact open immersion into a scheme proper over the base.
The source statement has no quasi-affineness hypothesis; this is the case of its proof in which the source immerses into relative projective space directly, with no gluing along a covering.
theorem exists_quasiCompact_compactificationOf_of_isQuasiAffine
{X S : Scheme.{u}} (f : X ⟶ S)
[CompactSpace S] [QuasiSeparatedSpace S] [IsSeparated f]
[LocallyOfFiniteType f] [QuasiCompact f] [X.IsQuasiAffine] :
∃ j : CompactificationOf (Over.mk f), QuasiCompact j.immersion
AlgebraicGeometry.hasCompactification_of_compactSpace_quasiSeparatedSpace, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/NagataCompactification/Basic.lean, line 152. References: SGA 4 XVII (3.2.2), “more general”; SGA 4 XVII (3.2.3), “(iii), special case”; SGA 4½ Th finitude (2.8), “more general”; SGA 7 XIII (2.1.6), “more general”.
Nagata compactification (Stacks Project, Tag 0F41). Let
Sbe a quasi-compact and quasi-separated scheme and letf : X ⟶ Sbe a separated morphism of finite type. ThenXhas a compactification overS:ffactors as a quasi-compact open immersion ofXinto a scheme proper overS.[Stacks, Tag 01ZJ] factors
fthrough a closed immersion into a separated morphism of finite presentation, and compactifiability descends along a closed immersion.
theorem hasCompactification_of_compactSpace_quasiSeparatedSpace {X S : Scheme.{u}} (f : X ⟶ S)
[CompactSpace S] [QuasiSeparatedSpace S] [IsSeparated f] [LocallyOfFiniteType f]
[QuasiCompact f] : HasCompactification f
Sources
Loading dependency explorer…
The dependency explorer needs JavaScript and its graph data.