71.11 Relative Proj to 71.16 Closed subspaces of…

Section71.11 Relative Proj#

Section 71.11 of the Stacks Project, Tag 0848. 12 tags here are carried by 59 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.

Tag 0849, a situation

Tag 0849 in the Stacks Project.

AlgebraicGeometry.Space.RelativeProjSituation, a structure in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProj.lean, line 175.

Stacks 0849. A scheme S, an algebraic space X over S, and a quasi-coherent graded 𝒪_X-algebra, commutative and concentrated in nonnegative degrees: the data from which the relative homogeneous spectrum Proj_X(𝒜) is built.

structure RelativeProjSituation
Tag 084A, an equation

Tag 084A in the Stacks Project.

AlgebraicGeometry.Space.RelativeProjSituation.relativeProjFunctorEquivF_map_mk, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/FunctorCompactOpens.lean, line 240. The attribute's comment: “functoriality: on quasi-compact test schemes the restriction map of F along h : T' -> T sends the class of a quadruple (d, f, L, psi) to the class of its pullback (d, f o h, h^L, h^psi)”.

Stacks 084A, functoriality: the restriction map of F is the pullback of quadruples. For a morphism τ : T' ⟶ T of quasi-compact test objects and a point x of F(T) which is the class of a quadruple (d, f, ℒ, ψ), the restriction of x to T' is the class of the pullback quadruple (d, f ∘ τ, τ^*ℒ, τ^*ψ), AlgebraicGeometry.Space.GradedAlgebraRestriction.quadrupleRestrict.

theorem relativeProjFunctorEquivF_map_mk {T T' : BigFppfOver s.site s.base s.containsBase}
    (τ : T' ⟶ T) (hT : CompactSpace ((BigFppfOver.toScheme s.site s.base s.containsBase).obj T))
    (hT' : CompactSpace ((BigFppfOver.toScheme s.site s.base s.containsBase).obj T'))
    (x : s.relativeProjFunctor.obj (op T)) (f : yoneda.obj T ⟶ s.space.1) {d : ℤ} (hd : 0 < d)
    (P : (GradedAlgebraPoints.ofQuasicoherentFamily s.shrink.pointAlgebra).Quadruples T f d)
    (hx : s.relativeProjFunctorEquivF T hT x = GradedAlgebraPoints.F.mk _ f hd P) :
    s.relativeProjFunctorEquivF T' hT' (s.relativeProjFunctor.map τ.op x) =
      GradedAlgebraPoints.F.mk _ (yoneda.map τ ≫ f) hd
        (s.quadrupleRestriction.quadrupleRestrict τ f (yoneda.map τ ≫ f) rfl P)

AlgebraicGeometry.Space.RelativeProjSituation.bijective_restrictCompactOpens, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/FunctorCompactOpens.lean, line 275. The attribute's comment: “for an arbitrary test scheme T, F(T) is the limit of F(V) over the quasi-compact opens V of T: restricting to the quasi-compact opens is a bijection onto the compatible systems of classes of quadruples over them”.

Stacks 084A: for an arbitrary test scheme T, F(T) = lim\_\{V ⊆ T quasi-compact open} F(V). The map sending a point x of F(T) to the family of its restrictions x|\_V, read as classes of quadruples over the quasi-compact opens V of T, is a bijection onto the families of classes of quadruples over the quasi-compact opens which are compatible with the restrictions AlgebraicGeometry.Space.GradedAlgebraRestriction.FRestrict along the inclusions.

theorem bijective_restrictCompactOpens (T : BigFppfOver s.site s.base s.containsBase) :
    Function.Bijective (s.restrictCompactOpens T)

AlgebraicGeometry.Space.RelativeProjSituation.relativeProjπ_app_mk, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/FunctorCompactOpens.lean, line 304. The attribute's comment: “the morphism F -> X of functors sends the class of a quadruple (d, f, L, psi) to f”.

Stacks 084A: the morphism F ⟶ X sends the quadruple (d, f, ℒ, ψ) to f. On a quasi-compact test object T, a point of F(T) which is the class of a quadruple (d, f, ℒ, ψ) is sent by AlgebraicGeometry.Space.RelativeProjSituation.relativeProjπ to the T-point f of X.

theorem relativeProjπ_app_mk (T : BigFppfOver s.site s.base s.containsBase)
    (hT : CompactSpace ((BigFppfOver.toScheme s.site s.base s.containsBase).obj T))
    (x : s.relativeProjFunctor.obj (op T)) (f : yoneda.obj T ⟶ s.space.1) {d : ℤ} (hd : 0 < d)
    (P : (GradedAlgebraPoints.ofQuasicoherentFamily s.shrink.pointAlgebra).Quadruples T f d)
    (hx : s.relativeProjFunctorEquivF T hT x = GradedAlgebraPoints.F.mk _ f hd P) :
    s.relativeProjπ.app (op T) x = yonedaEquiv f

AlgebraicGeometry.Space.GradedAlgebraPoints.F, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjQuadruples.lean, line 179. The attribute's comment: “the value F(T) of the functor on a test object, as the union over d ≥ 1 of the quadruples (d, f : T → X, L, psi) modulo strict equivalence inside a degree and the equivalence of Tag 01NW across degrees, the restriction of the graded algebra to the scheme points of X being a datum; the functoriality in the test object and the inverse limit over the quasi-compact opens are not constructed, the pullback of a quadruple not being available”.

Stacks 084A. The value F(T) on a test object of the functor of quadruples of the relative homogeneous spectrum of a quasi-coherent graded 𝒪_X-algebra: the union over d ≥ 1 of the sets of quadruples (d, f : T → X, ℒ, ψ) of degree d, modulo strict equivalence inside a degree and the equivalence of Tag 01NW across degrees.

The identifications relate only quadruples over the same T-point of X, so the set is fibred over the T-points of X, which is the morphism a quadruple records.

def F (T : BigFppfOver B S hS) : Type (u + 1)
Tag 084B, a lemma

Tag 084B in the Stacks Project.

AlgebraicGeometry.Space.RelativeProjSituation.isAlgebraicSpace_relativeProjFunctor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/AlgebraicSpace.lean, line 107. The attribute's comment: “first assertion: the functor F of Tag 084A is an algebraic space”.

Stacks 084B, first assertion: the functor F of Stacks 084A is an algebraic space.

theorem isAlgebraicSpace_relativeProjFunctor :
    IsAlgebraicSpace s.site s.base s.containsBase s.relativeProjFunctor

AlgebraicGeometry.Space.RelativeProjSituation.relativeProjPoints, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/AlgebraicSpace.lean, line 121. The attribute's comment: “second assertion: for every morphism g : Z -> X from a scheme of the site, a canonical isomorphism Proj_Z(g^*A) = Z x_X F, as a cartesian square”.

Stacks 084B, second assertion: Z ×_X F = Proj_Z(g^*𝒜). For every scheme point g : Z → X an object of the site whose scheme is the relative Proj of the restriction g^*𝒜 (relativeProjPoints_algebra), with a cartesian square identifying it with Z ×_X F.

The restriction g^*𝒜 is that of the re-presentation of 𝒜 with sections in the universe u (smallAlgebra, compared with 𝒜 by smallAlgebraEquiv); when the sections of 𝒜 already lie in u it is isomorphic to the restriction of 𝒜 itself by shrinkPointAlgebraIso.

def relativeProjPoints : RelativeProjPoints s.site s.base s.containsBase s.relativeProjπ

AlgebraicGeometry.Space.RelativeProjSituation.isPullback_projComparison, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/AlgebraicSpace.lean, line 139. The attribute's comment: “third assertion: the identifications Proj_Z(g^*A) = Z x_X F are compatible with further base change Z' -> Z, through the canonical base-change morphism of Tag 01O3”.

Stacks 084B, third assertion: compatibility with further base change. For a morphism h : Z' ⟶ Z of test objects and a scheme point g : Z → X, the comparison morphism Proj_{Z'}((g ∘ h)^*𝒜) ⟶ Proj_Z(g^*𝒜) exhibits the source as Z' ×_Z Proj_Z(g^*𝒜); it is compatible with the identifications with Z ×_X F and Z' ×_X F of the second assertion; and it is the canonical one: the identification Proj_{Z'}((g ∘ h)^*𝒜) ≅ Proj_{Z'}(h^*(g^*𝒜)) of the restricted algebras followed by the base-change morphism of Tag 01O3.

theorem isPullback_projComparison {Z Z' : BigFppfOver s.site s.base s.containsBase}
    (g : yoneda.obj Z ⟶ s.space.1) (h : Z' ⟶ Z) :
    IsPullback (s.quadrupleRestriction.projComparison
      s.shrink.contains_relativeProj_pointAlgebra g h)
        (s.relativeProjPoints.fibreHom Z' (yoneda.map h ≫ g))
        (s.relativeProjPoints.fibreHom Z g) h ∧
      yoneda.map (s.quadrupleRestriction.projComparison
        s.shrink.contains_relativeProj_pointAlgebra g h) ≫
          s.relativeProjPoints.fibreToSpace Z g =
        s.relativeProjPoints.fibreToSpace Z' (yoneda.map h ≫ g) ∧
      (BigFppfOver.toScheme s.site s.base s.containsBase).map
          (s.quadrupleRestriction.projComparison s.shrink.contains_relativeProj_pointAlgebra g h) =
        (s.quadrupleRestriction.restrictProjIso g h).hom ≫
          Stacks.AlgebraicGeometry.RelativeProjBaseChangeTwist.baseChangeHom
            (s.shrink.pointAlgebra Z g)
            ((BigFppfOver.toScheme s.site s.base s.containsBase).map h)
Tag 084C, a definition

Tag 084C in the Stacks Project.

AlgebraicGeometry.Space.ProjDescentData.relativeProj, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjDescent.lean, line 167. The attribute's comment: “the relative Proj as an algebraic space over the base”.

The relative homogeneous spectrum Proj_X(𝒜) of a quasi-coherent graded 𝒪_X-algebra on an algebraic space X: the quotient of the relative Proj P_U of the algebra on an étale chart of X by the étale equivalence relation P_R ⇉ P_U that the descent datum provides.

noncomputable def relativeProj : (BigFppfOver B S hS)ᵒᵖ ⥤ Type u

AlgebraicGeometry.Space.ProjDescentData.isAlgebraicSpace_relativeProj, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjDescent.lean, line 173. The attribute's comment: “the relative Proj is an algebraic space”.

The relative Proj of an algebraic space is an algebraic space over the base scheme.

theorem isAlgebraicSpace_relativeProj : IsAlgebraicSpace B S hS d.relativeProj

AlgebraicGeometry.Space.ProjDescentData.toBase, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjDescent.lean, line 202. The attribute's comment: “the structure morphism of the relative Proj”.

The structure morphism π : Proj_X(𝒜) ⟶ X of the relative Proj: the descent of P_U ⟶ U ⟶ X along the quotient map.

noncomputable def toBase : d.relativeProj ⟶ X

AlgebraicGeometry.Space.RelativeProjSituation.Proj, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/Space.lean, line 44. The attribute's comment: “the relative Proj of A over X: the algebraic space F of Tag 084B”.

The relative homogeneous spectrum Proj_X(𝒜) of a quasi-coherent graded 𝒪_X-algebra on an algebraic space X over S: the algebraic space F of Stacks 084B.

def Proj : AlgebraicSpaces s.site s.base s.containsBase

AlgebraicGeometry.Space.RelativeProjSituation.π, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/Space.lean, line 49. The attribute's comment: “the structure morphism pi : Proj_X(A) -> X”.

The structure morphism π : Proj_X(𝒜) ⟶ X of the relative Proj.

def π : s.Proj ⟶ s.space

AlgebraicGeometry.Space.RelativeProjSituation.baseChangeIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/Space.lean, line 77. The attribute's comment: “the canonical isomorphism gamma : Proj_U(phi^*A) -> Proj_X(A) x_X U over U”.

For a scheme point g : Z ⟶ X, the canonical isomorphism γ : Proj_Z(g^*𝒜) ≅ Proj_X(𝒜) ×_X Z of Stacks 084B; the scheme of s.relativeProjPoints.fibre Z g is Proj_Z(g^*𝒜) by s.relativeProjPoints.fibreIso Z g.

def baseChangeIso (Z : BigFppfOver s.site s.base s.containsBase)
    (g : yoneda.obj Z ⟶ s.space.1) :
    yoneda.obj (s.relativeProjPoints.fibre Z g) ≅ pullback s.π.hom g

AlgebraicGeometry.Space.RelativeProjSituation.chartPresentation, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/Space.lean, line 310. The attribute's comment: “the etale covering P_U -> Proj_X(A) with P_U x_P P_U = P_R”.

For an étale presentation (U, R) of X, the relative Projs P_U = Proj_U(𝒜_U) and P_R = Proj_R(𝒜_R) form an étale presentation of Proj_X(𝒜): the chart P_U = Proj_X(𝒜) ×_X U ⟶ Proj_X(𝒜) is surjective and étale and P_U ×_{Proj_X(𝒜)} P_U = P_R, the two projections lying over the two maps R ⇉ U and exhibiting P_R as P_U ×_U R along each.

def chartPresentation : Presentation s.site s.base s.containsBase s.Proj.1 s.Proj.2
Tag 084D, a lemma

Tag 084D in the Stacks Project.

AlgebraicGeometry.Space.RelativeProjPoints.pointTwistAlgebra, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPointTwists.lean, line 193. The attribute's comment: “the base-change clause: for every scheme point f : T -> X of the base, the sheaf of Z-graded algebras (+)_{n in Z} O(n) -- homogeneous pieces, multiplication and unit, which are the three fields of the type -- on the base change Proj_T(f^*A) of the relative Proj, which d.fibreIso identifies with the scheme of T x_X Proj_X(A). It is Tag 01NR's graded algebra there, which is what the tag asks the base change to agree with. Quasi-coherence of the pieces is NOT part of this type; it is isQuasicoherent_pointTwist below. The sheaf on Proj_X(A) itself is NOT produced here”.

Stacks 084D, clause (1), after base change to a scheme point of the base. The quasi-coherent sheaf of ℤ-graded algebras ⨁_{n ∈ ℤ} 𝒪_{Proj_T(f^*𝒜)}(n) on the base change T ×_X Proj_X(𝒜) of the relative Proj along the T-point f of X, with its multiplication and its unit.

noncomputable def pointTwistAlgebra :
    SchemeGradedAlgebra (relativeProj (d.algebra T f)).scheme

AlgebraicGeometry.Space.RelativeProjPoints.isQuasicoherent_pointTwist, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPointTwists.lean, line 206. The attribute's comment: “the base-change clause, quasi-coherence half: every homogeneous twist O(n) on the base change Proj_T(f^*A) of the relative Proj along a scheme point f : T -> X of the base is a quasi-coherent module”.

Stacks 084D, quasi-coherence of the twists after base change to a scheme point.

theorem isQuasicoherent_pointTwist (n : ℤ) : (d.pointTwist T f n).IsQuasicoherent

AlgebraicGeometry.Space.RelativeProjPoints.pointPsi, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPointTwists.lean, line 241. The attribute's comment: “the base-change clause for psi: the degreewise maps of the canonical homomorphism psi : pi^A -> (+)_{n >= 0} O(n) on the base change Proj_T(f^A) of the relative Proj along a scheme point f : T -> X of the base, in the adjoint form (f^A)_n -> (pi_T)_ O(n) that Tag 01NR produces psi in. This declaration is the family of maps and nothing more; that it preserves the unit, is multiplicative, and is Tag 01MP's homogeneous-section map on the charts are the three companion theorems pointPsi_one, pointPsi_mul and pointPsi_chart below. psi on Proj_X(A) itself is NOT produced here”.

Stacks 084D, clause (2), after base change to a scheme point of the base. The canonical homomorphism of graded algebras ψ : π^*𝒜 ⟶ ⨁_{n ≥ 0} 𝒪(n), read at the T-point f of X in the adjoint form that Stacks 01NR produces: in each degree n ≥ 0 a map (f^*𝒜)_n ⟶ (π_T)_*𝒪_{Proj_T(f^*𝒜)}(n).

That it is a homomorphism of graded algebras is …pointPsi_one and …pointPsi_mul, and …pointPsi_chart identifies it on the projective-spectrum charts with the absolute homogeneous-section map of Stacks 01MP, which is what makes it the canonical one.

noncomputable def pointPsi (n : ℕ) :
    (d.algebra T f).piece (n : ℤ) ⟶
      (Scheme.Modules.pushforward (relativeProj (d.algebra T f)).toBase).obj
        (d.pointTwist T f (n : ℤ))

AlgebraicGeometry.Space.RelativeProjPoints.pointPsiHom, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPointTwists.lean, line 304. The attribute's comment: “the base-change clause for psi as a homomorphism of graded algebras: on the base change Proj_T(f^A) of the relative Proj along a scheme point f : T -> X of the base, the canonical homomorphism psi : pi_T^(f^*A) -> (+)_n O(n) of sheaves of Z-graded algebras (multiplicative by construction), whose degree-n components for n >= 0 are the adjoint transposes of pointPsi. psi on Proj_X(A) itself is NOT produced here”.

Stacks 084D, clause (2), after base change to a scheme point of the base, as a homomorphism of graded algebras. The canonical homomorphism

ψ : π_T^*(f^*𝒜) ⟶ ⨁_{n ∈ ℤ} 𝒪_{Proj_T(f^*𝒜)}(n)

of sheaves of ℤ-graded algebras on Proj_T(f^*𝒜), where π_T : Proj_T(f^*𝒜) ⟶ T is the structure morphism: the transpose across π_T^* ⊣ (π_T)_* of the homogeneous-section map AlgebraicGeometry.Space.RelativeProjPoints.pointPsi, assembled with its multiplicativity (Stacks.AlgebraicGeometry.RelativeProjTwists.TwistData.psiTransposeHom). The source writes the target as ⨁_{n ≥ 0} 𝒪(n); since π_T^*(f^*𝒜) vanishes in negative degrees the two targets receive the same homomorphisms, and the components in degrees n ≥ 0 are the transposes of pointPsi (…pointPsiHom_app_natCast).

noncomputable def pointPsiHom :
    Stacks.PullbackGradedAlgebra.pullbackGradedAlgebra
        (Stacks.AlgebraicGeometry.RelativeProjQcohSheaf.ringedSpaceHom
          (relativeProj (d.algebra T f)).toBase)
        (Stacks.AlgebraicGeometry.RelativeProjQcohSheaf.situationAlgebra (d.algebra T f))
        (Stacks.AlgebraicGeometry.RelativeProjQcohSheaf.isSheafStruct _) ⟶
      d.pointTwistAlgebra T f

AlgebraicGeometry.Space.RelativeProjPoints.pointTwistTheta, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPointTwists.lean, line 334. The attribute's comment: “the base-change clause is compatible with further base change: for g : Z -> T the inverse image of (+)_d O_{Proj_T(f^A)}(d) along the base-change morphism is (+)_d O_{Proj_Z(g^f^*A)}(d) as Z-graded algebras. This is Tag 01O3's theta, and it is the scheme-point case of the theta of Tag 085C”.

Stacks 01O3 at a scheme point of the base: the base-change isomorphism θ. For a further morphism of schemes g : Z ⟶ T, the inverse image along the base-change morphism Proj_Z(g^*f^*𝒜) ⟶ Proj_T(f^*𝒜) of the twists at the point f is the graded algebra of twists of Proj_Z(g^*f^*𝒜), as ℤ-graded algebras.

This is what makes the base-change clause of Stacks 084D a compatible family rather than a statement at one point at a time, and it is the scheme-point case of the θ of Stacks 085C.

noncomputable def pointTwistTheta {Z : Scheme.{u}}
    (g : Z ⟶ (BigFppfOver.toScheme B S hS).obj T) :
    pbAlgS (baseChangeHom (d.algebra T f) g) (d.pointTwistAlgebra T f) ≅
      Stacks.AlgebraicGeometry.Tag07ZGTwist.twistAlgebra ((d.algebra T f).pullback g)

AlgebraicGeometry.Space.RelativeProjPoints.basePsi_pointTwistTheta, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPointTwists.lean, line 356. The attribute's comment: “the base-change clause for psi, compatible with further base change: for g : Z -> T the base change along g of psi at the scheme point f, followed by Tag 01O3's theta (pointTwistTheta), is Tag 01NR's psi for Proj_Z(g^f^A), degree by degree”.

The base-change clause of Stacks 084D for ψ, at a scheme point of the base. For a further morphism of schemes g : Z ⟶ T, the base change along g of the homogeneous-section map ψ of the twists at the point f — the morphism g^*(f^*𝒜)_k ⟶ (π_Z)_* h^*𝒪_{Proj_T(f^*𝒜)}(k) adjoint to (f^*𝒜)_k ⟶ (π_T)_*𝒪(k) ⟶ (π_T)_* h_* h^*𝒪(k), where h : Proj_Z(g^*f^*𝒜) ⟶ Proj_T(f^*𝒜) is the base-change morphism (Stacks.AlgebraicGeometry.RelativeProjBaseChangeTwist.basePsi) — followed by the isomorphism θ of AlgebraicGeometry.Space.RelativeProjPoints.pointTwistTheta is the homogeneous-section map of Stacks 01NR for Proj_Z(g^*f^*𝒜).

So the isomorphism θ of the graded algebras of twists is compatible with ψ: base change carries the whole of Stacks 084D's datum at f — graded algebra and ψ — to Stacks 01NR's datum on Proj_Z(g^*f^*𝒜). The proof is the gluing statement Stacks.AlgebraicGeometry.TwistExistenceBasis.glueIso_psi behind θ.

theorem basePsi_pointTwistTheta {Z : Scheme.{u}} (g : Z ⟶ (BigFppfOver.toScheme B S hS).obj T)
    (k : ℕ) :
    basePsi (relativeProj (d.algebra T f)).toBase
        (relativeProj ((d.algebra T f).pullback g)).toBase g
        (baseChangeHom (d.algebra T f) g) (baseChangeHom_comp_toBase (d.algebra T f) g)
        (d.pointPsi T f k) ≫
      (Scheme.Modules.pushforward (relativeProj ((d.algebra T f).pullback g)).toBase).map
        ((d.pointTwistTheta T f g).hom.app (k : ℤ)) =
      (twistDataOfGradedAlgebra ((d.algebra T f).pullback g)).ψ k

AlgebraicGeometry.Space.RelativeProjSituation.twistGradedAlgebra_psi_baseChange, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjTwistDescent/TwistAlgebraOfProj.lean, line 321. The attribute's comment: “on the constructed relative Proj P = Proj_X(A) itself: the quasi-coherent sheaf of Z-graded O_P-algebras (+)_n O_P(n) (twistGradedAlgebra: pieces, quasi-coherence, multiplication, unit), the canonical psi : pi^A -> (+)_{n >= 0} O_P(n) as a homomorphism of graded algebras (multiplicative and unital), and for every scheme T -> X identifications of the base change with the graded algebra of Tag 01NR on Proj_T(f^A) carrying multiplication, unit and psi to those of Tag 01NR, natural in the scheme”.

Stacks 084D on the relative Proj P = Proj_X(𝒜) of Situation 0849. For any presentation X = U/R used to construct the twists:

  1. ⨁_{n ∈ ℤ} 𝒪_P(n) (…RelativeProjSituation.twistGradedAlgebra) is a quasi-coherent sheaf of ℤ-graded 𝒪_P-algebras: its homogeneous pieces are the twists 𝒪_P(n), quasi-coherent, and its multiplication and unit are …RelativeProjSituation.twistAlgebraMul and …RelativeProjSituation.twistAlgebraUnit;
  2. the canonical ψ_n : π^*𝒜_n ⟶ 𝒪_P(n), n ≥ 0 (…RelativeProjSituation.psiTwistHom), is a homomorphism of graded algebras π^*𝒜 ⟶ ⨁_{n ≥ 0} 𝒪_P(n): it carries the multiplication and the unit of π^*𝒜 (…RelativeProjSituation.psiSourceMul, …RelativeProjSituation.psiSourceUnit) to those of the twists;
  3. its base change to any scheme f : T ⟶ X over X agrees with Stacks 01NR: there are isomorphisms e_{T,f,n} : (T ×_X P ⟶ P)^*𝒪_P(n) ≅ 𝒪(n)^a with the twists of Stacks 01NR on T ×_X P = Proj_T(f^*𝒜), carrying the inverse images of the multiplication, of the unit and of ψ to the multiplication, the unit and ψ of Stacks 01NR, and compatible with further base change along any τ : T' ⟶ T (through the comparison of twists of Tag 01O3).
theorem twistGradedAlgebra_psi_baseChange :
    -- (1) the quasi-coherent sheaf of `ℤ`-graded algebras `⨁_{n ∈ ℤ} 𝒪_P(n)`
    (∀ n : ℤ, (s.twistGradedAlgebra Px).piece n = (s.twistModule Px n).obj) ∧
    (∀ n : ℤ, ((s.twistGradedAlgebra Px).piece n).IsQuasicoherentOnSite) ∧
    (∀ i j : ℤ,
      haveI := SmallEtale.instHasSheafify s.site s.base s.containsBase s.relativeProjFunctor
        AddCommGrpCat.{u}
      haveI := SmallEtale.instWEqualsLocallyBijective s.site s.base s.containsBase
        s.relativeProjFunctor AddCommGrpCat.{u}
      SheafOfModules.GradedAlgebra.mulSheaf.{u, u + 1, u, u}
          (J := SmallEtale.topology s.site s.base s.containsBase s.relativeProjFunctor)
          (s.twistGradedAlgebra Px) i j =
        (modulesTensorObjIso s.site s.base s.containsBase s.relativeProjFunctor
            s.isAlgebraicSpace_relativeProjFunctor (s.twistModule Px i).obj
            (s.twistModule Px j).obj).inv ≫ s.twistAlgebraMul Px i j) ∧
    (haveI := SmallEtale.instHasSheafify s.site s.base s.containsBase s.relativeProjFunctor
        AddCommGrpCat.{u}
     haveI := SmallEtale.instWEqualsLocallyBijective s.site s.base s.containsBase
        s.relativeProjFunctor AddCommGrpCat.{u}
     SheafOfModules.GradedAlgebra.oneHom.{u, u + 1, u}
          (J := SmallEtale.topology s.site s.base s.containsBase s.relativeProjFunctor)
          (s.twistGradedAlgebra Px) = s.twistAlgebraUnit Px) ∧
    -- (2) `ψ : π^*𝒜 ⟶ ⨁_{n ≥ 0} 𝒪_P(n)` is a homomorphism of graded algebras
    (∀ i j : ℕ, s.psiSourceMul (i : ℤ) (j : ℤ) ≫ s.psiTwistHom Px (i + j) =
      (s.psiTwistHom Px i ⊗ₘ s.psiTwistHom Px j) ≫ s.twistAlgebraMul Px (i : ℤ) (j : ℤ)) ∧
    s.psiSourceUnit ≫ s.psiTwistHom Px 0 = s.twistAlgebraUnit Px ∧
    -- (3) the base change to every scheme point is the graded algebra and `ψ` of Stacks 01NR
    ∃ e : ∀ (T : BigFppfOver s.site s.base s.containsBase) (f : yoneda.obj T ⟶ s.space.1) (n : ℤ),
        (modulePullback s.site s.base s.containsBase (s.fibreToSpaceHom T f)).obj
          (s.twistModule Px n).obj ≅
          ((representedQuasicoherentSchemeEquivalence s.site s.base s.containsBase
            (s.relativeProjPoints.fibre T f)).functor.obj (s.twistPieceQcoh T f n)).obj,
      (∀ (T : BigFppfOver s.site s.base s.containsBase) (f : yoneda.obj T ⟶ s.space.1)
        (i j : ℤ),
        (modulePullbackTensorIso s.site s.base s.containsBase (s.fibreToSpaceHom T f)
            (s.twistModule Px i).obj (s.twistModule Px j).obj).inv ≫
          (modulePullback s.site s.base s.containsBase (s.fibreToSpaceHom T f)).map
            (s.twistAlgebraMul Px i j) ≫ (e T f (i + j)).hom =
        ((e T f i).hom ⊗ₘ (e T f j).hom) ≫
          representedTensorChartMul s.site s.base s.containsBase (s.twistPieceMul T f i j)) ∧
      (∀ (T : BigFppfOver s.site s.base s.containsBase) (f : yoneda.obj T ⟶ s.space.1),
        (modulePullbackUnitIso s.site s.base s.containsBase (s.fibreToSpaceHom T f)).inv ≫
            (modulePullback s.site s.base s.containsBase (s.fibreToSpaceHom T f)).map
              (s.twistAlgebraUnit Px) ≫ (e T f 0).hom =
          representedUnitChartHom s.site s.base s.containsBase (s.twistPieceUnit T f)) ∧
      (∀ (T : BigFppfOver s.site s.base s.containsBase) (f : yoneda.obj T ⟶ s.space.1) (n : ℕ),
        (modulePullback s.site s.base s.containsBase (s.fibreToSpaceHom T f)).map
            (s.psiTwistHom Px n) ≫ (e T f (n : ℤ)).hom = s.fibrePsiHom T f n) ∧
      ∀ {T T' : BigFppfOver s.site s.base s.containsBase} (τ : T' ⟶ T)
        (f : yoneda.obj T ⟶ s.space.1)
        {y : s.relativeProjPoints.fibre T' (yoneda.map τ ≫ f) ⟶ s.relativeProjPoints.fibre T f}
        (hy : s.relativeProjPoints.LiesOver y τ) (n : ℤ),
        e T' (yoneda.map τ ≫ f) n =
          eqToIso (congrArg (fun k :
              (⟨yoneda.obj (s.relativeProjPoints.fibre T' (yoneda.map τ ≫ f)),
                isAlgebraicSpace_yoneda s.site s.base s.containsBase _⟩ :
                AlgebraicSpaces s.site s.base s.containsBase) ⟶
                  ⟨s.relativeProjFunctor, s.isAlgebraicSpace_relativeProjFunctor⟩ =>
              (modulePullback s.site s.base s.containsBase k).obj (s.twistModule Px n).obj)
              (s.representedSpaceMap_comp_fibreToSpaceHom τ f hy).symm) ≪≫
            attachedModuleIsoPullback
              (X := ⟨s.relativeProjFunctor, s.isAlgebraicSpace_relativeProjFunctor⟩)
              (s.twistModule Px n).obj (s.fibreToSpaceHom T f) y
              (e T f n) (s.twistPieceComparison τ rfl y hy n)
Tag 085C, a lemma

Tag 085C in the Stacks Project.

AlgebraicGeometry.Space.GradedAlgebraPoints.F.baseChangeEquiv, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjBaseChange.lean, line 155. The attribute's comment: “the canonical isomorphism r, as the bijection F'(T) ≃ X'(T) ×_{X(T)} F(T) of the proof, for every test object; the isomorphism theta of the twists is not stated”.

Stacks 085C. The canonical isomorphism r : Proj_{X'}(g^*𝒜) ⟶ X' ×_X Proj_X(𝒜), on the functor of quadruples: for every test object T a bijection F'(T) ≃ X'(T) ×_{X(T)} F(T), where F is the functor of Tag 084A of 𝒜 on X and F' the one of g^*𝒜 on X'.

A quadruple (d, f' : T → X', ℒ, ψ) for F' goes to the pair (f', (d, g ∘ f', ℒ, ψ)), and a pair (f', (d, f, ℒ, ψ)) goes back to (d, f', ℒ, ψ); the two are mutually inverse.

def F.baseChangeEquiv (r : GradedAlgebraPoints B S hS X) (g : X' ⟶ X)
    (T : BigFppfOver B S hS) :
    (r.comap g).F T ≃ {p : (yoneda.obj T ⟶ X') × r.F T // F.point r p.2 = p.1 ≫ g}

AlgebraicGeometry.Space.GradedAlgebraPoints.F.baseChangeEquiv_mk, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjBaseChange.lean, line 167. The attribute's comment: “the map r sends a quadruple (d, f', L, psi) to the pair (f', (d, g f', L, psi))”.

Stacks 085C, the map r on a quadruple. A quadruple (d, f', ℒ, ψ) of positive degree for g^*𝒜 goes to the X'-point f' together with the quadruple (d, g ∘ f', ℒ, ψ) for 𝒜.

theorem F.baseChangeEquiv_mk (r : GradedAlgebraPoints B S hS X) (g : X' ⟶ X)
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X') {d : ℤ} (hd : 0 < d)
    (P : (r.comap g).Quadruples T f d) :
    F.baseChangeEquiv r g T (F.mk (r.comap g) f hd P) =
      ⟨(f, F.mk r (f ≫ g) hd P), rfl⟩

AlgebraicGeometry.Space.GradedAlgebraPoints.F.baseChangeEquiv_symm_mk, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjBaseChange.lean, line 178. The attribute's comment: “the inverse of r sends (f', (d, g f', L, psi)) to the quadruple (d, f', L, psi)”.

Stacks 085C, the inverse of r. The X'-point f' together with a quadruple (d, g ∘ f', ℒ, ψ) for 𝒜 of positive degree goes back to the quadruple (d, f', ℒ, ψ) for g^*𝒜.

theorem F.baseChangeEquiv_symm_mk (r : GradedAlgebraPoints B S hS X) (g : X' ⟶ X)
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X') {d : ℤ} (hd : 0 < d)
    (P : (r.comap g).Quadruples T f d) :
    (F.baseChangeEquiv r g T).symm ⟨(f, F.mk r (f ≫ g) hd P), rfl⟩ =
      F.mk (r.comap g) f hd P

AlgebraicGeometry.Space.RelativeProjPoints.fibreBaseChangeTheta, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjBaseChangePoints.lean, line 375. The attribute's comment: “the isomorphism theta over a scheme point f : T -> X' of X': an isomorphism of Z-graded algebras from the inverse image, along the base change of r to T (toScheme_map_pointEquivOver_baseChangeIso), of (+)_{d in Z} O(d) on T x_X Proj_X(A) to (+)_{d in Z} O(d) on T x_{X'} Proj_{X'}(g^A), both being Tag 084D's twists of Tag 01NR; theta as a map of sheaves on the algebraic space Proj_{X'}(g^A) needs those twists on the space, i.e. 084B”.

Stacks 085C, the isomorphism θ, over a scheme point of X'.

The inverse image, along the base change r_T of AlgebraicGeometry.Space.RelativeProjPoints.fibreBaseChangeIso, of the sheaf of ℤ-graded algebras ⨁_{d ∈ ℤ} 𝒪(d) on T ×_X Proj_X(𝒜) is the sheaf of ℤ-graded algebras ⨁_{d ∈ ℤ} 𝒪(d) on T ×_{X'} Proj_{X'}(g^*𝒜).

The two twist algebras are Stacks 084D's, in the form AlgebraicGeometry.Space.RelativeProjPoints.fibreTwistAlgebra, so they are the twists of Stacks 01NR of the two restricted algebras; those restricted algebras are equal, and r is the isomorphism of the presented schemes that equality produces, so θ is AlgebraicGeometry.Space.RelativeProjPoints.thetaOfAlgebraEq. That fibreBaseChangeIso is the base change of the isomorphism of algebraic spaces r is AlgebraicGeometry.Space.RelativeProjBaseChangePoints.toScheme_map_pointEquivOver_baseChangeIso; the compatibility of θ with ψ is AlgebraicGeometry.Space.RelativeProjPoints.pointPsiHom_heq. The source's θ on the algebraic space Proj_{X'}(g^*𝒜) itself needs the twists of Stacks 084D as sheaves on the space, which need Stacks 084B; see the module docstring.

def fibreBaseChangeTheta (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X') :
    pbAlgS (fibreBaseChangeIso d d' g halg T f).hom (d.fibreTwistAlgebra T (f ≫ g)) ≅
      d'.fibreTwistAlgebra T f

AlgebraicGeometry.Space.RelativeProjPoints.pointPsiHom_heq, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjBaseChangePoints.lean, line 551. The attribute's comment: “theta is compatible with psi: over a scheme point f : T -> X' the canonical homomorphism psi : pi_T^(f^g^A) -> (+)_n O(n) of Tag 084D for Proj_{X'}(g^A) is the one for Proj_X(A) at f g, across the identification of the two restricted algebras”.

Stacks 085C: θ is compatible with ψ, over the scheme points of X'. Over a T-point f of X', the canonical homomorphism of graded algebras ψ : π_T^*(f^*g^*𝒜) ⟶ ⨁_{n ∈ ℤ} 𝒪(n) of Stacks 084D for Proj_{X'}(g^*𝒜) (AlgebraicGeometry.Space.RelativeProjPoints.pointPsiHom) is the one for Proj_X(𝒜) at the image point f ∘ g, transported along the identification of the two restricted algebras: the source's θ carries ψ to ψ. The graded algebras of twists themselves correspond in the same way (…pointTwistAlgebra_heq), and so do the identifications θ of Stacks 01O3 with every further base change (…pointTwistTheta_heq) and the ψ of Stacks 01NR after it (AlgebraicGeometry.Space.RelativeProjPoints.basePsi_pointTwistTheta).

theorem pointPsiHom_heq (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X') :
    HEq (d'.pointPsiHom T f) (d.pointPsiHom T (f ≫ g))

AlgebraicGeometry.Space.RelativeProjBaseChangePoints.baseChangeIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjBaseChangePoints.lean, line 687. The attribute's comment: “the canonical isomorphism r : Proj_{X'}(g^A) -> X' x_X Proj_X(A), as an isomorphism of presheaves on the big fppf site (that is, of algebraic spaces), natural in the test object; Proj_X(A) and Proj_{X'}(g^A) are given by Stacks 084B's presentations over the scheme points of the base, Proj_X(A) not being constructed from A in this library (084B)”.

Stacks 085C, the canonical isomorphism r : Proj_{X'}(g^*𝒜) ⟶ X' ×_X Proj_X(𝒜), as an isomorphism of algebraic spaces.

Let g : X' ⟶ X be a morphism of algebraic spaces over S, let π : P ⟶ X be presented as Proj_X(𝒜) and π' : P' ⟶ X' as its base change Proj_{X'}(g^*𝒜) in the sense of AlgebraicGeometry.Space.RelativeProjBaseChangePoints. Then P' is isomorphic to the fibre product X' ×_X P as a presheaf on the big fppf site of S, that is, as an algebraic space. At a test object T the isomorphism is the bijection AlgebraicGeometry.Space.RelativeProjPoints.basePointEquivPullback, which over a T-point f of X' sends a point of P' to the point of P over f ∘ g that the two identifications of Stacks 084B at f attach to it — the source's proof builds r on the values of the functors in the same way — and its naturality in the test object is AlgebraicGeometry.Space.RelativeProjBaseChangePoints.basePointEquivPullback_restrict.

The relative Proj of an algebraic space is presented here, as for Stacks 084D, 085D and 085F, through its base changes to the scheme points of the base: the space Proj_X(𝒜) itself is not constructed from 𝒜 in this library, because Stacks 084B is not proved.

def baseChangeIso : P' ≅ pullback g π

AlgebraicGeometry.Space.RelativeProjBaseChangePoints.baseChangeIso_hom_fst, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjBaseChangePoints.lean, line 713. The attribute's comment: “r is an isomorphism over X': followed by the first projection X' x_X Proj_X(A) -> X' it is the structure morphism of Proj_{X'}(g^*A)”.

Stacks 085C: r is a morphism over X'. The isomorphism r : Proj_{X'}(g^*𝒜) ⟶ X' ×_X Proj_X(𝒜) followed by the first projection is the structure morphism of Proj_{X'}(g^*𝒜).

theorem baseChangeIso_hom_fst : h.baseChangeIso.hom ≫ pullback.fst g π = π'

AlgebraicGeometry.Space.RelativeProjBaseChangePoints.baseChangeIso_hom_snd, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjBaseChangePoints.lean, line 729. The attribute's comment: “the description of r over the scheme points of X': over a point f : T -> X' the base change of r is the identification of Proj_T(f^g^A) = T x_{X'} Proj_{X'}(g^A) with Proj_T((g f)^A) = T x_X Proj_X(A) given by Stacks 084B”.

Stacks 085C: the description of r over the scheme points of X'. For a T-point f of X', a morphism r : T' ⟶ T and a T'-point u of P' = Proj_{X'}(g^*𝒜) over f ∘ r, the second component of r(u) is the point of P = Proj_X(𝒜) over f ∘ g ∘ r that the identifications Proj_T(f^*g^*𝒜) = T ×_{X'} P' and Proj_T((f g)^*𝒜) = T ×_X P of Stacks 084B attach to u (AlgebraicGeometry.Space.RelativeProjPoints.baseChangePointEquiv). So over every scheme T over X' the base change of r is the identification of the two scheme-level relative Projs of one graded algebra, which is how the source describes r étale locally; with AlgebraicGeometry.Space.RelativeProjBaseChangePoints.baseChangeIso_hom_unique it determines r.

theorem baseChangeIso_hom_snd (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X')
    {T' : BigFppfOver B S hS} (r : T' ⟶ T)
    (u : {u : yoneda.obj T' ⟶ P' // u ≫ π' = yoneda.map r ≫ f}) :
    u.1 ≫ h.baseChangeIso.hom ≫ pullback.snd g π =
      (baseChangePointEquiv d d' g h.algebra_eq T f r u).1

AlgebraicGeometry.Space.RelativeProjBaseChangePoints.toScheme_map_pointEquivOver_baseChangeIso, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjBaseChangePoints.lean, line 774. The attribute's comment: “theta is taken across r: over a scheme point f : T -> X' the morphism of schemes T x_{X'} Proj_{X'}(g^*A) -> T x_X Proj_X(A) over T that r induces through the cartesian squares of Stacks 084B is fibreBaseChangeIso, the morphism along which fibreBaseChangeTheta pulls back the twists”.

Stacks 085C: the isomorphism θ is taken across r. Over a T-point f of X', the morphism of schemes T ×_{X'} Proj_{X'}(g^*𝒜) ⟶ T ×_X Proj_X(𝒜) over T that r induces through the two cartesian squares of Stacks 084B is AlgebraicGeometry.Space.RelativeProjPoints.fibreBaseChangeIso. So the isomorphism AlgebraicGeometry.Space.RelativeProjPoints.fibreBaseChangeTheta, which is stated as an isomorphism from the inverse image along fibreBaseChangeIso of the twists on T ×_X Proj_X(𝒜), is the base change to T of the source's θ : r^* pr₂^*(⨁_d 𝒪(d)) ⟶ ⨁_d 𝒪(d).

theorem toScheme_map_pointEquivOver_baseChangeIso (T : BigFppfOver B S hS)
    (f : yoneda.obj T ⟶ X') :
    (BigFppfOver.toScheme B S hS).map
        (d.pointEquivOver T (f ≫ g) (d'.fibreHom T f)
          ⟨d'.fibreToSpace T f ≫ h.baseChangeIso.hom ≫ pullback.snd g π,
            h.fibreToSpace_baseChangeIso_snd_comp T f⟩).1 =
      (fibreBaseChangeIso d d' g h.algebra_eq T f).hom

AlgebraicGeometry.Space.RelativeProjSituation.relativeProjBaseChangeIso, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/BaseChange.lean, line 170. The attribute's comment: “the isomorphism r on the constructed relative Proj: Proj_{X'}(g^*A) ≅ X' x_X Proj_X(A), over X' and compatible with the projections”.

Stacks 085C, the isomorphism r : Proj_{X'}(g^*𝒜) ⟶ X' ×_X Proj_X(𝒜), for a morphism g : X' ⟶ X of algebraic spaces over S and the quasi-coherent graded 𝒪_X-algebra 𝒜 of Situation 0849: an isomorphism of algebraic spaces from the relative Proj of g^*𝒜 on X' (relativeProjFunctor of s.pullback g) to the fibre product of g and the structure morphism Proj_X(𝒜) ⟶ X. It is an isomorphism over X' (relativeProjBaseChangeIso_hom_fst) and its second component is relativeProjBaseChangeHom, which sends the class of a quadruple (d', f', ℒ', ψ') to the class of (d', g ∘ f', ℒ', ψ') (relativeProjBaseChangeIso_hom_snd).

def relativeProjBaseChangeIso :
    (s.pullback g).relativeProjFunctor ≅ Limits.pullback g.hom s.relativeProjπ

AlgebraicGeometry.Space.RelativeProjSituation.relativeProjBaseChangeIso_hom_fst, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/BaseChange.lean, line 178. The attribute's comment: “r is an isomorphism over X', on the constructed relative Proj: r followed by the first projection X' x_X Proj_X(A) -> X' is the structure morphism Proj_{X'}(g^*A) -> X'”.

r is an isomorphism over X'.

theorem relativeProjBaseChangeIso_hom_fst :
    (s.relativeProjBaseChangeIso g).hom ≫ Limits.pullback.fst g.hom s.relativeProjπ =
      (s.pullback g).relativeProjπ

AlgebraicGeometry.Space.RelativeProjSituation.relativeProjBaseChangeIso_hom_snd, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/BaseChange.lean, line 187. The attribute's comment: “r on the constructed relative Proj sends the class of a quadruple (d', f', L', psi') to (f', (d', g f', L', psi')): followed by the second projection it is the morphism Proj_{X'}(g^*A) -> Proj_X(A) of quadruples”.

The second component of r is the morphism (d', f', ℒ', ψ') ↦ (d', g ∘ f', ℒ', ψ').

theorem relativeProjBaseChangeIso_hom_snd :
    (s.relativeProjBaseChangeIso g).hom ≫ Limits.pullback.snd g.hom s.relativeProjπ =
      s.relativeProjBaseChangeHom g

AlgebraicGeometry.Space.RelativeProjSituation.baseChangeTwistGradedAlgebraIsoOfPresentation, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjTwistDescent/BaseChangeThetaAlgebra.lean, line 363. The attribute's comment: “theta for every presentation X = U/R of X (and X' = U'_0/R'_0 of X'), the twists of Proj_{X'}(g^A) descended along the presentation of X' over U'_0 x_X U: the isomorphism r^ pr_2^ (+)_{d in Z} O_{Proj_X(A)}(d) -> (+)_{d in Z} O_{Proj_{X'}(g^A)}(d) of Z-graded O_{Proj_{X'}(g^*A)}-algebras”.

Stacks 085C, the isomorphism θ of graded algebras, for any presentations of X and X'. For a presentation X = U/R the twists 𝒪_P(d) of P = Proj_X(𝒜) are descended along it, and those of P' = Proj_{X'}(g^*𝒜) along the presentation X' = U'/R' with U' = U'₀ ×_X U obtained from any presentation X' = U'₀/R'₀ (AlgebraicGeometry.Space.Presentation.comap); then θ : r^* pr_2^* (⨁_d 𝒪_P(d)) ≅ ⨁_d 𝒪_{P'}(d) is an isomorphism of ℤ-graded 𝒪_{P'}-algebras (AlgebraicGeometry.Space.RelativeProjSituation.baseChangeTwistGradedAlgebraIso), with h = pr_2 ∘ r the morphism Proj_{X'}(g^*𝒜) ⟶ Proj_X(𝒜).

def baseChangeTwistGradedAlgebraIsoOfPresentation
    (Px₀ : Presentation s.site s.base s.containsBase X'.obj X'.property) :
    ModulePullbackGradedAlgebraIso (s.relativeProjBaseChangeSpaceHom g) (s.twistGradedAlgebra Px)
      ((s.pullback g).twistGradedAlgebra (Px.comap g.hom Px₀))
Tag 084E, a lemma

Tag 084E in the Stacks Project.

AlgebraicGeometry.Space.isSeparated_relativeProj, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProj.lean, line 375. References: EGA II (8.14.1), “more general”.

Stacks 084E. In the relative Proj situation of Stacks 0849, the structure morphism π : Proj_X(𝒜) ⟶ X is separated.

There is no hypothesis on the graded algebra. The relative Proj enters through a surjective étale scheme chart of X, as Stacks 084B presents it.

theorem isSeparated_relativeProj {X P : (BigFppfOver B S hS)ᵒᵖ ⥤ Type u}
    (hP : IsAlgebraicSpace B S hS P) (π : P ⟶ X)
    {t : Stacks.RelativeProj.Situation.{u}} (d : RelativeProjChart B S hS π t) :
    IsSeparated B S hS π

AlgebraicGeometry.Space.isSeparated_relativeProj_of_chart, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjChartSituation.lean, line 314. The attribute's comment: “for a chart presentation whose chart situation is the restriction of the graded algebra of the space, rather than an unrelated situation on the chart”. References: EGA II (8.14.1), “more general”.

Stacks 084E, with the chart situation pinned to 𝒜. The structure morphism of the relative Proj is separated, with no hypothesis on the graded algebra.

This is AlgebraicGeometry.Space.isSeparated_relativeProj read on the chart presentation whose situation is the restriction 𝒜|_V.

theorem isSeparated_relativeProj_of_chart
    {P : (BigFppfOver s.site s.base s.containsBase)ᵒᵖ ⥤ Type u}
    (hP : IsAlgebraicSpace s.site s.base s.containsBase P) (π : P ⟶ s.space.1)
    (c : RelativeProjSituationChart s π) :
    IsSeparated s.site s.base s.containsBase π

AlgebraicGeometry.Space.RelativeProjSituation.isSeparated_relativeProjπ, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/Separated.lean, line 67. References: EGA II (8.14.1), “more general”.

Stacks 084E. In Situation 0849 the structure morphism π : Proj_X(𝒜) ⟶ X of the relative homogeneous spectrum is separated.

There is no hypothesis on the graded algebra, exactly as in the source. Over a surjective étale scheme chart g : U ⟶ X the base change of π is the scheme-level relative Proj of the restriction g^*𝒜 (Stacks 084B), whose structure morphism is separated (Stacks 01O2), and separatedness descends along the chart (Stacks 03KM).

theorem isSeparated_relativeProjπ :
    IsSeparated s.site s.base s.containsBase s.relativeProjπ
Tag 084F, a lemma

Tag 084F in the Stacks Project.

AlgebraicGeometry.Space.isQuasiCompact_relativeProj, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProj.lean, line 392.

Stacks 084F. In the relative Proj situation of Stacks 0849, the structure morphism π : Proj_X(𝒜) ⟶ X is quasi-compact if one of the following holds: 𝒜 is of finite type as a sheaf of 𝒜₀-algebras; 𝒜 is generated by 𝒜₁ as an 𝒜₀-algebra and 𝒜₁ is a finite type 𝒜₀-module; or there is a finite type quasi-coherent 𝒜₀-submodule ℱ ⊆ 𝒜₊ such that 𝒜₊/ℱ𝒜 is a locally nilpotent sheaf of ideals of 𝒜/ℱ𝒜.

The relative Proj enters through a surjective étale scheme chart of X, as Stacks 084B presents it, and the three hypotheses are those of Stacks 07ZX on the restricted algebra living on that chart.

theorem isQuasiCompact_relativeProj {X P : (BigFppfOver B S hS)ᵒᵖ ⥤ Type u}
    (hP : IsAlgebraicSpace B S hS P) (hX : IsAlgebraicSpace B S hS X) (π : P ⟶ X)
    {t : Stacks.RelativeProj.Situation.{u}} (d : RelativeProjChart B S hS π t)
    (h : t.IsFiniteTypeOverDegreeZero ∨ t.IsFinitelyGeneratedInDegreeOne ∨
      t.HasNilpotentPositiveQuotient) :
    IsQuasiCompact B S hS π

AlgebraicGeometry.Space.isQuasiCompact_relativeProj_of_chart, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjChartSituation.lean, line 331. The attribute's comment: “with the three conditions read on the restriction of the graded algebra of the space to the chart, rather than on an unrelated situation on the chart”.

Stacks 084F, with the chart situation pinned to 𝒜. The structure morphism of the relative Proj is quasi-compact as soon as the restriction 𝒜|_V satisfies one of the three conditions of Stacks 07ZX.

The three conditions of the source are affine-local on the base, so for a quasi-coherent graded algebra on X they hold exactly when they hold for the restriction to a surjective étale chart; the version in StacksFrontier.AlgebraicGeometry.Spaces.RelativeProj can only state them for a situation unrelated to 𝒜.

theorem isQuasiCompact_relativeProj_of_chart
    {P : (BigFppfOver s.site s.base s.containsBase)ᵒᵖ ⥤ Type u}
    (hP : IsAlgebraicSpace s.site s.base s.containsBase P) (π : P ⟶ s.space.1)
    (c : RelativeProjSituationChart s π)
    (h : c.situation.IsFiniteTypeOverDegreeZero ∨
      c.situation.IsFinitelyGeneratedInDegreeOne ∨ c.situation.HasNilpotentPositiveQuotient) :
    IsQuasiCompact s.site s.base s.containsBase π

AlgebraicGeometry.Space.RelativeProjSituation.isQuasiCompact_π, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/QuasiCompact.lean, line 64.

Stacks 084F. In Situation 0849 the structure morphism π : Proj_X(𝒜) ⟶ X is quasi-compact if, étale locally on X, one of the following holds: 𝒜 is of finite type as an 𝒜₀-algebra; 𝒜 is generated by 𝒜₁ as an 𝒜₀-algebra and 𝒜₁ is a finite type 𝒜₀-module; there is a finite type 𝒜₀-submodule ℱ ⊆ 𝒜₊ such that 𝒜₊/ℱ𝒜 is a locally nilpotent sheaf of ideals of 𝒜/ℱ𝒜. Each condition holds at every étale point exactly when it holds at one surjective étale point (holdsAtEtalePoints_isFiniteTypeOverDegreeZero_iff and its siblings in StacksFrontier.AlgebraicGeometry.Spaces.RelativeProjPoint.EtaleLocalConditions).

theorem isQuasiCompact_π
    (h : s.HoldsAtEtalePoints SheafGradedAlgebra.IsFiniteTypeOverDegreeZero ∨
      s.HoldsAtEtalePoints SheafGradedAlgebra.IsFinitelyGeneratedInDegreeOne ∨
      s.HoldsAtEtalePoints SheafGradedAlgebra.HasNilpotentPositiveQuotient) :
    IsQuasiCompact s.site s.base s.containsBase s.π.hom
Tag 084G, a lemma

Tag 084G in the Stacks Project.

AlgebraicGeometry.Space.isFiniteType_relativeProj, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProj.lean, line 408.

Stacks 084G. In the relative Proj situation of Stacks 0849, if 𝒜 is of finite type as a sheaf of 𝒪_X-algebras then the structure morphism π : Proj_X(𝒜) ⟶ X is of finite type.

The relative Proj enters through a surjective étale scheme chart of X, as Stacks 084B presents it, and the hypothesis is that of Stacks 07ZY on the restricted algebra living on that chart.

theorem isFiniteType_relativeProj {X P : (BigFppfOver B S hS)ᵒᵖ ⥤ Type u}
    (hP : IsAlgebraicSpace B S hS P) (hX : IsAlgebraicSpace B S hS X) (π : P ⟶ X)
    {t : Stacks.RelativeProj.Situation.{u}} (d : RelativeProjChart B S hS π t)
    (h : t.IsFiniteType) :
    IsFiniteType B S hS π

AlgebraicGeometry.Space.isFiniteType_relativeProj_of_chart, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjChartSituation.lean, line 345. The attribute's comment: “with the finite type condition read on the restriction of the graded algebra of the space to the chart, rather than on an unrelated situation on the chart”.

Stacks 084G, with the chart situation pinned to 𝒜. The structure morphism of the relative Proj is of finite type as soon as the restriction 𝒜|_V is of finite type as a sheaf of algebras.

theorem isFiniteType_relativeProj_of_chart
    {P : (BigFppfOver s.site s.base s.containsBase)ᵒᵖ ⥤ Type u}
    (hP : IsAlgebraicSpace s.site s.base s.containsBase P) (π : P ⟶ s.space.1)
    (c : RelativeProjSituationChart s π) (h : c.situation.IsFiniteType) :
    IsFiniteType s.site s.base s.containsBase π

AlgebraicGeometry.Space.RelativeProjSituation.isFiniteType_π, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/FiniteType.lean, line 72.

Stacks 084G. In Situation 0849, if 𝒜 is of finite type as a sheaf of 𝒪_X-algebras, the structure morphism π : Proj_X(𝒜) ⟶ X of the relative homogeneous spectrum is of finite type.

The hypothesis is read étale locally, on the restriction g^*𝒜 of Stacks 084B to every étale scheme point g of X (taken through the u-small re-presentation of 𝒜, identified with 𝒜 by smallAlgebraEquiv); by holdsAtEtalePoints_isFiniteType_iff it suffices at one surjective étale scheme point.

theorem isFiniteType_π
    (hft : s.HoldsAtEtalePoints Stacks.AlgebraicGeometry.RelativeProjFiniteType.IsFiniteType) :
    IsFiniteType s.site s.base s.containsBase s.π.hom
Tag 084H, a lemma

Tag 084H in the Stacks Project.

AlgebraicGeometry.Space.RelativeProjSituation.universallyClosed_π, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/UniversallyClosed.lean, line 76.

Stacks 084H. In Situation 0849, if 𝒪_X → 𝒜₀ is integral and 𝒜 is of finite type as an 𝒜₀-algebra, the structure morphism π : Proj_X(𝒜) ⟶ X of the relative homogeneous spectrum is universally closed.

Both hypotheses are read étale locally, on the restriction g^*𝒜 of Stacks 084B to every étale scheme point g of X (taken through the u-small re-presentation of 𝒜, identified with 𝒜 by smallAlgebraEquiv); by holdsAtEtalePoints_isIntegralInDegreeZero_iff and holdsAtEtalePoints_isFiniteTypeOverDegreeZero_iff it suffices at one surjective étale scheme point.

theorem universallyClosed_π
    (hint : s.HoldsAtEtalePoints SheafGradedAlgebra.IsIntegralInDegreeZero)
    (hft : s.HoldsAtEtalePoints SheafGradedAlgebra.IsFiniteTypeOverDegreeZero) :
    UniversallyClosed s.site s.base s.containsBase s.π.hom

AlgebraicGeometry.Space.universallyClosed_relativeProj, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjUniversallyClosed.lean, line 125.

Stacks 084H. In the relative Proj situation of Stacks 0849, if the structure sheaf maps integrally into 𝒜₀ and 𝒜 is of finite type as an 𝒜₀-algebra, then the structure morphism π : Proj_X(𝒜) ⟶ X is universally closed.

The relative Proj enters through a surjective étale scheme chart of X, as Stacks 084B presents it, and the two hypotheses are the hypotheses of Stacks 07ZZ on the restricted algebra living on that chart. Universal closedness is étale local on the target — the leg used is AlgebraicGeometry.Space.universallyClosed_of_etale_atlas of Stacks 03IT — so the conclusion follows from the case of schemes, which is Stacks.RelativeProj.Situation.universallyClosed_relativeProjToBase_of_isIntegralInDegreeZero.

theorem universallyClosed_relativeProj {X P : (BigFppfOver B S hS)ᵒᵖ ⥤ Type u}
    (hX : IsAlgebraicSpace B S hS X) (π : P ⟶ X)
    {t : Stacks.RelativeProj.Situation.{u}} (d : RelativeProjChart B S hS π t)
    (hint : t.IsIntegralInDegreeZero) (hft : t.IsFiniteTypeOverDegreeZero) :
    UniversallyClosed B S hS π
Tag 084I, a lemma

Tag 084I in the Stacks Project.

Stacks.RelativeProj.Situation.properFiniteType_tfae, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/RelativeProj/FiniteTypeConditions.lean, line 176. The attribute's comment: “the equivalence of the two finite-type conditions, both read over every affine open of the base”.

Stacks 084I. For a relative Proj situation the two finite type conditions are equivalent: that the degree-zero part of the graded algebra is a finite type module over the structure sheaf and the graded algebra is of finite type over its degree-zero part, and that the degree-zero part is a finite type module over the structure sheaf and the graded algebra is of finite type over the structure sheaf.

theorem properFiniteType_tfae :
    List.TFAE
      [s.IsDegreeZeroFiniteType ∧ s.IsFiniteTypeOverDegreeZero,
        s.IsDegreeZeroFiniteType ∧ s.IsFiniteTypeOverBase]

AlgebraicGeometry.Space.RelativeProjSituation.properFiniteType_tfae_and_isProper, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFiniteTypeConditions.lean, line 234. The attribute's comment: “both assertions for Situation 0849: the equivalence of the two finite-type conditions, with finite type of A_0 the finite type O_X-module condition on the small etale site and the two algebra conditions read on the restriction of A to every etale chart, and properness of the structure morphism of the relative Proj under them, the relative Proj entering through its Tag 084B chart presentation on the restriction of A”.

Stacks 084I. In Situation 0849 — X an algebraic space over a scheme S and 𝒜 a quasi-coherent graded 𝒪_X-algebra — the following conditions are equivalent:

  1. 𝒜₀ is a finite type 𝒪_X-module and 𝒜 is of finite type as an 𝒜₀-algebra,
  2. 𝒜₀ is a finite type 𝒪_X-module and 𝒜 is of finite type as an 𝒪_X-algebra;

and if they hold, the structure morphism π : Proj_X(𝒜) ⟶ X is proper.

𝒜₀ being of finite type is SheafOfModules.IsFiniteTypeOnSite of the degree-zero piece; the two algebra conditions are read on the restriction of 𝒜 to every étale chart. The relative Proj π : P ⟶ X is any morphism of algebraic spaces presented, on a surjective étale chart, as the relative Proj of the restriction of 𝒜 (Stacks 084B), which is how the source's proof reaches the scheme case.

theorem properFiniteType_tfae_and_isProper :
    List.TFAE
        [SheafOfModules.IsFiniteTypeOnSite (s.algebra.piece 0) ∧ s.IsFiniteTypeOverDegreeZero,
          SheafOfModules.IsFiniteTypeOnSite (s.algebra.piece 0) ∧ s.IsFiniteTypeOverBase] ∧
      (SheafOfModules.IsFiniteTypeOnSite (s.algebra.piece 0) ∧ s.IsFiniteTypeOverDegreeZero →
        ∀ {P : (BigFppfOver s.site s.base s.containsBase)ᵒᵖ ⥤ Type u},
          IsAlgebraicSpace s.site s.base s.containsBase P → ∀ (π : P ⟶ s.space.1),
            RelativeProjSituationChart s π → IsProper s.site s.base s.containsBase π)

AlgebraicGeometry.Space.RelativeProjSituation.tfae_finiteType_and_isProper_π, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/Proper.lean, line 169.

Stacks 084I. In Situation 0849 — X an algebraic space over a scheme S and 𝒜 a quasi-coherent graded 𝒪_X-algebra — the following conditions are equivalent:

  1. 𝒜₀ is a finite type 𝒪_X-module and 𝒜 is of finite type as an 𝒜₀-algebra,
  2. 𝒜₀ is a finite type 𝒪_X-module and 𝒜 is of finite type as an 𝒪_X-algebra;

and if they hold, the structure morphism π : Proj_X(𝒜) ⟶ X of the relative homogeneous spectrum of Stacks 084C is proper.

The conditions are read étale locally, on the restriction g^*𝒜 of Stacks 084B to every étale scheme point g of X, as for Stacks 084G and 084H: 𝒜₀ of finite type is SheafOfModules.IsFiniteType of the degree-zero piece of g^*𝒜, and the two algebra conditions are the hypotheses of Stacks 084H and 084G.

theorem tfae_finiteType_and_isProper_π :
    List.TFAE
        [s.HoldsAtEtalePoints (fun A => SheafOfModules.IsFiniteType (A.piece 0)) ∧
            s.HoldsAtEtalePoints SheafGradedAlgebra.IsFiniteTypeOverDegreeZero,
          s.HoldsAtEtalePoints (fun A => SheafOfModules.IsFiniteType (A.piece 0)) ∧
            s.HoldsAtEtalePoints Stacks.AlgebraicGeometry.RelativeProjFiniteType.IsFiniteType] ∧
      (s.HoldsAtEtalePoints (fun A => SheafOfModules.IsFiniteType (A.piece 0)) ∧
          s.HoldsAtEtalePoints SheafGradedAlgebra.IsFiniteTypeOverDegreeZero →
        IsProper s.site s.base s.containsBase s.π.hom)
Tag 085D, a lemma

Tag 085D in the Stacks Project.

AlgebraicGeometry.Space.RelativeProjPoints.pointEquivF1, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProj.lean, line 744. The attribute's comment: “part (1): the relative Proj represents the functor of triples, over a point of the base”.

Stacks 085D, part (1), fibred over a point of the base.

For a quasi-coherent graded 𝒪_X-algebra 𝒜 generated as an 𝒜₀-algebra by 𝒜₁, and P = Proj_X(𝒜), the T'-points of P lying over a point f of X at T are the isomorphism classes of pairs (ℒ, ψ) with ℒ invertible on the scheme of T' and ψ : f^*𝒜 ⟶ ⨁_{n ≥ 0} ℒ^{⊗ n} a graded algebra map surjective in degree one — that is, the triples (f ∘ r, ℒ, ψ) of the functor F₁.

The relative Proj enters through its base changes to schemes, as Stacks 084B presents them, and the scheme-level representing bijections of Stacks 01O4 are the hypothesis rep; the degree-one generation hypothesis of the source is hgen.

noncomputable def pointEquivF1 (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X)
    {T' : BigFppfOver B S hS} (r : T' ⟶ T) :
    {u : yoneda.obj T' ⟶ P // u ≫ π = yoneda.map r ≫ f} ≃
      F1 (d.algebra T f) TA ((BigFppfOver.toScheme B S hS).map r)

AlgebraicGeometry.Space.RelativeProjPoints.pointEquivF1_natural, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProj.lean, line 765. The attribute's comment: “part (1): naturality of the representing bijection in the test object”.

Stacks 085D, part (1): the representing bijection is natural in the test object.

Restricting a T'-point of P along r' : T'' ⟶ T' pulls back the class of triples it represents.

theorem pointEquivF1_natural (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X)
    {T' T'' : BigFppfOver B S hS} (r : T' ⟶ T) (r' : T'' ⟶ T')
    (u : {u : yoneda.obj T' ⟶ P // u ≫ π = yoneda.map r ≫ f}) :
    d.pointEquivF1 TA i hgen rep T f (r' ≫ r) ⟨yoneda.map r' ≫ u.1, by
        rw [Category.assoc, u.2, ← Category.assoc, ← CategoryTheory.Functor.map_comp]⟩
      = (rep T f).pullbackClass ((BigFppfOver.toScheme B S hS).map r')
          (d.pointEquivF1 TA i hgen rep T f r u)

AlgebraicGeometry.Space.RelativeProjPoints.homEquivF1, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProj.lean, line 785. The attribute's comment: “part (1): the relative Proj represents the functor of triples”.

Stacks 085D, part (1). The T-points of P = Proj_X(𝒜) are the isomorphism classes of triples (f, ℒ, ψ) of the functor F₁: a point f of X at T, an invertible module ℒ on the scheme of T, and a graded algebra map f^*𝒜 ⟶ ⨁_{n ≥ 0} ℒ^{⊗ n} surjective in degree one.

The decomposition of a point of P by its image in X matches the decomposition of a triple by its first component, and over each point of X the two fibres agree by AlgebraicGeometry.Space.RelativeProjPoints.pointEquivF1.

noncomputable def homEquivF1 (T : BigFppfOver B S hS) :
    (yoneda.obj T ⟶ P) ≃ Σ f : yoneda.obj T ⟶ X, F1 (d.algebra T f) TA (𝟙 _)

AlgebraicGeometry.Space.RelativeProjSituation.relativeProjIsoF1OfGenerated, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjF1Generated.lean, line 442. The attribute's comment: “part (1), on the constructed relative Proj: for a quasi-coherent graded O_X-algebra A on an algebraic space X generated as an A_0-algebra by A_1 (over every affine object V of the small etale site of X, the ring of sections of A over V is generated by its degree-one part over its degree-zero part), the relative Proj P = relativeProjFunctor of Tags 084A-084B represents the functor F_1 of isomorphism classes of triples (f : T -> X, L invertible on T, psi : f^*A -> ⨁_{n >= 0} L^{tensor n} a map of graded O_T-algebras surjective in degree one), as a natural isomorphism of functors on the big fppf site; F_1 is functorial by pullback of triples (relativeProjF1Functor)”.

Stacks 085D, part (1), on the constructed relative Proj. For a quasi-coherent graded 𝒪_X-algebra 𝒜 on an algebraic space X generated as an 𝒜₀-algebra by 𝒜₁ (RelativeProjSituation.IsGeneratedInDegreeOne: over every affine étale chart V of X the sections ⨁ₙ 𝒜ₙ(V) are generated by 𝒜₁(V) over 𝒜₀(V)), the relative homogeneous spectrum P = Proj_X(𝒜) constructed in Stacks 084A–084B represents the functor F₁ which sends T to the isomorphism classes of triples (f, ℒ, ψ): f : T → X, ℒ an invertible 𝒪_T-module, and ψ : f^*𝒜 ⟶ ⨁_{n ≥ 0} ℒ^{⊗ n} a map of graded 𝒪_T-algebras inducing a surjection f^*𝒜₁ ⟶ ℒ.

F₁ is relativeProjF1Functor, functorial by pullback of triples; the isomorphism is inverse to the natural map f1ToRelativeProj sending a triple to the point of P it classifies (P is lifted to the universe of F₁). TA is the choice of tensor algebras needed to write ⨁_{n ≥ 0} ℒ^{⊗ n}. It is relativeProjIsoF1, whose hypothesis on the restrictions of 𝒜 to the étale charts follows from generation of 𝒜 itself (IsGeneratedInDegreeOne.isGeneratedInDegreeOneOnCharts).

def relativeProjIsoF1OfGenerated (hgen : s.IsGeneratedInDegreeOne) :
    s.relativeProjFunctor ⋙ uliftFunctor.{u + 1} ≅ s.relativeProjF1Functor TA

AlgebraicGeometry.Space.RelativeProjPoints.pointEquivF1OfGenerated, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjRepresentsGenerated.lean, line 196. The attribute's comment: “part (1), over a point of the base: for a quasi-coherent graded O_X-algebra A generated as an A_0-algebra by A_1 and P = Proj_X(A), the T'-points of P lying over a T-point f of X are in bijection with the strict isomorphism classes of pairs (L, psi) -- L invertible on the scheme of T' and psi : f^A -> ⨁_{n >= 0} L^{tensor n} a graded algebra map surjective in degree one -- that is, with the triples (f . r, L, psi) of F_1 over f. The scheme-level representing bijections of Stacks 01O4 are proved from the degree-one generation, by ProjRepresentsF1.f1Bundle. P is given, as throughout this library's relative Proj of algebraic spaces, by its base changes T x_X P = Proj_T(f^A) to the scheme points of X (RelativeProjPoints, the second assertion of Stacks 084B); TA is the choice of tensor algebras needed to write ⨁_{n >= 0} L^{tensor n}. Parts (2) and (3) are epi_psiTranspose_pointTwistData_one, isInvertible_pointTwist and isIso_mulSheaf_pointTwistAlgebra”.

Stacks 085D, part (1), fibred over a point of the base.

For a quasi-coherent graded 𝒪_X-algebra 𝒜 generated as an 𝒜₀-algebra by 𝒜₁ and P = Proj_X(𝒜), the T'-points of P lying over a point f of X at T are the strict isomorphism classes of pairs (ℒ, ψ) with ℒ invertible on the scheme of T' and ψ : f^*𝒜 ⟶ ⨁_{n ≥ 0} ℒ^{⊗ n} a graded algebra map surjective in degree one — that is, the triples (f ∘ r, ℒ, ψ) of the functor F₁.

The relative Proj enters through its base changes to schemes, which is what Stacks 084B supplies and all the source's proof uses. The degree-one generation hypothesis hgen is the source's own, and it is the only hypothesis: the scheme-level representing bijections of Stacks 01O4 are built from it by Stacks.AlgebraicGeometry.ProjRepresentsF1.f1Bundle, not assumed.

noncomputable def pointEquivF1OfGenerated (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X)
    {T' : BigFppfOver B S hS} (r : T' ⟶ T) :
    {u : yoneda.obj T' ⟶ P // u ≫ π = yoneda.map r ≫ f} ≃
      F1 (d.algebra T f) TA ((BigFppfOver.toScheme B S hS).map r)

AlgebraicGeometry.Space.RelativeProjPoints.pointEquivF1OfGenerated_natural, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjRepresentsGenerated.lean, line 213. The attribute's comment: “part (1), naturality of the representing bijection in the test object, under degree-one generation alone: restricting a T'-point of P along r' : T'' -> T' pulls back the class of triples it represents, along the pullback-of-classes operation of the scheme-level bijections that ProjRepresentsF1.f1Bundle builds from the degree-one generation”.

Stacks 085D, part (1): the representing bijection is natural in the test object.

Restricting a T'-point of P along r' : T'' ⟶ T' pulls back the class of triples it represents. Only the degree-one generation hypothesis of the source enters; the scheme-level naturality it is read off is that of Stacks.AlgebraicGeometry.ProjRepresentsF1.f1Bundle.

theorem pointEquivF1OfGenerated_natural (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X)
    {T' T'' : BigFppfOver B S hS} (r : T' ⟶ T) (r' : T'' ⟶ T')
    (u : {u : yoneda.obj T' ⟶ P // u ≫ π = yoneda.map r ≫ f}) :
    d.pointEquivF1OfGenerated TA hgen T f (r' ≫ r) ⟨yoneda.map r' ≫ u.1, by
        rw [Category.assoc, u.2, ← Category.assoc, ← CategoryTheory.Functor.map_comp]⟩
      = (f1Bundle (d.algebra T f) TA (hgen T f)).pullbackClass
          ((BigFppfOver.toScheme B S hS).map r')
          (d.pointEquivF1OfGenerated TA hgen T f r u)

AlgebraicGeometry.Space.RelativeProjPoints.homEquivF1OfGenerated, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjRepresentsGenerated.lean, line 243. The attribute's comment: “part (1): for a quasi-coherent graded O_X-algebra A generated as an A_0-algebra by A_1, the T-points of P = Proj_X(A) are in bijection with the strict isomorphism classes of triples (f, L, psi) of the functor F_1 -- a T-point f of X, an invertible module L on the scheme of T, and a graded algebra map f^A -> ⨁_{n >= 0} L^{tensor n} surjective in degree one. The scheme-level representing bijections of Stacks 01O4 are proved from the degree-one generation, by ProjRepresentsF1.f1Bundle. P is given by its base changes T x_X P = Proj_T(f^A) to the scheme points of X (RelativeProjPoints, the second assertion of Stacks 084B). F_1 is given fibred over the points of X, with its functoriality in the test object over each point (pointEquivF1OfGenerated_natural), because RelativeProjPoints does not record the comparison g^(f^A) = (f . g)^*A between restrictions at different points”.

Stacks 085D, part (1). For a quasi-coherent graded 𝒪_X-algebra 𝒜 generated as an 𝒜₀-algebra by 𝒜₁, the T-points of P = Proj_X(𝒜) are the strict isomorphism classes of triples (f, ℒ, ψ) of the functor F₁: a point f of X at T, an invertible module ℒ on the scheme of T, and a graded algebra map f^*𝒜 ⟶ ⨁_{n ≥ 0} ℒ^{⊗ n} surjective in degree one.

The decomposition of a point of P by its image in X matches the decomposition of a triple by its first component, and over each point of X the two fibres agree by AlgebraicGeometry.Space.RelativeProjPoints.pointEquivF1OfGenerated. Degree-one generation is the only hypothesis.

noncomputable def homEquivF1OfGenerated (T : BigFppfOver B S hS) :
    (yoneda.obj T ⟶ P) ≃ Σ f : yoneda.obj T ⟶ X, F1 (d.algebra T f) TA (𝟙 _)

AlgebraicGeometry.Space.RelativeProjPoints.epi_psiTranspose_pointTwistData_one, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjRepresentsGenerated.lean, line 270. The attribute's comment: “part (2): for a quasi-coherent graded O_X-algebra A generated as an A_0-algebra by A_1 and P = Proj_X(A), the canonical map pi^A_1 -> O_P(1) is surjective, at every scheme point f : T -> X of the base: the transpose pi_T^(f^A)_1 -> O(1) of the degree-one component of psi on T x_X P = Proj_T(f^A) is an epimorphism of sheaves of modules”.

Stacks 085D, part (2). For a quasi-coherent graded 𝒪_X-algebra 𝒜 generated as an 𝒜₀-algebra by 𝒜₁ and P = Proj_X(𝒜), the canonical map π^*𝒜₁ ⟶ 𝒪_P(1) is surjective: after base change to any scheme point f : T ⟶ X of the base it is the transpose π_T^*(f^*𝒜)₁ ⟶ 𝒪(1) of the degree-one component of ψ on Proj_T(f^*𝒜), and that is an epimorphism by Stacks.AlgebraicGeometry.RelativeProjDegreeOne.epi_psiTranspose.

theorem epi_psiTranspose_pointTwistData_one (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X) :
    Epi (Stacks.AlgebraicGeometry.RelativeProjDegreeOne.psiTranspose (d.pointTwistData T f) 1)

AlgebraicGeometry.Space.RelativeProjPoints.isInvertible_pointTwist, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjRepresentsGenerated.lean, line 283. The attribute's comment: “part (3), invertibility: for a quasi-coherent graded O_X-algebra A generated as an A_0-algebra by A_1 and P = Proj_X(A), every O_P(n), n in Z, is an invertible module, at every scheme point f : T -> X of the base: the twist O(n) on T x_X P = Proj_T(f^*A) is invertible”.

Stacks 085D, part (3), invertibility. For a quasi-coherent graded 𝒪_X-algebra 𝒜 generated as an 𝒜₀-algebra by 𝒜₁ and P = Proj_X(𝒜), each twist 𝒪_P(n) is invertible: after base change to any scheme point f : T ⟶ X of the base it is the twist 𝒪(n) of Proj_T(f^*𝒜), which is invertible by Stacks 01O4, Stacks.AlgebraicGeometry.TwistMapsInvertible.twistDataOfGradedAlgebra_isInvertible.

theorem isInvertible_pointTwist (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X) (n : ℤ) :
    AlgebraicGeometry.SheafOfModules.IsInvertible (relativeProj (d.algebra T f)).scheme.presheaf
      (relativeProj (d.algebra T f)).scheme.ringCatSheaf.2 (d.pointTwist T f n)

AlgebraicGeometry.Space.RelativeProjPoints.isIso_mulSheaf_pointTwistAlgebra, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjRepresentsGenerated.lean, line 298. The attribute's comment: “part (3), multiplication: for a quasi-coherent graded O_X-algebra A generated as an A_0-algebra by A_1 and P = Proj_X(A), the multiplication maps O_P(n) (x) O_P(m) -> O_P(n+m) are isomorphisms for all integers n, m, at every scheme point f : T -> X of the base: the multiplication of the twists on T x_X P = Proj_T(f^*A) is an isomorphism in all degrees”.

Stacks 085D, part (3), multiplication. For a quasi-coherent graded 𝒪_X-algebra 𝒜 generated as an 𝒜₀-algebra by 𝒜₁ and P = Proj_X(𝒜), the multiplication maps induce isomorphisms 𝒪_P(n) ⊗_{𝒪_P} 𝒪_P(m) ⟶ 𝒪_P(n + m) for all integers n and m: after base change to any scheme point f : T ⟶ X of the base they are the multiplication maps of the twists of Proj_T(f^*𝒜), which are isomorphisms by Stacks 01O4, Stacks.AlgebraicGeometry.TwistMapsInvertible.isIso_mulSheaf_twistDataOfGradedAlgebra.

theorem isIso_mulSheaf_pointTwistAlgebra (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X)
    (n m : ℤ) :
    IsIso (_root_.SheafOfModules.GradedAlgebra.mulSheaf (d.pointTwistAlgebra T f) n m)
Sources

Section71.12 Functoriality of relative proj#

Section 71.12 of the Stacks Project, Tag 085E. 5 tags here are carried by 36 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.

Tag 085F, a lemma

Tag 085F in the Stacks Project.

AlgebraicGeometry.Space.RelativeProjHomPoints.relativeMapSubfunctor, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 572. The attribute's comment: “the open subspace U(ψ) of Q”.

Tag 085F, the open subspace U(ψ) ⊆ Q. The subfunctor of Q = Proj_X(ℬ) whose T-points are the points lying in the domain of definition of ψ: those whose section of the scheme-level relative Proj of ℬ|_T factors through the open U(ψ|_T) of Tag 07ZG.

def relativeMapSubfunctor : Subfunctor Q

AlgebraicGeometry.Space.RelativeProjHomPoints.mem_relativeMapSubfunctor_iff, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 592. The attribute's comment: “the étale-local description of the open subspace U(ψ)”.

Tag 085F's étale-local description of the open subspace. A point of Q lying over a point f of the base at T, along any r : T' ⟶ T, belongs to U(ψ) exactly when its section of the scheme-level relative Proj of ℬ|_T factors through the open U(ψ|_T) of Tag 07ZG.

Read at an étale chart W of X and r = 𝟙, this is the assertion U(ψ) ×_X W = U(ψ|_W) of the source.

theorem mem_relativeMapSubfunctor_iff (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X)
    {T' : BigFppfOver B S hS} (r : T' ⟶ T) (u : yoneda.obj T' ⟶ Q)
    (hu : u ≫ πQ = yoneda.map r ≫ f) :
    yonedaEquiv u ∈ hψ.relativeMapSubfunctor.obj (op T') ↔
      dQ.sectionOfPoint T f r u hu ⁻¹ᵁ (hψ.hom T f).relativeMapDomain = ⊤

AlgebraicGeometry.Space.RelativeProjHomPoints.relativeMapSpaceHom, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 611. The attribute's comment: “the morphism r_ψ : U(ψ) ⟶ P”.

Tag 085F, the morphism r_ψ : U(ψ) ⟶ P of algebraic spaces. On a T-point of U(ψ) it is the point of P = Proj_X(𝒜) whose section of the scheme-level relative Proj of 𝒜|_T is obtained from the section of ℬ|_T by the morphism r_{ψ|_T} of Tag 07ZG.

def relativeMapSpaceHom : hψ.relativeMapSubfunctor.toFunctor ⟶ P

AlgebraicGeometry.Space.RelativeProjHomPoints.relativeMapSpaceHom_comp, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 623. The attribute's comment: “the morphism r_ψ is a morphism over X”.

Tag 085F: the morphism r_ψ is a morphism over X.

theorem relativeMapSpaceHom_comp :
    hψ.relativeMapSpaceHom ≫ πP = hψ.relativeMapSubfunctor.ι ≫ πQ

AlgebraicGeometry.Space.RelativeProjHomPoints.app_relativeMapSpaceHom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 642. The attribute's comment: “the étale-local description of the morphism r_ψ”.

Tag 085F's étale-local description of the morphism r_ψ. On a point of U(ψ) lying over a point f of the base at T, along any r : T' ⟶ T, the morphism r_ψ produces the point of P whose section of the scheme-level relative Proj of 𝒜|_T is the one the morphism r_{ψ|_T} of Tag 07ZG produces; that last identification is AlgebraicGeometry.Space.sectionOfPoint_pointHomOn.

Read at an étale chart W of X and r = 𝟙, this is the assertion that r_ψ restricted to U(ψ) ×_X W is the morphism r_{ψ|_W} of the source.

theorem app_relativeMapSpaceHom (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X)
    {T' : BigFppfOver B S hS} (r : T' ⟶ T) (u : yoneda.obj T' ⟶ Q)
    (hu : u ≫ πQ = yoneda.map r ≫ f) (hd : IsDefinedOn dP dQ hψ.hom T f r u hu)
    (hx : yonedaEquiv u ∈ hψ.relativeMapSubfunctor.obj (op T')) :
    hψ.relativeMapSpaceHom.app (op T') ⟨yonedaEquiv u, hx⟩ =
      yonedaEquiv (pointHomOn dP dQ hψ.hom T f r u hu hd)

AlgebraicGeometry.Space.RelativeProjHomPoints.relativeMapSubfunctor_unique, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 655. The attribute's comment: “the étale-local description determines U(ψ)”.

Tag 085F's description determines the open subspace. A subfunctor of Q whose points are exactly the points in the domain of definition of ψ is U(ψ).

theorem relativeMapSubfunctor_unique (G : Subfunctor Q)
    (hG : ∀ (T : BigFppfOver B S hS) (u : yoneda.obj T ⟶ Q),
      yonedaEquiv u ∈ G.obj (op T) ↔ IsDefined dP dQ hψ.hom T u) :
    G = hψ.relativeMapSubfunctor

AlgebraicGeometry.Space.RelativeProjHomPoints.relativeMapSpaceHom_unique, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 669. The attribute's comment: “the étale-local description determines r_ψ”.

Tag 085F's description determines the morphism. A morphism out of U(ψ) whose value at every point is the point of P the scheme-level morphism r_{ψ|_T} of Tag 07ZG produces is r_ψ.

theorem relativeMapSpaceHom_unique (k : hψ.relativeMapSubfunctor.toFunctor ⟶ P)
    (hk : ∀ (Y : (BigFppfOver B S hS)ᵒᵖ) (y : Q.obj Y)
      (hy : y ∈ hψ.relativeMapSubfunctor.obj Y),
      k.app Y ⟨y, hy⟩ = yonedaEquiv (pointHomAt dP dQ hψ.hom Y.unop (yonedaEquiv.symm y)
        ((hψ.mem_relativeMapSubfunctor_obj y).1 hy))) :
    k = hψ.relativeMapSpaceHom

AlgebraicGeometry.Space.RelativeProjHomPoints.isOpenSubspace_relativeMapSubfunctor, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 796. The attribute's comment: “U(ψ) is an open subspace of Q”.

Tag 085F: U(ψ) is an open subspace of Q = Proj_X(ℬ).

theorem isOpenSubspace_relativeMapSubfunctor (hQ : IsAlgebraicSpace B S hS Q) :
    IsOpenSubspace B S hS hψ.relativeMapSubfunctor

AlgebraicGeometry.Space.RelativeProjHomPoints.relativeTwistSpaceMap, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 856. The attribute's comment: “the third component: the map θ on the n-th twists, over a scheme point of the base — the scheme-level θ of Tag 07ZG for the restricted map, which is what the tag's étale-local characterization of θ asks for”.

Tag 085F, the third component: the map θ on the twists, over a scheme point of the base. For every n : ℤ,

θ_n : r_ψ^*𝒪_P(n) ⟶ 𝒪_Q(n)|_{U(ψ)},

read over the scheme point (T, f) of X as the map Tag 07ZG attaches to the restriction ψ|_{T,f} — a single morphism of sheaves of modules on the whole of U(ψ|_{T,f}), namely Stacks.AlgebraicGeometry.Tag07ZGTwist.relativeTwistMap.

This is θ itself, not a chart-by-chart approximation of it: Tag 085F characterizes θ by the property that its restriction to U(ψ) ×_X W is the scheme-level θ of ψ|_W for every scheme W étale over X, and that restriction is exactly what this is. The characterization is AlgebraicGeometry.Space.RelativeProjHomPoints.relativeTwistSpaceMap_chart and …relativeTwistSpaceMap_unique.

abbrev relativeTwistSpaceMap (hψ : RelativeProjHomPoints dP dQ)
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X) (n : ℤ) :
    (Scheme.Modules.pullback (relativeMapHom (hψ.hom T f))).obj (dP.pointTwist T f n) ⟶
      (Scheme.Modules.pullback (hψ.hom T f).relativeMapDomain.ι).obj (dQ.pointTwist T f n)

AlgebraicGeometry.Space.RelativeProjHomPoints.relativeTwistAlgebraSpaceHom, an abbrev in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 872. The attribute's comment: “the third component as a map of ℤ-graded algebras, over a scheme point of the base”.

Tag 085F, the third component as a map of ℤ-graded algebras. The source asks for θ as a homomorphism

θ : r_ψ^*(⨁_{d ∈ ℤ} 𝒪_P(d)) ⟶ ⨁_{d ∈ ℤ} 𝒪_{U(ψ)}(d)

of sheaves of ℤ-graded algebras, not only for the degreewise family; over a scheme point of the base that is Stacks.AlgebraicGeometry.Tag07ZGTwist.relativeTwistAlgebraHom, whose degree-n component is AlgebraicGeometry.Space.RelativeProjHomPoints.relativeTwistSpaceMap.

abbrev relativeTwistAlgebraSpaceHom (hψ : RelativeProjHomPoints dP dQ)
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X)

AlgebraicGeometry.Space.RelativeProjHomPoints.relativeTwistSpaceMap_chart, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 893. The attribute's comment: “the étale-local description of θ, read on the affine charts of a scheme point of the base”.

Tag 085F's étale-local description of θ. Over the piece of U(ψ|_{T,f}) lying over an affine open U of the scheme point T of the base, θ_n is Tag 01MY's comparison map for the induced homomorphism Γ(U, 𝒜|_T) ⟶ Γ(U, ℬ|_T) of graded rings of sections, conjugated by the chart identifications of Tag 01NR.

This is the affine-local reading of the étale-local description; the étale-local description itself — that θ restricted to U(ψ) ×_X W is the scheme-level θ of ψ|_W — holds by construction, AlgebraicGeometry.Space.RelativeProjHomPoints.relativeTwistSpaceMap being that restriction.

theorem relativeTwistSpaceMap_chart (hψ : RelativeProjHomPoints dP dQ)
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X) (n : ℤ)
    (U : ((BigFppfOver.toScheme B S hS).obj T).affineOpens) :
    (Scheme.Modules.pullback (pieceIncl (hψ.hom T f) U)).map (hψ.relativeTwistSpaceMap T f n) =
      relativeTwistChart (hψ.hom T f) n U

AlgebraicGeometry.Space.RelativeProjHomPoints.relativeTwistSpaceMap_unique, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 904. The attribute's comment: “the étale-local description determines θ”.

Tag 085F's description determines θ. A map on the n-th twists whose restriction to the piece over every affine open of the scheme point of the base is Tag 01MY's comparison map there is θ_n.

theorem relativeTwistSpaceMap_unique (hψ : RelativeProjHomPoints dP dQ)
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X) (n : ℤ)
    {θ : (Scheme.Modules.pullback (relativeMapHom (hψ.hom T f))).obj (dP.pointTwist T f n) ⟶
      (Scheme.Modules.pullback (hψ.hom T f).relativeMapDomain.ι).obj (dQ.pointTwist T f n)}
    (hθ : ∀ U : ((BigFppfOver.toScheme B S hS).obj T).affineOpens,
      (Scheme.Modules.pullback (pieceIncl (hψ.hom T f) U)).map θ =
        relativeTwistChart (hψ.hom T f) n U) :
    θ = hψ.relativeTwistSpaceMap T f n

AlgebraicGeometry.Space.RelativeProjSituation.relativeMapTriple_spec, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/FunctorialityTriple.lean, line 66. The attribute's comment: “the triple (U(ψ), r_ψ, θ) with θ a map of graded algebras, its description by the triple of Tag 07ZG over the scheme points of X, and its uniqueness”.

Stacks 085F. Let ψ : 𝒜 ⟶ ℬ be a map of quasi-coherent graded 𝒪_X-algebras on an algebraic space X, P = Proj_X(𝒜), Q = Proj_X(ℬ), and X = U/R a presentation. Then: 1. U(ψ) ⊆ Q is an open subspace, and r_ψ : U(ψ) ⟶ P is a morphism over X; 2. θ : r_ψ^*(⨁_d 𝒪_P(d)) ⟶ ι^*(⨁_d 𝒪_Q(d)) is a map of ℤ-graded 𝒪_{U(ψ)}-algebras whose degree-d component is the glued map θ_d, which is, on U(ψ) ×_X U, the component θ_d of Tag 07ZG for ψ|_U; 3. over every scheme point f : T ⟶ X, U(ψ) ×_X T is U(ψ|_T) of Tag 07ZG and r_ψ there is r_{ψ|_T}; 4. these properties determine U(ψ), r_ψ, the θ_d and θ.

theorem relativeMapTriple_spec :
    IsOpenSubspace B S hS (𝔥).relativeMapSubfunctor ∧
    (relativeMapSpaceMor h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ).hom ≫ (𝔰₁).relativeProjπ =
      (relativeMapSpaceι h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ).hom ≫ (𝔰₂).relativeProjπ ∧
    (∀ n : ℤ, type_of% (twistAlgebraHomOfMul_app h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ Px
      (twistMap_mul h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ Px) n)) ∧
    (∀ n : ℤ, type_of% (isDescendedChartHom_twistMap h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ Px n)) ∧
    (∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X.1) {T' : BigFppfOver B S hS}
      (r : T' ⟶ T) (v : yoneda.obj T' ⟶ (𝔰₂).relativeProjFunctor)
      (hv : v ≫ (𝔰₂).relativeProjπ = yoneda.map r ≫ f),
      type_of% ((𝔥).mem_relativeMapSubfunctor_iff T f r v hv)) ∧
    (∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X.1) {T' : BigFppfOver B S hS}
      (r : T' ⟶ T) (v : yoneda.obj T' ⟶ (𝔰₂).relativeProjFunctor)
      (hv : v ≫ (𝔰₂).relativeProjπ = yoneda.map r ≫ f)
      (hd : IsDefinedOn (𝔰₁).relativeProjPoints (𝔰₂).relativeProjPoints (𝔥).hom T f r v hv)
      (hx : yonedaEquiv v ∈ (𝔥).relativeMapSubfunctor.obj (op T')),
      type_of% ((𝔥).app_relativeMapSpaceHom T f r v hv hd hx)) ∧
    (∀ G : Subfunctor (𝔰₂).relativeProjFunctor,
      type_of% ((𝔥).relativeMapSubfunctor_unique G)) ∧
    (∀ k : (𝔥).relativeMapSubfunctor.toFunctor ⟶ (𝔰₁).relativeProjFunctor,
      type_of% ((𝔥).relativeMapSpaceHom_unique k)) ∧
    (∀ (n : ℤ) (χ : type_of% (twistMap h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ Px n)),
      type_of% (eq_twistMap h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ Px n (χ := χ))) ∧
    (∀ θ' : SheafOfModules.GradedAlgebra.Hom
        ((gradedPull (X := smallEtaleRingedTopos B S hS 𝒢)
          (Y := smallEtaleRingedTopos B S hS (projSpace₁ h₁c h₁n h₁q h₁k))
          (smallEtaleRingedToposHom B S hS
            (relativeMapSpaceMor h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ))).obj
          ((𝔰₁).twistGradedAlgebra Px))
        ((gradedPull (X := smallEtaleRingedTopos B S hS 𝒢)
          (Y := smallEtaleRingedTopos B S hS (projSpace₂ h₂c h₂n h₂q h₂k))
          (smallEtaleRingedToposHom B S hS
            (relativeMapSpaceι h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ))).obj
          ((𝔰₂).twistGradedAlgebra Px)),
      type_of% (eq_twistAlgebraHomOfMul h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ Px
        (twistMap_mul h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ Px) θ'))
Tag 085G, a lemma

Tag 085G in the Stacks Project.

AlgebraicGeometry.Space.RelativeProjHomPoints.comp_relativeMapSubfunctor_le, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 1155. The attribute's comment: “the domain U(ψ ∘ φ) lies in U(ψ)”.

Tag 085G, the first assertion: U(ψ ∘ φ) ⊆ U(ψ).

theorem comp_relativeMapSubfunctor_le :
    (hφ.comp hψ).relativeMapSubfunctor ≤ hψ.relativeMapSubfunctor

AlgebraicGeometry.Space.RelativeProjHomPoints.mem_comp_relativeMapSubfunctor_iff, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 1170. The attribute's comment: “U(ψ ∘ φ) is the inverse image of U(φ) under r_ψ”.

Tag 085G, the first assertion: U(ψ ∘ φ) = r_ψ^{-1}(U(φ)). A point of R = Proj_X(𝒞) lying in U(ψ) lies in U(ψ ∘ φ) exactly when its image under r_ψ : U(ψ) ⟶ Q lies in U(φ).

Together with AlgebraicGeometry.Space.RelativeProjHomPoints.comp_relativeMapSubfunctor_le this is the equality U(ψ ∘ φ) = r_ψ^{-1}(U(φ)) of the source. (The source writes the right-hand side of that equality as r_φ^{-1}(U(ψ)), which does not typecheck: r_φ is defined on an open of Q and takes values in P, while U(ψ) is an open of R. The reading above is the one the scheme-level analogue Tag 07ZH states, and it is the one the second assertion — which the source states identically in both tags — requires.)

theorem mem_comp_relativeMapSubfunctor_iff (Y : (BigFppfOver B S hS)ᵒᵖ) (y : R.obj Y)
    (hy : y ∈ hψ.relativeMapSubfunctor.obj Y) :
    y ∈ (hφ.comp hψ).relativeMapSubfunctor.obj Y ↔
      hψ.relativeMapSpaceHom.app Y ⟨y, hy⟩ ∈ hφ.relativeMapSubfunctor.obj Y

AlgebraicGeometry.Space.RelativeProjHomPoints.app_comp_relativeMapSpaceHom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctoriality.lean, line 1181. The attribute's comment: “the morphism r_{ψ ∘ φ} is r_φ after r_ψ”.

Tag 085G, the second assertion: r_{ψ ∘ φ} = r_φ ∘ r_ψ|_{U(ψ ∘ φ)}.

theorem app_comp_relativeMapSpaceHom (Y : (BigFppfOver B S hS)ᵒᵖ) (y : R.obj Y)
    (hy : y ∈ hψ.relativeMapSubfunctor.obj Y)
    (hc : y ∈ (hφ.comp hψ).relativeMapSubfunctor.obj Y)
    (hc2 : hψ.relativeMapSpaceHom.app Y ⟨y, hy⟩ ∈ hφ.relativeMapSubfunctor.obj Y) :
    (hφ.comp hψ).relativeMapSpaceHom.app Y ⟨y, hc⟩ =
      hφ.relativeMapSpaceHom.app Y ⟨hψ.relativeMapSpaceHom.app Y ⟨y, hy⟩, hc2⟩

AlgebraicGeometry.Space.RelativeProjSituation.homPoints_comp_relativeMap_twist, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/HomPointsComp.lean, line 133. The attribute's comment: “the tag's three assertions for the relative Projs of Situation 0849 and the data of Tag 085F attached to the algebra maps: U(ψ ∘ φ) = r_ψ^{-1}(U(φ)) as subfunctors of R (the source prints r_φ^{-1}(U(ψ)), which is type-incorrect, the names φ and ψ being interchanged), r_{ψ ∘ φ} = r_φ ∘ r_ψ|_{U(ψ ∘ φ)}, and θ_ψ ∘ r_ψ^*θ_φ = θ_{ψ ∘ φ} at every scheme point of the base, where Tag 085F's θ is given”.

[Stacks, Tag 085G]. Let S be a scheme, X an algebraic space over S, and 𝒜₁, 𝒜₂, 𝒜₃ quasi-coherent graded 𝒪_X-algebras (Situation 0849), with relative Projs P = Proj_X(𝒜₁), Q = Proj_X(𝒜₂) and R = Proj_X(𝒜₃). Let φ : 𝒜₁ ⟶ 𝒜₂ and ψ : 𝒜₂ ⟶ 𝒜₃ be graded 𝒪_X-algebra maps, and write U(-), r_- and θ_- for the data of Tag 085F attached to φ, ψ and ψ ∘ φ (φ.comp ψ) through AlgebraicGeometry.Space.RelativeProjSituation.homPoints. Then

  1. the map of graded algebras over the scheme points of the base attached to ψ ∘ φ is the composite of those attached to φ and ψ;
  2. U(ψ ∘ φ) = r_ψ^{-1}(U(φ)), as subfunctors of R (the image under the inclusion of U(ψ) of the inverse image of U(φ) along r_ψ; the source prints r_φ^{-1}(U(ψ)), which does not typecheck, the names φ and ψ being interchanged, see the module docstring);
  3. r_{ψ ∘ φ} = r_φ ∘ r_ψ|_{U(ψ ∘ φ)}, with r_ψ|_{U(ψ ∘ φ)} : U(ψ ∘ φ) ⟶ U(φ) the restriction AlgebraicGeometry.Space.RelativeProjHomPoints.compRestrict;
  4. θ_ψ ∘ r_ψ^*θ_φ = θ_{ψ ∘ φ}: over every scheme point (T, f) of X — where Tag 085F's θ is given — and in every degree n, the map on twists of the composite is the inverse image of θ_φ along the restriction of r_ψ, followed by the inverse image of θ_ψ along the inclusion of U(ψ ∘ φ) into U(ψ), up to the inverse-image isomorphisms identifying sources and targets.

There are no hypotheses beyond the data.

theorem homPoints_comp_relativeMap_twist :
    𝔥ψφ = (𝔥φ).comp (𝔥ψ) ∧
      (𝔥ψφ).relativeMapSubfunctor =
        ((𝔥φ).relativeMapSubfunctor.preimage (𝔥ψ).relativeMapSpaceHom).image
          (𝔥ψ).relativeMapSubfunctor.ι ∧
      (𝔥φ).compRestrict (𝔥ψ)
          (homPoints_comp h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k h₃c h₃n h₃q h₃k φ ψ) ≫
          (𝔥φ).relativeMapSpaceHom = (𝔥ψφ).relativeMapSpaceHom ∧
      ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X.1) (n : ℤ),
        (Scheme.Modules.pullbackCongr
              (relativeMapHomRestrict_comp_relativeMapHom ((𝔥φ).hom T f) ((𝔥ψ).hom T f))).inv.app
            (relativeTwist (𝔡₁ T f) n) ≫
          (Scheme.Modules.pullbackComp (relativeMapHomRestrict ((𝔥φ).hom T f) ((𝔥ψ).hom T f))
              (relativeMapHom ((𝔥φ).hom T f))).inv.app
            (relativeTwist (𝔡₁ T f) n) ≫
          (Scheme.Modules.pullback (relativeMapHomRestrict ((𝔥φ).hom T f) ((𝔥ψ).hom T f))).map
              ((𝔥φ).relativeTwistSpaceMap T f n) ≫
          (Scheme.Modules.pullbackComp (relativeMapHomRestrict ((𝔥φ).hom T f) ((𝔥ψ).hom T f))
              ((𝔥φ).hom T f).relativeMapDomain.ι).hom.app
            (relativeTwist (𝔡₂ T f) n) ≫
          (Scheme.Modules.pullbackCongr
              (relativeMapHomRestrict_comp_ι ((𝔥φ).hom T f) ((𝔥ψ).hom T f))).hom.app
            (relativeTwist (𝔡₂ T f) n) ≫
          (Scheme.Modules.pullbackComp
              ((relativeProj (𝔡₃ T f)).scheme.homOfLE
                (relativeMapDomain_comp_le ((𝔥φ).hom T f) ((𝔥ψ).hom T f)))
              (relativeMapHom ((𝔥ψ).hom T f))).inv.app
            (relativeTwist (𝔡₂ T f) n) ≫
          (Scheme.Modules.pullback ((relativeProj (𝔡₃ T f)).scheme.homOfLE
              (relativeMapDomain_comp_le ((𝔥φ).hom T f) ((𝔥ψ).hom T f)))).map
            ((𝔥ψ).relativeTwistSpaceMap T f n) ≫
          (Scheme.Modules.pullbackComp
              ((relativeProj (𝔡₃ T f)).scheme.homOfLE
                (relativeMapDomain_comp_le ((𝔥φ).hom T f) ((𝔥ψ).hom T f)))
              ((𝔥ψ).hom T f).relativeMapDomain.ι).hom.app
            (relativeTwist (𝔡₃ T f) n) ≫
          (Scheme.Modules.pullbackCongr
              (Scheme.homOfLE_ι (relativeProj (𝔡₃ T f)).scheme
                (relativeMapDomain_comp_le ((𝔥φ).hom T f) ((𝔥ψ).hom T f)))).hom.app
            (relativeTwist (𝔡₃ T f) n) =
          ((𝔥φ).comp (𝔥ψ)).relativeTwistSpaceMap T f n
Tag 085H, a lemma

Tag 085H in the Stacks Project.

Stacks.AlgebraicGeometry.ProjTwistCompare.NotIsoExample.not_isIso_relativeTwistMap, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/ProjTwistCompare/NotIsoExampleScheme.lean, line 256. The attribute's comment: “(3), second half: the maps θ are not isomorphisms in general, even if A → B is surjective: A = R[x,y]/(x²) with deg x = 1, deg y = 2, B = A/(x) on Spec R, θ₁ is not an iso”.

The comparison map θ₁ : r_ψ^*𝒪(1) ⟶ 𝒪(1) of Stacks 07ZG for ψ : A~ ⟶ B~ on Spec R is not an isomorphism, although ψ is surjective in every degree (epi_sheafHom_app).

theorem not_isIso_relativeTwistMap :
    ¬ IsIso (relativeTwistMap (sheafHom R) ((1 : ℕ) : ℤ))

AlgebraicGeometry.Space.isDefinedOn_of_eventually_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctorialityEventual.lean, line 111. The attribute's comment: “part (1): every point of Q lies in the domain of definition”.

If every restriction of ψ is an epimorphism in all sufficiently large degrees then every point of Q = Proj_X(ℬ) lies in the domain of definition of ψ.

theorem isDefinedOn_of_eventually_epi
    (hsurj : ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X),
      ∀ᶠ d : ℕ in atTop, Epi ((ψ T f).app (d : ℤ)))
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X) {T' : BigFppfOver B S hS}
    (r : T' ⟶ T) (u : yoneda.obj T' ⟶ Q) (hu : u ≫ πQ = yoneda.map r ≫ f) :
    IsDefinedOn dP dQ ψ T f r u hu

AlgebraicGeometry.Space.isClosedImmersion_pointRelativeMapHom_of_eventually_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctorialityEventual.lean, line 228. The attribute's comment: “part (2): a closed immersion over each scheme point of the base”.

If every restriction of ψ is an epimorphism in all sufficiently large degrees then over each scheme point (T, f) of X the morphism r_{ψ|_{T,f}} : Proj_T(ℬ|_T) ⟶ Proj_T(𝒜|_T) of Stacks 07ZG is a closed immersion of schemes.

theorem isClosedImmersion_pointRelativeMapHom_of_eventually_epi
    (hsurj : ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X),
      ∀ᶠ d : ℕ in atTop, Epi ((ψ T f).app (d : ℤ)))
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X) :
    _root_.AlgebraicGeometry.IsClosedImmersion (relativeMapHom (ψ T f))

AlgebraicGeometry.Space.epi_pointTwistMap_of_eventually_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctorialityEventual.lean, line 239. The attribute's comment: “part (3): the maps on twists are surjective, chart by chart”.

If every restriction of ψ is an epimorphism in all sufficiently large degrees then, over every affine open of every scheme point of the base, the comparison maps of Stacks 01MY on the n-th twist are epimorphisms.

theorem epi_pointTwistMap_of_eventually_epi
    (hsurj : ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X),
      ∀ᶠ d : ℕ in atTop, Epi ((ψ T f).app (d : ℤ)))
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X)
    {V : ((BigFppfOver.toScheme B S hS).obj T).Opens} (hV : IsAffineOpen V) (n : ℤ) :
    Epi ((Stacks.AlgebraicGeometry.ProjTwistCompare.projMapData ((dP.algebra T f).grading V)
      ((dQ.algebra T f).grading V) ((ψ T f).sectionHom V)).twistMap n)

AlgebraicGeometry.Space.RelativeProjHomPoints.relativeMapSubfunctor_eq_top_of_eventually_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctorialityEventual.lean, line 288. The attribute's comment: “part (1): U(ψ) = Q”.

If every restriction of ψ is an epimorphism in all sufficiently large degrees then the open subspace U(ψ) of Stacks 085F is all of Q = Proj_X(ℬ).

theorem relativeMapSubfunctor_eq_top_of_eventually_epi
    (hsurj : ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X),
      ∀ᶠ d : ℕ in atTop, Epi ((hψ.hom T f).app (d : ℤ))) :
    hψ.relativeMapSubfunctor = ⊤

AlgebraicGeometry.Space.RelativeProjSituation.relativeMapSubfunctor_homPoints_eq_top, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/FunctorialityClosedImmersion.lean, line 187. The attribute's comment: “(1): U(ψ) = Q”.

Stacks 085H (1) for the canonical relative Projs: U(ψ) = Q. If ψ_d : 𝒜₁,d ⟶ 𝒜₂,d is surjective for d ≫ 0, the open subspace U(ψ) of Stacks 085F is all of Q = Proj_X(𝒜₂). This is also Stacks 085J (1), whose hypotheses contain these.

theorem relativeMapSubfunctor_homPoints_eq_top
    (hsurj : ∀ᶠ d : ℕ in atTop, Presheaf.IsLocallySurjective (SmallEtale.topology B S hS X.1)
      ((PresheafOfModules.toPresheaf _).map (ψ.app (d : ℤ)).val)) :
    (homPoints h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ).relativeMapSubfunctor = ⊤

AlgebraicGeometry.Space.RelativeProjSituation.isClosedImmersion_relativeMapSpaceHom_homPoints, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/FunctorialityClosedImmersion.lean, line 201. The attribute's comment: “(2): r_ψ : Q ⟶ P is a closed immersion”.

Stacks 085H (2) for the canonical relative Projs: r_ψ is a closed immersion. If ψ_d : 𝒜₁,d ⟶ 𝒜₂,d is surjective for d ≫ 0, the morphism r_ψ : U(ψ) ⟶ Proj_X(𝒜₁) of Stacks 085F, whose source is all of Proj_X(𝒜₂) by relativeMapSubfunctor_homPoints_eq_top, is a closed immersion of algebraic spaces. This is also Stacks 085J (2), whose hypotheses contain these.

theorem isClosedImmersion_relativeMapSpaceHom_homPoints
    (hsurj : ∀ᶠ d : ℕ in atTop, Presheaf.IsLocallySurjective (SmallEtale.topology B S hS X.1)
      ((PresheafOfModules.toPresheaf _).map (ψ.app (d : ℤ)).val)) :
    IsClosedImmersion B S hS (homPoints h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ).relativeMapSpaceHom

AlgebraicGeometry.Space.RelativeProjSituation.epi_twistMap, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/FunctorialityTwistGluedSurjective.lean, line 85. The attribute's comment: “(3), first half: the maps θ : r_ψ^*O_P(n) → O_Q(n) are surjective (θ the glued map of 085F, twistMap), for ψ_d surjective for d ≫ 0”.

Stacks 085H (3), surjectivity: the maps θ : r_ψ^*𝒪_P(n) ⟶ 𝒪_Q(n) are surjective when ψ_d is surjective for d ≫ 0.

theorem epi_twistMap
    (hsurj : ∀ᶠ d : ℕ in atTop, Presheaf.IsLocallySurjective (SmallEtale.topology B S hS X.1)
      ((PresheafOfModules.toPresheaf _).map (ψ.app (d : ℤ)).val))
    (Px : Presentation B S hS X.1 X.2) (n : ℤ) :
    Epi (twistMap h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ Px n)
Tag 085I, a lemma

Tag 085I in the Stacks Project.

AlgebraicGeometry.Space.isDefinedOn_of_eventually_isIso, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctorialityEventual.lean, line 123. The attribute's comment: “part (1): every point of Q lies in the domain of definition”.

If every restriction of ψ is an isomorphism in all sufficiently large degrees then every point of Q = Proj_X(ℬ) lies in the domain of definition of ψ.

theorem isDefinedOn_of_eventually_isIso
    (hiso : ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X),
      ∀ᶠ d : ℕ in atTop, IsIso ((ψ T f).app (d : ℤ)))
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X) {T' : BigFppfOver B S hS}
    (r : T' ⟶ T) (u : yoneda.obj T' ⟶ Q) (hu : u ≫ πQ = yoneda.map r ≫ f) :
    IsDefinedOn dP dQ ψ T f r u hu

AlgebraicGeometry.Space.RelativeProjHomPoints.relativeMapSubfunctor_eq_top_of_eventually_isIso, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctorialityEventual.lean, line 298. The attribute's comment: “part (1): U(ψ) = Q”.

If every restriction of ψ is an isomorphism in all sufficiently large degrees then the open subspace U(ψ) of Stacks 085F is all of Q = Proj_X(ℬ).

theorem relativeMapSubfunctor_eq_top_of_eventually_isIso
    (hiso : ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X),
      ∀ᶠ d : ℕ in atTop, IsIso ((hψ.hom T f).app (d : ℤ))) :
    hψ.relativeMapSubfunctor = ⊤

AlgebraicGeometry.Space.RelativeProjHomPoints.isIso_relativeMapSpaceHom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctorialityEventual.lean, line 354. The attribute's comment: “part (2): the morphism r_ψ is an isomorphism”.

If every restriction of ψ is an isomorphism in all sufficiently large degrees then r_ψ : U(ψ) ⟶ P is an isomorphism of algebraic spaces.

theorem isIso_relativeMapSpaceHom
    (hiso : ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X),
      ∀ᶠ d : ℕ in atTop, IsIso ((hψ.hom T f).app (d : ℤ))) :
    IsIso hψ.relativeMapSpaceHom

AlgebraicGeometry.Space.RelativeProjHomPoints.isIso_relativeTwistSpaceMap_of_eventually_isIso, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctorialityEventual.lean, line 367. The attribute's comment: “part (3): the maps θ_n : r_ψ^*𝒪_P(n) ⟶ 𝒪_Q(n) on the twists of the two relative Projs are isomorphisms, over every scheme point of the base — which is the assertion for θ itself, θ being characterized by Tag 085F as having exactly those restrictions”.

If every restriction of ψ is an isomorphism in all sufficiently large degrees then the maps θ : r_ψ^*𝒪_P(n) ⟶ 𝒪_Q(n) of Stacks 085F are isomorphisms, over every scheme point (T, f) of the base.

theorem isIso_relativeTwistSpaceMap_of_eventually_isIso
    (hiso : ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X),
      ∀ᶠ d : ℕ in atTop, IsIso ((hψ.hom T f).app (d : ℤ)))
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X) (n : ℤ) :
    IsIso (hψ.relativeTwistSpaceMap T f n)
Tag 085J, a lemma

Tag 085J in the Stacks Project.

AlgebraicGeometry.Space.isDefinedOn_of_eventually_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctorialityEventual.lean, line 111. The attribute's comment: “part (1): every point of Q lies in the domain of definition”.

If every restriction of ψ is an epimorphism in all sufficiently large degrees then every point of Q = Proj_X(ℬ) lies in the domain of definition of ψ.

theorem isDefinedOn_of_eventually_epi
    (hsurj : ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X),
      ∀ᶠ d : ℕ in atTop, Epi ((ψ T f).app (d : ℤ)))
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X) {T' : BigFppfOver B S hS}
    (r : T' ⟶ T) (u : yoneda.obj T' ⟶ Q) (hu : u ≫ πQ = yoneda.map r ≫ f) :
    IsDefinedOn dP dQ ψ T f r u hu

AlgebraicGeometry.Space.isClosedImmersion_pointRelativeMapHom_of_eventually_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctorialityEventual.lean, line 228. The attribute's comment: “part (2): a closed immersion over each scheme point of the base”.

If every restriction of ψ is an epimorphism in all sufficiently large degrees then over each scheme point (T, f) of X the morphism r_{ψ|_{T,f}} : Proj_T(ℬ|_T) ⟶ Proj_T(𝒜|_T) of Stacks 07ZG is a closed immersion of schemes.

theorem isClosedImmersion_pointRelativeMapHom_of_eventually_epi
    (hsurj : ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X),
      ∀ᶠ d : ℕ in atTop, Epi ((ψ T f).app (d : ℤ)))
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X) :
    _root_.AlgebraicGeometry.IsClosedImmersion (relativeMapHom (ψ T f))

AlgebraicGeometry.Space.isIso_pointTwistMap_of_generatedInDegreeOne, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctorialityEventual.lean, line 264. The attribute's comment: “part (3): the maps on twists are isomorphisms, chart by chart”.

If every restriction of ψ is an epimorphism in all sufficiently large degrees and 𝒜 is generated in degree one over every affine open of every scheme point of the base, the comparison maps of Stacks 01MY on the twists over those affine opens are isomorphisms.

theorem isIso_pointTwistMap_of_generatedInDegreeOne
    (hsurj : ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X),
      ∀ᶠ d : ℕ in atTop, Epi ((ψ T f).app (d : ℤ)))
    (hgen : ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X)
      (U : ((BigFppfOver.toScheme B S hS).obj T).Opens), IsAffineOpen U →
        (dP.algebra T f).IsGeneratedInDegreeOneAt U)
    (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X)
    {V : ((BigFppfOver.toScheme B S hS).obj T).Opens} (hV : IsAffineOpen V) (n : ℤ) :
    IsIso ((Stacks.AlgebraicGeometry.ProjTwistCompare.projMapData ((dP.algebra T f).grading V)
      ((dQ.algebra T f).grading V) ((ψ T f).sectionHom V)).twistMap n)

AlgebraicGeometry.Space.RelativeProjHomPoints.relativeMapSubfunctor_eq_top_of_eventually_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjFunctorialityEventual.lean, line 288. The attribute's comment: “part (1): U(ψ) = Q”.

If every restriction of ψ is an epimorphism in all sufficiently large degrees then the open subspace U(ψ) of Stacks 085F is all of Q = Proj_X(ℬ).

theorem relativeMapSubfunctor_eq_top_of_eventually_epi
    (hsurj : ∀ (T : BigFppfOver B S hS) (f : yoneda.obj T ⟶ X),
      ∀ᶠ d : ℕ in atTop, Epi ((hψ.hom T f).app (d : ℤ))) :
    hψ.relativeMapSubfunctor = ⊤

AlgebraicGeometry.Space.RelativeProjSituation.relativeMapSubfunctor_homPoints_eq_top, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/FunctorialityClosedImmersion.lean, line 187. The attribute's comment: “(1): U(ψ) = Q”.

Stacks 085H (1) for the canonical relative Projs: U(ψ) = Q. If ψ_d : 𝒜₁,d ⟶ 𝒜₂,d is surjective for d ≫ 0, the open subspace U(ψ) of Stacks 085F is all of Q = Proj_X(𝒜₂). This is also Stacks 085J (1), whose hypotheses contain these.

theorem relativeMapSubfunctor_homPoints_eq_top
    (hsurj : ∀ᶠ d : ℕ in atTop, Presheaf.IsLocallySurjective (SmallEtale.topology B S hS X.1)
      ((PresheafOfModules.toPresheaf _).map (ψ.app (d : ℤ)).val)) :
    (homPoints h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ).relativeMapSubfunctor = ⊤

AlgebraicGeometry.Space.RelativeProjSituation.isClosedImmersion_relativeMapSpaceHom_homPoints, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/FunctorialityClosedImmersion.lean, line 201. The attribute's comment: “(2): r_ψ : Q ⟶ P is a closed immersion”.

Stacks 085H (2) for the canonical relative Projs: r_ψ is a closed immersion. If ψ_d : 𝒜₁,d ⟶ 𝒜₂,d is surjective for d ≫ 0, the morphism r_ψ : U(ψ) ⟶ Proj_X(𝒜₁) of Stacks 085F, whose source is all of Proj_X(𝒜₂) by relativeMapSubfunctor_homPoints_eq_top, is a closed immersion of algebraic spaces. This is also Stacks 085J (2), whose hypotheses contain these.

theorem isClosedImmersion_relativeMapSpaceHom_homPoints
    (hsurj : ∀ᶠ d : ℕ in atTop, Presheaf.IsLocallySurjective (SmallEtale.topology B S hS X.1)
      ((PresheafOfModules.toPresheaf _).map (ψ.app (d : ℤ)).val)) :
    IsClosedImmersion B S hS (homPoints h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ).relativeMapSpaceHom

AlgebraicGeometry.Space.RelativeProjSituation.isIso_twistMap, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjPoint/FunctorialityTwistGluedSurjective.lean, line 97. The attribute's comment: “(3): the maps θ : r_ψ^*O_P(n) → O_Q(n) are isomorphisms (θ the glued map of 085F, twistMap), for ψ_d surjective for d ≫ 0 and A generated by A_1 over A_0”.

Stacks 085J (3): the maps θ : r_ψ^*𝒪_P(n) ⟶ 𝒪_Q(n) are isomorphisms when ψ_d is surjective for d ≫ 0 and 𝒜₁ is generated by its degree-one part over its degree-zero part.

theorem isIso_twistMap
    (hsurj : ∀ᶠ d : ℕ in atTop, Presheaf.IsLocallySurjective (SmallEtale.topology B S hS X.1)
      ((PresheafOfModules.toPresheaf _).map (ψ.app (d : ℤ)).val))
    (hgen : (𝔰₁).IsGeneratedInDegreeOne) (Px : Presentation B S hS X.1 X.2) (n : ℤ) :
    IsIso (twistMap h₁c h₁n h₁q h₁k h₂c h₂n h₂q h₂k ψ Px n)
Sources

Section71.13 Invertible sheaves and morphisms into relative Proj#

Section 71.13 of the Stacks Project, Tag 0D2Y. 2 tags here are carried by 36 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.

Tag 0D2Y, the section

Tag 0D2Y in the Stacks Project.

AlgebraicGeometry.Space.GradedPowerMapPoints.locus, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleLocus.lean, line 216. The attribute's comment: “the open U(psi) of the situation, presented by the opens it cuts on the scheme points of X; on a scheme point it is the union, over the homogeneous sections of positive degree of f^*A over the affine opens, of the opens where the value of psi does not vanish, which is the description of Tag 01O8”.

The open subspace U(ψ) ⊆ X of [Stacks, Tag 0D2Y], presented by the open it cuts on each scheme point of X: on a T-point x, the open U(ψ) of [Stacks, Tag 01O8] of the restricted data, that is the union of the opens on which the values of ψ at the homogeneous sections of positive degree of f^*𝒜 over the affine opens of the scheme of T do not vanish.

This is the source of the morphism r_{ℒ,ψ} : U(ψ) ⟶ Proj_Y(𝒜) of [Stacks, Tag 0D2Z]. On each scheme point it is an abbreviation of Stacks.AlgebraicGeometry.RelativeProjInvertibleMorphism.GradedPowerMap.coveringOpen of the restricted data (it is reducible), and it is reasoned about through that open's characterising lemmas.

Two things the present tag asks for are absent, and both are recorded here rather than in the attribute. Tag 0D2Y describes the same open as the union of the loci where f^*𝒜_d ⟶ ℒ^{⊗ d} is surjective; identifying the two descriptions still needs the stalk of the pullback f^*𝒜_d computed as a tensor product, for which see the "Not done here" section of StacksFrontier/AlgebraicGeometry/RelativeProjInvertibleMorphism/Locus.lean. And the family of opens below is not assembled into an open-subspace subfunctor object.

public def locus (P : GradedPowerMapPoints B S hS X) (T : BigFppfOver B S hS)
    (x : yoneda.obj T ⟶ X) : ((BigFppfOver.toScheme B S hS).obj T).Opens

AlgebraicGeometry.Space.GradedPowerMapPoints.mem_locus_iff, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleLocus.lean, line 252. The attribute's comment: “membership in U(psi): a point of a scheme point of X lies in U(psi) exactly when the value of psi at some homogeneous section of f^*A of positive degree over some affine open does not vanish there”.

Membership in U(ψ). A point of the scheme of T lies in the open that U(ψ) cuts on a T-point x of X exactly when the value of ψ at some homogeneous section of positive degree of f^*𝒜 over some affine open does not vanish there.

public theorem mem_locus_iff (P : GradedPowerMapPoints B S hS X) (T : BigFppfOver B S hS)
    (x : yoneda.obj T ⟶ X) {z : (BigFppfOver.toScheme B S hS).obj T} :
    z ∈ P.locus T x ↔
      ∃ p : PositiveSection (P.algebra T x), z ∈ (P.pow T x).openOfPositiveSection p

AlgebraicGeometry.Space.GradedPowerMapPoints.locus_comap, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleLocus.lean, line 267. The attribute's comment: “formation of U(psi) commutes with pullback by a morphism of algebraic spaces X' -> X: the open cut by U(g^*psi) on a scheme point x' of X' is the open cut by U(psi) on x' composed with g”.

Formation of U(ψ) ⊆ X commutes with pullback by a morphism g : X' ⟶ X of algebraic spaces, the final assertion of [Stacks, Tag 0D2Y]. The open that U(g^*ψ) cuts on a scheme point x' of X' is the open that U(ψ) cuts on the scheme point x' ∘ g of X, which is the open that the pullback of U(ψ) along g cuts on x'.

public theorem locus_comap (P : GradedPowerMapPoints B S hS X) (g : X' ⟶ X)
    (T : BigFppfOver B S hS) (x : yoneda.obj T ⟶ X') :
    (P.comap g).locus T x = P.locus T (x ≫ g)
Tag 0D2Z, a lemma

Tag 0D2Z in the Stacks Project.

AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleBaseChange.lean, line 692. The attribute's comment: “variant: X a scheme; the whole lemma, in Situation 0849 with Proj_Y(A) the relative Proj of Stacks 084B and X a scheme over the algebraic space Y: the morphism r_{L,psi} : U(psi) -> Proj_Y(A) over Y; theta : r^*((+)_d O(d)) -> (+)_d L^d|_{U(psi)} a unital multiplicative map; clause (1) for every scheme V -> Y (in particular every etale one) and every scheme over V x_Y X; clauses (2)(a) and (2)(b) for every scheme W -> X and every degree d >= 1; the characterization of r_{L,psi} by (2)(b); and clause (3) for every square with X', Y' schemes and Y' -> Y arbitrary: U(psi') = (g')^{-1}(U(psi)), r_{L',psi'} is the base change of r_{L,psi} through Proj_{Y'}(A') = Y' x_Y Proj_Y(A), and theta' is the pullback of theta”.

[Stacks, Tag 0D2Z]. In Situation 0849 let Y be the algebraic space s.space, 𝒜 the quasi-coherent graded 𝒪_Y-algebra s.algebra and π : Proj_Y(𝒜) ⟶ Y its relative homogeneous spectrum of Stacks 084B (s.relativeProjFunctor, s.relativeProjπ). Let f : X ⟶ Y with X a scheme, ℒ invertible on X and ψ : f^*𝒜 ⟶ ⨁_d ℒ^{⊗ d} a homomorphism of graded algebras, and let U(ψ) ⊆ X be the open subspace of [Stacks, Tag 0D2Y]. Then ψ induces the morphism r_{ℒ,ψ} = s.relativeProjPoints.invertibleMorphism ψ : U(ψ) ⟶ Proj_Y(𝒜) and the map of graded algebras θ = (toGradedPowerMap ψ).theta : r^*(⨁_d 𝒪(d)) ⟶ ⨁_d ℒ^{⊗ d}|_{U(ψ)} (the twists of Proj_Y(𝒜) read at the scheme point f, where they are those of Proj_X(f^*𝒜), Stacks 084D (3)), such that:

  1. r_{ℒ,ψ} is a morphism over Y, and θ preserves the unit and the products;
  2. clause (1): for every scheme v : V ⟶ Y (in particular every V ⟶ Y étale), every scheme W over V ×_Y X, every open O of V, d ≥ 0 and section a of v^*𝒜_d over O, the pullback of θ to V ×_Y U(ψ) carries the inverse image of ψ_{Proj}(a) to the restriction of ψ(a) (clauseOne);
  3. clause (2)(a): a scheme W ⟶ X over which ψ is surjective in some degree k ≥ 1 factors through U(ψ);
  4. clause (2)(b): the composite W ⟶ U(ψ) ⟶ Proj_Y(𝒜) is the point of Proj_Y(𝒜) which the construction of the relative Proj attaches to the quadruple (k, W ⟶ Y, ℒ^{⊗ k}|_W, ψ|_W);
  5. the characterization: r_{ℒ,ψ} is the only morphism over Y with clause (2)(b);
  6. clause (3): for every commutative square g ∘ f' = f ∘ g' with X' and Y' schemes, with ψ' = clauseThreeTwisting ψ g f' g' hsq the pullback of ψ: U(ψ') = g'^{-1}(U(ψ)); r_{ℒ',ψ'} is the base change of r_{ℒ,ψ} through Proj_{Y'}(g^*𝒜) = Y' ×_Y Proj_Y(𝒜); and θ' is the pullback of θ along j : U(ψ') ⟶ U(ψ).
theorem tag0D2Z :
    s.relativeProjPoints.invertibleMorphism ψ ≫ s.relativeProjπ =
        (subspaceOfOpens s.site s.base s.containsBase X (toGradedPowerMap ψ).coveringOpen).ι ≫ f ∧
    SheafOfModules.sectionsMap (((toGradedPowerMap ψ).theta).app 0)
        (Stacks.Conormal.gradedPullback
            ((toGradedPowerMap ψ).globalMorphism (relativeProj (s.relativeProjPoints.algebra X f)))
            (Stacks.AlgebraicGeometry.GluedTwistAlgebra.twistDataOfGradedAlgebra
              (s.relativeProjPoints.algebra X f)).algebra).one =
      (laurentOn L (toGradedPowerMap ψ).coveringOpen).one ∧
    (∀ (n e : ℕ) (U : (toGradedPowerMap ψ).coveringOpen.toScheme.Opens)
        (x :
            ((Stacks.Conormal.gradedPullback
                ((toGradedPowerMap ψ).globalMorphism
                  (relativeProj (s.relativeProjPoints.algebra X f)))
                (Stacks.AlgebraicGeometry.GluedTwistAlgebra.twistDataOfGradedAlgebra
                  (s.relativeProjPoints.algebra X f)).algebra).piece
              (n : ℤ)).val.obj
            (op U))
        (y :
            ((Stacks.Conormal.gradedPullback
                ((toGradedPowerMap ψ).globalMorphism
                  (relativeProj (s.relativeProjPoints.algebra X f)))
                (Stacks.AlgebraicGeometry.GluedTwistAlgebra.twistDataOfGradedAlgebra
                  (s.relativeProjPoints.algebra X f)).algebra).piece
              (e : ℤ)).val.obj
            (op U)),
        (((toGradedPowerMap ψ).theta.app ((n : ℤ) + (e : ℤ))).val.app (op U)
            (((Stacks.Conormal.gradedPullback
                    ((toGradedPowerMap ψ).globalMorphism
                      (relativeProj (s.relativeProjPoints.algebra X f)))
                    (Stacks.AlgebraicGeometry.GluedTwistAlgebra.twistDataOfGradedAlgebra
                      (s.relativeProjPoints.algebra X f)).algebra).mul
                  n e).app
                (op U) x y)) =
          ((laurentOn L (toGradedPowerMap ψ).coveringOpen).mul n e).app (op U)
            (((toGradedPowerMap ψ).theta.app n).val.app (op U) x)
            (((toGradedPowerMap ψ).theta.app e).val.app (op U) y)) ∧
    (∀ {V W : BigFppfOver s.site s.base s.containsBase} (v : yoneda.obj V ⟶ s.space.1) (p : W ⟶ V)
        (q : W ⟶ X)
        (hpq : yoneda.map p ≫ v = yoneda.map q ≫ f)
        (O : ((BigFppfOver.toScheme s.site s.base s.containsBase).obj V).Opens) (n : ℕ)
        (a : Γ((s.relativeProjPoints.algebra V v).piece (n : ℤ), O)),
      ((toGradedPowerMap (clauseThreeTwisting ψ v p q hpq)).powK n).presheaf.map
          (eqToHom ((toGradedPowerMap (clauseThreeTwisting ψ v p q hpq)).toBase_preimage_eq O)).op
        ((((clauseThreeSourceIso ψ v p q hpq).inv ≫
            pullbackGradedAlgebraMap (clauseThreeRestrict ψ v p q hpq).toLRSHom.toShHom
              (toGradedPowerMap ψ).theta ≫
            (clauseThreeTargetIso ψ v p q hpq).hom).app n).val.app
          (op
              ((toGradedPowerMap (clauseThreeTwisting ψ v p q hpq)).globalMorphism
                (relativeProj (s.relativeProjPoints.algebra V v)) ⁻¹ᵁ
            ((relativeProj (s.relativeProjPoints.algebra V v)).toBase ⁻¹ᵁ O)))
          (pullbackUnit ((toGradedPowerMap (clauseThreeTwisting ψ v p q hpq)).globalMorphism
              (relativeProj (s.relativeProjPoints.algebra V v))).toLRSHom.toShHom
            (Otw (s.relativeProjPoints.algebra V v) n)
                (op ((relativeProj (s.relativeProjPoints.algebra V v)).toBase ⁻¹ᵁ O))
                (psiU (s.relativeProjPoints.algebra V v) n O a))) =
        (tensorPowerModule ((BigFppfOver.toScheme s.site s.base s.containsBase).obj W)
            (toGradedPowerMap (clauseThreeTwisting ψ v p q hpq)).L n).presheaf.map
            (homOfLE
                ((toGradedPowerMap
                  (clauseThreeTwisting ψ v p q hpq)).coveringOpen.ι.image_preimage_le
              ((BigFppfOver.toScheme s.site s.base s.containsBase).map p ⁻¹ᵁ O))).op
          ((powCompare (toGradedPowerMap (clauseThreeTwisting ψ v p q hpq)).L n).hom.app
            ((BigFppfOver.toScheme s.site s.base s.containsBase).map p ⁻¹ᵁ O)
            (valueSec (clauseThreeTwisting ψ v p q hpq) n O a))) ∧
    (∀ {W : BigFppfOver s.site s.base s.containsBase} (w : W ⟶ X) {k : ℕ} (_ : 0 < k)
        [Epi
              ((ψ.pullback ((BigFppfOver.toScheme s.site s.base s.containsBase).map w)).app
                (k : ℤ))],
            w ∈
            (subspaceOfOpens s.site s.base s.containsBase X (toGradedPowerMap ψ).coveringOpen).obj
              (op W)) ∧
    (∀ {W : BigFppfOver s.site s.base s.containsBase} (w : W ⟶ X) {k : ℕ} (hk : 0 < k)
        [Epi
            ((ψ.pullback ((BigFppfOver.toScheme s.site s.base s.containsBase).map w)).app (k : ℤ))],
        s.relativeProjPoints.locusFactor ψ w
            (s.relativeProjPoints.mem_subspaceOfOpens_of_epi ψ w hk) ≫
            s.relativeProjPoints.invertibleMorphism ψ =
                s.relativeProjPoints.quadruplePoint ψ w hk) ∧
    (∀ Φ :
        (subspaceOfOpens s.site s.base s.containsBase X
            (toGradedPowerMap ψ).coveringOpen).toFunctor ⟶
          s.relativeProjFunctor,
      Φ ≫ s.relativeProjπ =
      (subspaceOfOpens s.site s.base s.containsBase X (toGradedPowerMap ψ).coveringOpen).ι ≫ f →
      (∀ {W : BigFppfOver s.site s.base s.containsBase} (w : W ⟶ X) {k : ℕ} (hk : 0 < k)
        [Epi
            ((ψ.pullback ((BigFppfOver.toScheme s.site s.base s.containsBase).map w)).app (k : ℤ))],
        s.relativeProjPoints.locusFactor ψ w
          (s.relativeProjPoints.mem_subspaceOfOpens_of_epi ψ w hk) ≫
          Φ = s.relativeProjPoints.quadruplePoint ψ w hk) →
      Φ = s.relativeProjPoints.invertibleMorphism ψ) ∧
    (∀ {Y' X' : BigFppfOver s.site s.base s.containsBase} (g : yoneda.obj Y' ⟶ s.space.1)
        (f' : X' ⟶ Y') (g' : X' ⟶ X)
        (hsq : yoneda.map f' ≫ g = yoneda.map g' ≫ f),
      (toGradedPowerMap (clauseThreeTwisting ψ g f' g' hsq)).coveringOpen =
          (BigFppfOver.toScheme s.site s.base s.containsBase).map g' ⁻¹ᵁ
          (toGradedPowerMap ψ).coveringOpen ∧
      (∀ {T : BigFppfOver s.site s.base s.containsBase} (t : T ⟶ X')
        (ht : t ≫ g' ∈
          (subspaceOfOpens s.site s.base s.containsBase X (toGradedPowerMap ψ).coveringOpen).obj
            (op T)),
        (s.relativeProjPoints.pointEquivProjOver Y' g (t ≫ f')
            ⟨s.relativeProjPoints.locusFactor ψ (t ≫ g') ht ≫
              s.relativeProjPoints.invertibleMorphism ψ,
              locusFactor_invertibleMorphism_comp_π ψ g f' g' hsq t ht⟩).1 =
          liftOfPreimageEqTop _ _ (preimage_clauseThree_coveringOpen_eq_top ψ g f' g' hsq t ht) ≫
            (toGradedPowerMap (clauseThreeTwisting ψ g f' g' hsq)).globalMorphism
              (relativeProj (s.relativeProjPoints.algebra Y' g))) ∧
      (toGradedPowerMap (clauseThreeTwisting ψ g f' g' hsq)).theta =
        (clauseThreeSourceIso ψ g f' g' hsq).inv ≫
          pullbackGradedAlgebraMap (clauseThreeRestrict ψ g f' g' hsq).toLRSHom.toShHom
            (toGradedPowerMap ψ).theta ≫
          (clauseThreeTargetIso ψ g f' g' hsq).hom)

AlgebraicGeometry.Space.RelativeProjPoints.invertibleMorphism, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleMorphismPoints.lean, line 187. The attribute's comment: “variant: the morphism r_{L,psi} : U(psi) -> Proj_Y(A) for a presentation of Proj_Y(A) by its base changes to the scheme points of Y; the tag is AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z”.

r_{ℒ,ψ} : U(ψ) ⟶ Proj_Y(𝒜), the morphism of [Stacks, Tag 0D2Z], as the transformation of functors the source's proof builds: on a test scheme ρ : T ⟶ X of U(ψ) it is invertiblePoint, and its naturality is the naturality of the identification X ×_Y Proj_Y(𝒜) = Proj_X(f^*𝒜).

def invertibleMorphism :
    (subspaceOfOpens B S hS X (toGradedPowerMap ψ).coveringOpen).toFunctor ⟶ Proj

AlgebraicGeometry.Space.RelativeProjPoints.invertibleMorphism_comp_π, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleMorphismPoints.lean, line 199. The attribute's comment: “variant: r_{L,psi} lies over Y, for a presentation of Proj_Y(A) by its base changes to the scheme points of Y; the tag is AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z”.

r_{ℒ,ψ} is a morphism over Y, as [Stacks, Tag 0D2Z] asserts: π ∘ r_{ℒ,ψ} is the restriction of f to U(ψ).

theorem invertibleMorphism_comp_π :
    d.invertibleMorphism ψ ≫ π
      = (subspaceOfOpens B S hS X (toGradedPowerMap ψ).coveringOpen).ι ≫ f

AlgebraicGeometry.Space.RelativeProjPoints.mem_subspaceOfOpens_of_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleMorphismPoints.lean, line 240. The attribute's comment: “variant: clause (2)(a), for a presentation of Proj_Y(A) by its base changes to the scheme points of Y; the tag is AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z”.

Clause (2)(a) of [Stacks, Tag 0D2Z]. For k ≥ 1 and a scheme w : W ⟶ X such that ψ|_W : (f ∘ w)^*𝒜_k ⟶ (w^*ℒ)^{⊗ k} is surjective, w factors through U(ψ).

theorem mem_subspaceOfOpens_of_epi {W : BigFppfOver B S hS} (w : W ⟶ X) {k : ℕ} (hk : 0 < k)
    [Epi ((ψ.pullback ((BigFppfOver.toScheme B S hS).map w)).app (k : ℤ))] :
    w ∈ (subspaceOfOpens B S hS X (toGradedPowerMap ψ).coveringOpen).obj (op W)

AlgebraicGeometry.Space.RelativeProjPoints.locusFactor_invertibleMorphism_of_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleMorphismPoints.lean, line 276. The attribute's comment: “variant: clause (2)(b), for a presentation of Proj_Y(A) by its base changes to the scheme points of Y; the tag is AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z”.

Clause (2)(b) of [Stacks, Tag 0D2Z]. For k ≥ 1 and a scheme w : W ⟶ X such that ψ|_W is surjective in degree k, the composite of the factorisation W ⟶ U(ψ) with r_{ℒ,ψ} is the morphism W ⟶ Proj_Y(𝒜) which the construction of the relative Proj attaches to the quadruple (k, W ⟶ Y, ℒ^{⊗ k}|_W, ψ|_W).

theorem locusFactor_invertibleMorphism_of_epi {W : BigFppfOver B S hS} (w : W ⟶ X) {k : ℕ}
    (hk : 0 < k) [Epi ((ψ.pullback ((BigFppfOver.toScheme B S hS).map w)).app (k : ℤ))] :
    d.locusFactor ψ w (d.mem_subspaceOfOpens_of_epi ψ w hk) ≫ d.invertibleMorphism ψ
      = d.quadruplePoint ψ w hk

AlgebraicGeometry.Space.RelativeProjPoints.eq_invertibleMorphism, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleMorphismPoints.lean, line 292. The attribute's comment: “variant: the characterization of r_{L,psi} by clause (2)(b), for a presentation of Proj_Y(A) by its base changes to the scheme points of Y; the tag is AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z”.

r_{ℒ,ψ} is characterized by clause (2): a morphism U(ψ) ⟶ Proj_Y(𝒜) over Y which, on every test scheme W ⟶ X over which ψ is surjective in some positive degree, is the morphism attached to the quadruple of clause (2)(b), is r_{ℒ,ψ}.

theorem eq_invertibleMorphism
    (Φ : (subspaceOfOpens B S hS X (toGradedPowerMap ψ).coveringOpen).toFunctor ⟶ Proj)
    (hΦπ : Φ ≫ π = (subspaceOfOpens B S hS X (toGradedPowerMap ψ).coveringOpen).ι ≫ f)
    (hΦ : ∀ {W : BigFppfOver B S hS} (w : W ⟶ X) {k : ℕ} (hk : 0 < k)
      [Epi ((ψ.pullback ((BigFppfOver.toScheme B S hS).map w)).app (k : ℤ))],
      d.locusFactor ψ w (d.mem_subspaceOfOpens_of_epi ψ w hk) ≫ Φ = d.quadruplePoint ψ w hk) :
    Φ = d.invertibleMorphism ψ

AlgebraicGeometry.Space.RelativeProjPoints.invertibleMorphism_baseChange, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleMorphismPoints.lean, line 357. The attribute's comment: “variant: clause (3) for the morphism, for the squares in which Y' -> Y is the scheme point f : X -> Y; the tag is AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z”.

Clause (3) of [Stacks, Tag 0D2Z], for the morphism, when Y' ⟶ Y is the point f. Consider the square with Y' = X, g = f : Y' ⟶ Y, a scheme g' : X' ⟶ X and f' = g', so that 𝒜' = f^*𝒜, ℒ' = g'^*ℒ and ψ' = g'^*ψ. Then U(ψ') = g'^{-1}(U(ψ)) (…RelativeProjInvertibleMorphism.coveringOpen_pullback), and r_{ℒ',ψ'} of [Stacks, Tag 01O9] agrees with the base change of r_{ℒ,ψ} through Proj_X(f^*𝒜) = X ×_Y Proj_Y(𝒜): on every test scheme t : T ⟶ X' of U(ψ'), the point (f' ∘ t, r_{ℒ,ψ}(g' ∘ t)) of X ×_Y Proj_Y(𝒜) is r_{ℒ',ψ'} ∘ t.

theorem invertibleMorphism_baseChange {X' T : BigFppfOver B S hS} (g' : X' ⟶ X) (t : T ⟶ X')
    (ht : t ≫ g' ∈ (subspaceOfOpens B S hS X (toGradedPowerMap ψ).coveringOpen).obj (op T)) :
    (d.pointEquivProjOver X f (t ≫ g')
        ⟨d.locusFactor ψ (t ≫ g') ht ≫ d.invertibleMorphism ψ, by
          rw [Category.assoc, invertibleMorphism_comp_π, ← Category.assoc, locusFactor_ι]⟩).1
      = liftOfPreimageEqTop _ _ (d.preimage_coveringOpen_pullback_eq_top ψ g' t ht)
        ≫ (toGradedPowerMap (ψ.pullback ((BigFppfOver.toScheme B S hS).map g'))).globalMorphism
          (relativeProj (d.algebra X f))

AlgebraicGeometry.Space.RelativeProjPoints.invertibleTheta_clauseOne, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleMorphismPoints.lean, line 382. The attribute's comment: “variant: theta and clause (1) after base change to the scheme point f : X -> Y, for the opens of X; the tag is AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z”.

θ and clause (1) of [Stacks, Tag 0D2Z], after base change to the scheme point f : X ⟶ Y. The twists of Proj_Y(𝒜) are given at the scheme points of Y ([Stacks, Tag 084D]); at f they are the twists of Proj_X(f^*𝒜), so r^*(⨁ 𝒪(d)) is the inverse image along U(ψ) ⟶ Proj_X(f^*𝒜) of those twists, and θ is the map of [Stacks, Tag 01O9]. It preserves the unit and is multiplicative, and for every open V of X, d ≥ 0 and a ∈ (f^*𝒜)_d(V) it carries the inverse image of ψ_P(a) to the restriction of ψ(a) to U(ψ) ∩ V: the square of clause (1).

theorem invertibleTheta_clauseOne :
    SheafOfModules.sectionsMap (((toGradedPowerMap ψ).theta).app 0)
        (Stacks.Conormal.gradedPullback
          ((toGradedPowerMap ψ).globalMorphism (relativeProj (d.algebra X f)))
          (twistDataOfGradedAlgebra (d.algebra X f)).algebra).one
      = (Stacks.AlgebraicGeometry.ProjChartGradedTriple.laurentOn L
          (toGradedPowerMap ψ).coveringOpen).one
    ∧ (∀ (n e : ℕ) (U : (toGradedPowerMap ψ).coveringOpen.toScheme.Opens)
        (x : ((Stacks.Conormal.gradedPullback
          ((toGradedPowerMap ψ).globalMorphism (relativeProj (d.algebra X f)))
          (twistDataOfGradedAlgebra (d.algebra X f)).algebra).piece (n : ℤ)).val.obj (op U))
        (y : ((Stacks.Conormal.gradedPullback
          ((toGradedPowerMap ψ).globalMorphism (relativeProj (d.algebra X f)))
          (twistDataOfGradedAlgebra (d.algebra X f)).algebra).piece (e : ℤ)).val.obj (op U)),
        (((toGradedPowerMap ψ).theta.app ((n : ℤ) + (e : ℤ))).val.app (op U)
            (((Stacks.Conormal.gradedPullback
              ((toGradedPowerMap ψ).globalMorphism (relativeProj (d.algebra X f)))
              (twistDataOfGradedAlgebra (d.algebra X f)).algebra).mul n e).app (op U) x y))
          = ((Stacks.AlgebraicGeometry.ProjChartGradedTriple.laurentOn L
              (toGradedPowerMap ψ).coveringOpen).mul n e).app (op U)
              (((toGradedPowerMap ψ).theta.app n).val.app (op U) x)
              (((toGradedPowerMap ψ).theta.app e).val.app (op U) y))
    ∧ (∀ (V : ((BigFppfOver.toScheme B S hS).obj X).Opens) (n : ℕ)
        (a : Γ((d.algebra X f).piece (n : ℤ), V)),
        ((Stacks.AmpleProjectiveImmersion.tensorPowerModule _ L (n : ℤ)).restrict
            (toGradedPowerMap ψ).coveringOpen.ι).presheaf.map
            (eqToHom ((toGradedPowerMap ψ).toBase_preimage_eq V)).op
            (((toGradedPowerMap ψ).theta.app n).val.app
              (op ((toGradedPowerMap ψ).globalMorphism (relativeProj (d.algebra X f)) ⁻¹ᵁ
                ((relativeProj (d.algebra X f)).toBase ⁻¹ᵁ V)))
              (Stacks.RingedSpace.pullbackUnit
                ((toGradedPowerMap ψ).globalMorphism
                  (relativeProj (d.algebra X f))).toLRSHom.toShHom
                ((twistDataOfGradedAlgebra (d.algebra X f)).algebra.piece (n : ℤ))
                (op ((relativeProj (d.algebra X f)).toBase ⁻¹ᵁ V))
                (((twistDataOfGradedAlgebra (d.algebra X f)).ψ n).app V a)))
          = (Stacks.AmpleProjectiveImmersion.tensorPowerModule _ L (n : ℤ)).presheaf.map
              (homOfLE ((toGradedPowerMap ψ).coveringOpen.ι.image_preimage_le
                (𝟙 ((BigFppfOver.toScheme B S hS).obj X) ⁻¹ᵁ V))).op
              ((Stacks.AlgebraicGeometry.CoherentMulSections.powCompare L n).hom.app
                (𝟙 ((BigFppfOver.toScheme B S hS).obj X) ⁻¹ᵁ V)
                ((toGradedPowerMap ψ).value n V a)))

AlgebraicGeometry.Space.RelativeProjSituation.quadrupleSpaceEquiv_invertibleMorphism_val, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleMorphismQuadruple.lean, line 291. The attribute's comment: “variant: clause (2)(b) read on the functor of quadruples of Tag 084A at every quasi-compact W' -> W; the tag is AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z”.

Clause (2)(b) of Stacks 0D2Z on the constructed relative Proj, for an arbitrary scheme W ⟶ X.

Let F = Proj_Y(𝒜) be the functor of quadruples of Stacks 084A of Situation 0849, constructed as AlgebraicGeometry.Space.RelativeProjSituation.relativeProjFunctor, and let r_{ℒ,ψ} : U(ψ) ⟶ F be the morphism of Stacks 0D2Z for a homomorphism of graded algebras ψ : f^*𝒜 ⟶ ⨁_{d ≥ 0} ℒ^{⊗ d} on a scheme f : X ⟶ Y. For k ≥ 1 and a scheme w : W ⟶ X over which ψ|_W is surjective in degree k, the composite W ⟶ U(ψ) ⟶ F is the morphism given by the construction of F: the point of F(W) it defines records, at every quasi-compact test object v : W' ⟶ W, the point of F(W') over f ∘ w ∘ v given by the class of the pullback along v of the quadruple (k, w, (w^*ℒ)^{⊗ k}, ψ^{(k)}|_W), transported from the algebra (w ∘ v)^*(f^*𝒜) to the algebra (f ∘ w ∘ v)^*𝒜 along the comparison of the restriction datum of the situation.

theorem quadrupleSpaceEquiv_invertibleMorphism_val
    {W : BigFppfOver s.site s.base s.containsBase} (w : W ⟶ X) {k : ℕ} (hk : 0 < k)
    [Epi ((ψ.pullback ((BigFppfOver.toScheme s.site s.base s.containsBase).map w)).app (k : ℤ))]
    (W' : BigFppfOver s.site s.base s.containsBase)
    (hW' : CompactSpace ((BigFppfOver.toScheme s.site s.base s.containsBase).obj W'))
    (v : W' ⟶ W) :
    (s.quadrupleRestriction.quadrupleSpaceEquiv s.shrink.contains_relativeProj_pointAlgebra
        s.space.property.isSheaf W
        (yonedaEquiv (s.relativeProjPoints.locusFactor ψ w
          (s.relativeProjPoints.mem_subspaceOfOpens_of_epi ψ w hk) ≫
            s.relativeProjPoints.invertibleMorphism ψ))).val W' hW' v =
      ⟨yoneda.map (v ≫ w) ≫ f,
        s.quadrupleRestriction.fibreOfF f (v ≫ w) (yoneda.map (v ≫ w) ≫ f) rfl
          (F.pullback ((BigFppfOver.toScheme s.site s.base s.containsBase).map v)
            (clauseTwoClass ψ ((BigFppfOver.toScheme s.site s.base s.containsBase).map w) hk))
          ((pullback_clauseTwoClass_fst ψ _ _ hk).trans
            ((congrArg (_ ≫ ·) (Category.comp_id _)).trans (Functor.map_comp _ _ _).symm))⟩

AlgebraicGeometry.Space.InvertibleQuotientLocus.morphism, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleMorphismSpaces.lean, line 220. The attribute's comment: “variant: the morphism r_{L,psi} built from a family of degree-one restrictions of psi to the test schemes of U(psi); the tag is AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z”.

r_{ℒ,ψ} : U(ψ) ⟶ Proj_Y(𝒜), the morphism of [Stacks, Tag 0D2Z].

Its value on a test scheme W ⟶ X of U(ψ) is the morphism W ⟶ Proj_Y(𝒜) that the construction of the relative Proj attaches to ψ|_W, and its naturality is the compatibility of the restrictions of ψ with base change: this is the transformation of functors the source's proof produces.

public def morphism : L.locus.toFunctor ⟶ Proj

AlgebraicGeometry.Space.InvertibleQuotientLocus.morphism_comp_toBase, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleMorphismSpaces.lean, line 233. The attribute's comment: “variant: the morphism of morphism lies over Y; the tag is AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z”.

r_{ℒ,ψ} is a morphism over Y, as [Stacks, Tag 0D2Z] asserts: composing it with the structure morphism π : Proj_Y(𝒜) ⟶ Y gives the restriction of f : X ⟶ Y to U(ψ).

public theorem morphism_comp_toBase : L.morphism hgen rep ≫ π = L.locus.ι ≫ f

AlgebraicGeometry.Space.InvertibleQuotientLocus.factor_comp_morphism, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleMorphismSpaces.lean, line 265. The attribute's comment: “variant: clause (2)(b) for the morphism of morphism, at the test schemes of U(psi); the tag is AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z”.

Clause (2)(b) of [Stacks, Tag 0D2Z]. For a scheme W ⟶ X lying in U(ψ), the composite of the factorisation W ⟶ U(ψ) with r_{ℒ,ψ} is the morphism W ⟶ Proj_Y(𝒜) that the construction of the relative Proj attaches to ψ|_W — in this library, the morphism the representing bijection of [Stacks, Tag 085D] attaches to it.

public theorem factor_comp_morphism {W : BigFppfOver B S hS} (w : W ⟶ X)
    (hw : w ∈ L.locus.obj (op W)) :
    L.factor w hw ≫ L.morphism hgen rep = d.pointOfPair TA i hgen rep X f w (L.pair hw)

AlgebraicGeometry.Space.InvertibleQuotientLocus.eq_morphism, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleMorphismSpaces.lean, line 287. The attribute's comment: “variant: the uniqueness of the morphism of morphism given clause (2)(b); the tag is AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z”.

r_{ℒ,ψ} is the only morphism with clause (2)(b). Together with factor_comp_morphism this is the "characterized by" of [Stacks, Tag 0D2Z] for clause (2)(b): every test scheme of U(ψ) carries a restriction of ψ, so clause (2)(b) prescribes the morphism on every point of U(ψ).

public theorem eq_morphism (Φ : L.locus.toFunctor ⟶ Proj)
    (hΦ : ∀ {W : BigFppfOver B S hS} (w : W ⟶ X) (hw : w ∈ L.locus.obj (op W)),
      L.factor w hw ≫ Φ = d.pointOfPair TA i hgen rep X f w (L.pair hw)) :
    Φ = L.morphism hgen rep

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.isOpenSubspace_locus, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpace.lean, line 311. The attribute's comment: “the source U(psi) of r_{L,psi}, for an algebraic space X, is an open subspace of X”.

U(ψ) is an open subspace of the algebraic space X. Its points are those near which some f^*𝒜_d ⟶ ℒ^{⊗ d}, d ≥ 1, is surjective (…mem_locusOpen_iff_exists_epi), and its preimage along a scheme point x is U(x^*ψ) (…preimage_locus).

theorem isOpenSubspace_locus (hX : IsAlgebraicSpace s.site s.base s.containsBase X) :
    IsOpenSubspace s.site s.base s.containsBase R.locus

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.invertibleMorphism, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpace.lean, line 503. The attribute's comment: “the canonical morphism r_{L,psi} : U(psi) -> Proj_Y(A) for a morphism of algebraic spaces f : X -> Y, an invertible O_X-module L and a homomorphism of graded algebras psi : f^*A -> (+)_d L^d, given on X by their restrictions to the scheme points of X; U(psi) is the open subspace of the algebraic space X of Tag 0D2Y and Proj_Y(A) the relative Proj of Tag 084A/084B”.

r_{ℒ,ψ} : U(ψ) ⟶ Proj_Y(𝒜), the morphism of [Stacks, Tag 0D2Z], for a morphism of algebraic spaces f : X ⟶ Y, as the transformation of functors on the big fppf site that the source's proof builds: its value on a scheme point x : T ⟶ U(ψ) is the morphism of [Stacks, Tag 01O9] for the restriction x^*ψ (point), read in Proj_Y(𝒜) through T ×_Y Proj_Y(𝒜) = Proj_T((f ∘ x)^*𝒜); its naturality is clause (3) of the scheme case.

def invertibleMorphism : R.locus.toFunctor ⟶ s.relativeProjFunctor

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.invertibleMorphism_comp_π, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpace.lean, line 515. The attribute's comment: “r_{L,psi} is a morphism of algebraic spaces over Y, for a morphism of algebraic spaces f : X -> Y”.

r_{ℒ,ψ} is a morphism over Y: π ∘ r_{ℒ,ψ} is the restriction of f to U(ψ).

theorem invertibleMorphism_comp_π :
    R.invertibleMorphism ≫ s.relativeProjπ = R.locus.ι ≫ f

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.mem_locus_of_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpace.lean, line 547. The attribute's comment: “clause (2)(a), for a morphism of algebraic spaces f : X -> Y: a scheme W -> X over which psi is surjective in some degree d >= 1 factors through the open subspace U(psi) of the algebraic space X”.

Clause (2)(a) of [Stacks, Tag 0D2Z]. For k ≥ 1 and a scheme w : W ⟶ X such that ψ|_W : (f ∘ w)^*𝒜_k ⟶ (w^*ℒ)^{⊗ k} is surjective, w factors through U(ψ).

theorem mem_locus_of_epi {W : BigFppfOver s.site s.base s.containsBase} (w : yoneda.obj W ⟶ X)
    {k : ℕ} (hk : 0 < k) [hw : Epi ((R.twisting W w).app (k : ℤ))] :
    yonedaEquiv w ∈ R.locus.obj (op W)

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.factor_invertibleMorphism_of_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpace.lean, line 573. The attribute's comment: “clause (2)(b), for a morphism of algebraic spaces f : X -> Y: for a scheme W -> X over which psi is surjective in degree k >= 1, W -> U(psi) -> Proj_Y(A) is the morphism the construction of the relative Proj attaches to the quadruple (k, W -> Y, L^k|_W, psi|_W)”.

Clause (2)(b) of [Stacks, Tag 0D2Z]. For k ≥ 1 and a scheme w : W ⟶ X such that ψ|_W is surjective in degree k, the composite of the factorisation W ⟶ U(ψ) with r_{ℒ,ψ} is the morphism W ⟶ Proj_Y(𝒜) which the construction of the relative Proj attaches to the quadruple (k, W ⟶ Y, ℒ^{⊗ k}|_W, ψ|_W).

theorem factor_invertibleMorphism_of_epi {W : BigFppfOver s.site s.base s.containsBase}
    (w : yoneda.obj W ⟶ X) {k : ℕ} (hk : 0 < k) [hw : Epi ((R.twisting W w).app (k : ℤ))] :
    R.factor w (R.mem_locus_of_epi w hk) ≫ R.invertibleMorphism = R.quadruplePoint w hk

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.eq_invertibleMorphism, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpace.lean, line 610. The attribute's comment: “r_{L,psi} is characterized by property (2), for a morphism of algebraic spaces f : X -> Y: it is the only morphism U(psi) -> Proj_Y(A) over Y with clause (2)(b)”.

r_{ℒ,ψ} is characterized by clause (2): a morphism U(ψ) ⟶ Proj_Y(𝒜) over Y which, on every scheme W ⟶ X over which ψ is surjective in some positive degree, is the morphism attached to the quadruple of clause (2)(b), is r_{ℒ,ψ}.

theorem eq_invertibleMorphism (Φ : R.locus.toFunctor ⟶ s.relativeProjFunctor)
    (hΦπ : Φ ≫ s.relativeProjπ = R.locus.ι ≫ f)
    (hΦ : ∀ {W : BigFppfOver s.site s.base s.containsBase} (w : yoneda.obj W ⟶ X) {k : ℕ}
      (hk : 0 < k) [Epi ((R.twisting W w).app (k : ℤ))],
      R.factor w (R.mem_locus_of_epi w hk) ≫ Φ = R.quadruplePoint w hk) :
    Φ = R.invertibleMorphism

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.invertibleMorphism_baseChange_square, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpace.lean, line 752. The attribute's comment: “clause (3), the open and the morphism, for a morphism of algebraic spaces f : X -> Y and an ARBITRARY commutative square g o f' = f o g' with X', Y' schemes: with psi' the pullback of psi, U(psi') = (g')^{-1}(U(psi)) as open subspaces, and r_{psi',L'} : U(psi') -> Proj_{Y'}(g^A) of Tag 01O9 is the base change of r_{L,psi} through the identification Proj_{Y'}(g^A) = Y' x_Y Proj_Y(A) of Tag 084B, tested on every scheme T -> U(psi')”.

Clause (3) of [Stacks, Tag 0D2Z], for a morphism of algebraic spaces f : X ⟶ Y. Consider a commutative square g ∘ f' = f ∘ g' with g' : X' ⟶ X, f' : X' ⟶ Y', g : Y' ⟶ Y and X', Y' schemes, 𝒜' = g^*𝒜, ℒ' = (g')^*ℒ, and let ψ' be the pullback of ψ (squarePsi). Then

  • U(ψ') = (g')^{-1}(U(ψ)): the preimage of the open subspace U(ψ) ⊆ X along g' is the open subscheme U(ψ') of X' of [Stacks, Tag 01O9]; and
  • r_{ψ',ℒ'} : U(ψ') ⟶ Proj_{Y'}(𝒜') of [Stacks, Tag 01O9] agrees with the base change of r_{ψ,ℒ} through the identification Proj_{Y'}(𝒜') = Y' ×_Y Proj_Y(𝒜) of Stacks 084B: for every test scheme t : T ⟶ X' of U(ψ'), the T-point of Y' ×_Y Proj_Y(𝒜) with components f' ∘ t and r_{ψ,ℒ} ∘ g' ∘ t is, in Proj_{Y'}(𝒜'), the composite T ⟶ U(ψ') ⟶ Proj_{Y'}(𝒜').
theorem invertibleMorphism_baseChange_square {X' Y' : BigFppfOver s.site s.base s.containsBase}
    (g' : yoneda.obj X' ⟶ X) (f' : X' ⟶ Y') (g : yoneda.obj Y' ⟶ s.space.1)
    (hsq : yoneda.map f' ≫ g = g' ≫ f) :
    R.locus.preimage g' = subspaceOfOpens s.site s.base s.containsBase X'
        (toGradedPowerMap (R.squarePsi g' f' g hsq)).coveringOpen ∧
    ∀ {T : BigFppfOver s.site s.base s.containsBase} (t : T ⟶ X')
      (ht : yonedaEquiv (yoneda.map t ≫ g') ∈ R.locus.obj (op T)),
      (s.relativeProjPoints.pointEquivProjOver Y' g (t ≫ f')
          ⟨R.factor (yoneda.map t ≫ g') ht ≫ R.invertibleMorphism,
            R.factor_invertibleMorphism_comp_π g' f' g hsq t ht⟩).1 =
        liftOfPreimageEqTop _ ((BigFppfOver.toScheme s.site s.base s.containsBase).map t)
            (R.preimage_coveringOpen_squarePsi_eq_top g' f' g hsq t ht) ≫
          (toGradedPowerMap (R.squarePsi g' f' g hsq)).globalMorphism
            (relativeProj (s.relativeProjPoints.algebra Y' g))

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.isOpenSubspace_locus_ofUnitalHom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpaceModule.lean, line 543. The attribute's comment: “the source U(psi) of r_{L,psi}, for an algebraic space X with an invertible O_X-module L on its small etale site and a homomorphism of graded algebras psi : f^*A -> (+)_n L^n on X: an open subspace of X”.

U(ψ) is an open subspace of the algebraic space X, for a pair (ℒ, ψ) on X.

theorem isOpenSubspace_locus_ofUnitalHom :
    IsOpenSubspace s.site s.base s.containsBase (ofUnitalHom s f L ψ).locus

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.invertibleMorphism_comp_π_ofUnitalHom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpaceModule.lean, line 552. The attribute's comment: “the canonical morphism r_{L,psi} : U(psi) -> Proj_Y(A) over Y, for an algebraic space X with an invertible O_X-module L on its small etale site and a homomorphism of graded algebras psi : f^*A -> (+)_n L^n on X”.

r_{ℒ,ψ} : U(ψ) ⟶ Proj_Y(𝒜) is a morphism over Y, for a pair (ℒ, ψ) on the algebraic space X.

theorem invertibleMorphism_comp_π_ofUnitalHom :
    (ofUnitalHom s f L ψ).invertibleMorphism ≫ s.relativeProjπ =
      (ofUnitalHom s f L ψ).locus.ι ≫ f.hom

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.mem_locus_ofUnitalHom_of_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpaceModule.lean, line 563. The attribute's comment: “clause (2)(a), for a pair (L, psi) on an algebraic space X: a scheme W -> X over which psi|_W is surjective in some degree k >= 1 factors through U(psi)”.

Clause (2)(a) of [Stacks, Tag 0D2Z] for a pair (ℒ, ψ) on the algebraic space X: a scheme w : W ⟶ X over which ψ|_W : (f ∘ w)^*𝒜_k ⟶ (w^*ℒ)^{⊗ k} is surjective for some k ≥ 1 factors through U(ψ). Here ψ|_W is the restriction (ofUnitalHom s f L ψ).twisting W w of ψ to W (pointTwisting, the map of AlgebraicGeometry.Space.pointPsi).

theorem mem_locus_ofUnitalHom_of_epi {W : BigFppfOver s.site s.base s.containsBase}
    (w : yoneda.obj W ⟶ X.1) {k : ℕ} (hk : 0 < k)
    [Epi (((ofUnitalHom s f L ψ).twisting W w).app (k : ℤ))] :
    yonedaEquiv w ∈ (ofUnitalHom s f L ψ).locus.obj (op W)

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.factor_invertibleMorphism_ofUnitalHom_of_epi, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpaceModule.lean, line 576. The attribute's comment: “clause (2)(b), for a pair (L, psi) on an algebraic space X: for a scheme W -> X over which psi|_W is surjective in degree k >= 1, W -> U(psi) -> Proj_Y(A) is the morphism attached to the quadruple (k, W -> Y, L^k|_W, psi|_W)”.

Clause (2)(b) of [Stacks, Tag 0D2Z] for a pair (ℒ, ψ) on the algebraic space X: for a scheme w : W ⟶ X over which ψ|_W is surjective in degree k ≥ 1, the composite W ⟶ U(ψ) ⟶ Proj_Y(𝒜) is the morphism which the construction of the relative Proj attaches to the quadruple (k, W ⟶ Y, ℒ^{⊗ k}|_W, ψ|_W).

theorem factor_invertibleMorphism_ofUnitalHom_of_epi {W : BigFppfOver s.site s.base s.containsBase}
    (w : yoneda.obj W ⟶ X.1) {k : ℕ} (hk : 0 < k)
    [Epi (((ofUnitalHom s f L ψ).twisting W w).app (k : ℤ))] :
    (ofUnitalHom s f L ψ).factor w (mem_locus_ofUnitalHom_of_epi s f L ψ w hk) ≫
        (ofUnitalHom s f L ψ).invertibleMorphism =
      (ofUnitalHom s f L ψ).quadruplePoint w hk

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.eq_invertibleMorphism_ofUnitalHom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpaceModule.lean, line 590. The attribute's comment: “r_{L,psi} is characterized by property (2), for a pair (L, psi) on an algebraic space X: it is the only morphism U(psi) -> Proj_Y(A) over Y with clause (2)(b)”.

r_{ℒ,ψ} is characterized by clause (2), for a pair (ℒ, ψ) on the algebraic space X: a morphism U(ψ) ⟶ Proj_Y(𝒜) over Y which, on every scheme W ⟶ X over which ψ|_W is surjective in some degree k ≥ 1, is the morphism attached to the quadruple of clause (2)(b), is r_{ℒ,ψ}.

theorem eq_invertibleMorphism_ofUnitalHom
    (Φ : (ofUnitalHom s f L ψ).locus.toFunctor ⟶ s.relativeProjFunctor)
    (hΦπ : Φ ≫ s.relativeProjπ = (ofUnitalHom s f L ψ).locus.ι ≫ f.hom)
    (hΦ : ∀ {W : BigFppfOver s.site s.base s.containsBase} (w : yoneda.obj W ⟶ X.1) {k : ℕ}
      (hk : 0 < k) [Epi (((ofUnitalHom s f L ψ).twisting W w).app (k : ℤ))],
      (ofUnitalHom s f L ψ).factor w (mem_locus_ofUnitalHom_of_epi s f L ψ w hk) ≫ Φ =
        (ofUnitalHom s f L ψ).quadruplePoint w hk) :
    Φ = (ofUnitalHom s f L ψ).invertibleMorphism

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.invertibleMorphism_baseChange_square_ofUnitalHom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpaceModule.lean, line 614. The attribute's comment: “clause (3), the open and the morphism, for a pair (L, psi) on an algebraic space X and an arbitrary commutative square g o f' = f o g' with X', Y' schemes: U(psi') = (g')^{-1}(U(psi)) and r_{psi',L'} is the base change of r_{L,psi}”.

Clause (3) of [Stacks, Tag 0D2Z] for a pair (ℒ, ψ) on the algebraic space X: for a commutative square g ∘ f' = f ∘ g' with X', Y' schemes and ψ' the pullback of ψ, U(ψ') = (g')^{-1}(U(ψ)) and r_{ψ',ℒ'} of Tag 01O9 is the base change of r_{ℒ,ψ} through Proj_{Y'}(g^*𝒜) = Y' ×_Y Proj_Y(𝒜), tested on every scheme T ⟶ U(ψ').

theorem invertibleMorphism_baseChange_square_ofUnitalHom
    {X' Y' : BigFppfOver s.site s.base s.containsBase} (g' : yoneda.obj X' ⟶ X.1)
    (f' : X' ⟶ Y') (g : yoneda.obj Y' ⟶ s.space.1) (hsq : yoneda.map f' ≫ g = g' ≫ f.hom) :
    (ofUnitalHom s f L ψ).locus.preimage g' = subspaceOfOpens s.site s.base s.containsBase X'
        (toGradedPowerMap ((ofUnitalHom s f L ψ).squarePsi g' f' g hsq)).coveringOpen ∧
    ∀ {T : BigFppfOver s.site s.base s.containsBase} (t : T ⟶ X')
      (ht : yonedaEquiv (yoneda.map t ≫ g') ∈ (ofUnitalHom s f L ψ).locus.obj (op T)),
      (s.relativeProjPoints.pointEquivProjOver Y' g (t ≫ f')
          ⟨(ofUnitalHom s f L ψ).factor (yoneda.map t ≫ g') ht ≫
              (ofUnitalHom s f L ψ).invertibleMorphism,
            (ofUnitalHom s f L ψ).factor_invertibleMorphism_comp_π g' f' g hsq t ht⟩).1 =
        liftOfPreimageEqTop _ ((BigFppfOver.toScheme s.site s.base s.containsBase).map t)
            ((ofUnitalHom s f L ψ).preimage_coveringOpen_squarePsi_eq_top g' f' g hsq t ht) ≫
          (toGradedPowerMap ((ofUnitalHom s f L ψ).squarePsi g' f' g hsq)).globalMorphism
            (relativeProj (s.relativeProjPoints.algebra Y' g))

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.tag0D2Z_space, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpaceTheta0D2Z.lean, line 238. The attribute's comment: “the whole lemma, in Situation 0849 with Proj_Y(A) the relative Proj of Stacks 084B and X an algebraic space over the algebraic space Y: U(psi) an open subspace of X; the morphism r_{L,psi} : U(psi) -> Proj_Y(A) over Y with clauses (2)(a), (2)(b) and characterized by (2)(b); clause (3) for the open and the morphism; theta : r^*((+)_d O(d)) -> (+)_d L^d|_{U(psi)} a unital multiplicative map with clause (1), restricting at every scheme point of U(psi) to theta of Tag 01O9 and along every square with X', Y' schemes to the theta of the pulled-back psi (clause (3)), and the only map with these restrictions”.

[Stacks, Tag 0D2Z] for X an algebraic space. In Situation 0849 let f : X ⟶ Y be a morphism of algebraic spaces, ℒ an invertible 𝒪_X-module and ψ : f^*𝒜 ⟶ ⨁_d ℒ^{⊗ d} a homomorphism of graded algebras. Then U(ψ) is an open subspace of X, r\_\{ℒ,ψ} : U(ψ) ⟶ Proj\_Y(𝒜) is a morphism over Y with clauses (2)(a), (2)(b), characterized by (2)(b), and satisfying clause (3); and there is a map θ : r^*(⨁_d 𝒪(d)) ⟶ ⨁_d ℒ^{⊗ d}|_{U(ψ)} of graded algebras with clause (1), whose restriction to every scheme point w : W ⟶ U(ψ) is θ of [Stacks, Tag 01O9] for w^*ψ, which for every square g ∘ f' = f ∘ g' with X', Y' schemes restricts to the map θ' of the pullback ψ' on every scheme over U(ψ') = (g')^{-1}(U(ψ)) (clause (3)), and which is the only map with these restrictions.

theorem tag0D2Z_space :
    IsOpenSubspace s.site s.base s.containsBase (ofUnitalHom s f L ψ).locus ∧
    (ofUnitalHom s f L ψ).invertibleMorphism ≫ s.relativeProjπ =
      (ofUnitalHom s f L ψ).locus.ι ≫ f.hom ∧
    (∀ {W : BigFppfOver s.site s.base s.containsBase} (w : yoneda.obj W ⟶ X.1) {k : ℕ}
      (_ : 0 < k) [Epi (((ofUnitalHom s f L ψ).twisting W w).app (k : ℤ))],
      yonedaEquiv w ∈ (ofUnitalHom s f L ψ).locus.obj (Opposite.op W)) ∧
    (∀ {W : BigFppfOver s.site s.base s.containsBase} (w : yoneda.obj W ⟶ X.1) {k : ℕ}
      (hk : 0 < k) [Epi (((ofUnitalHom s f L ψ).twisting W w).app (k : ℤ))],
      (ofUnitalHom s f L ψ).factor w (mem_locus_ofUnitalHom_of_epi s f L ψ w hk) ≫
          (ofUnitalHom s f L ψ).invertibleMorphism =
        (ofUnitalHom s f L ψ).quadruplePoint w hk) ∧
    (∀ Φ : (ofUnitalHom s f L ψ).locus.toFunctor ⟶ s.relativeProjFunctor,
      Φ ≫ s.relativeProjπ = (ofUnitalHom s f L ψ).locus.ι ≫ f.hom →
      (∀ {W : BigFppfOver s.site s.base s.containsBase} (w : yoneda.obj W ⟶ X.1) {k : ℕ}
        (hk : 0 < k) [Epi (((ofUnitalHom s f L ψ).twisting W w).app (k : ℤ))],
        (ofUnitalHom s f L ψ).factor w (mem_locus_ofUnitalHom_of_epi s f L ψ w hk) ≫ Φ =
          (ofUnitalHom s f L ψ).quadruplePoint w hk) →
      Φ = (ofUnitalHom s f L ψ).invertibleMorphism) ∧
    (∀ {X' Y' : BigFppfOver s.site s.base s.containsBase} (g' : yoneda.obj X' ⟶ X.1)
      (f' : X' ⟶ Y') (g : yoneda.obj Y' ⟶ s.space.1) (hsq : yoneda.map f' ≫ g = g' ≫ f.hom),
      (ofUnitalHom s f L ψ).locus.preimage g' = subspaceOfOpens s.site s.base s.containsBase X'
          (toGradedPowerMap ((ofUnitalHom s f L ψ).squarePsi g' f' g hsq)).coveringOpen ∧
      ∀ {T : BigFppfOver s.site s.base s.containsBase} (t : T ⟶ X')
        (ht : yonedaEquiv (yoneda.map t ≫ g') ∈ (ofUnitalHom s f L ψ).locus.obj (Opposite.op T)),
        (s.relativeProjPoints.pointEquivProjOver Y' g (t ≫ f')
            ⟨(ofUnitalHom s f L ψ).factor (yoneda.map t ≫ g') ht ≫
                (ofUnitalHom s f L ψ).invertibleMorphism,
              (ofUnitalHom s f L ψ).factor_invertibleMorphism_comp_π g' f' g hsq t ht⟩).1 =
          Stacks.AlgebraicGeometry.RelativeProjInvertibleMorphism.liftOfPreimageEqTop _
              ((BigFppfOver.toScheme s.site s.base s.containsBase).map t)
              ((ofUnitalHom s f L ψ).preimage_coveringOpen_squarePsi_eq_top g' f' g hsq t ht) ≫
            (toGradedPowerMap ((ofUnitalHom s f L ψ).squarePsi g' f' g hsq)).globalMorphism
              (relativeProj
                (s.relativeProjPoints.algebra Y' g))) ∧
    ∃ θ : ∀ d : ℤ,
        (thetaSourceOfUnitalHom s f L ψ (basePresentation s) d).obj ⟶ (thetaTarget s f L ψ d).obj,
      (∀ i j : ℤ,
        thetaSourceMul (ofUnitalHom s f L ψ) X.property (basePresentation s) i j ≫ θ (i + j) =
          (θ i ⊗ₘ θ j) ≫ thetaTargetMul s f L ψ i j) ∧
      thetaSourceUnit (ofUnitalHom s f L ψ) X.property (basePresentation s) ≫ θ 0 =
        thetaTargetUnit s f L ψ ∧
      ClauseOneSections s f L ψ (basePresentation s) θ ∧
      (∀ (d : ℤ) {T : BigFppfOver s.shrink.site s.shrink.base s.shrink.containsBase}
        (w : yoneda.obj T ⟶ (locusSpaceOfUnitalHom s f L ψ).obj),
        (modulePullback s.shrink.site s.shrink.base s.shrink.containsBase (pointHom w)).map
            (θ d) =
          (chartSourceIso (basePresentation s) w (locusOpen_locusPoint w) d).hom ≫
            ((representedQuasicoherentSchemeEquivalence s.shrink.site s.shrink.base
                s.shrink.containsBase T).functor.map
              (chartSchemeTheta s f L ψ (locusPoint w) (locusOpen_locusPoint w) d)).hom ≫
            (chartTargetIso w d).hom) ∧
      (∀ {X' Y' : BigFppfOver s.site s.base s.containsBase} (g' : yoneda.obj X' ⟶ X.1)
        (f' : X' ⟶ Y') (g : yoneda.obj Y' ⟶ s.space.1) (hsq : yoneda.map f' ≫ g = g' ≫ f.hom)
        (d : ℤ) {T : BigFppfOver s.shrink.site s.shrink.base s.shrink.containsBase} (t : T ⟶ X')
        (w : yoneda.obj T ⟶ (locusSpaceOfUnitalHom s f L ψ).obj)
        (hw : yoneda.map t ≫ g' = locusPoint w)
        (k : (BigFppfOver.toScheme s.site s.base s.containsBase).obj T ⟶
          (toGradedPowerMap ((ofUnitalHom s f L ψ).squarePsi g' f' g hsq)).coveringOpen.toScheme)
        (hk : k ≫ (toGradedPowerMap ((ofUnitalHom s f L ψ).squarePsi g' f' g hsq)).coveringOpen.ι =
          (BigFppfOver.toScheme s.site s.base s.containsBase).map t),
        (modulePullback s.shrink.site s.shrink.base s.shrink.containsBase (pointHom w)).map
            (θ d) =
          (chartSourceIso (basePresentation s) w (locusOpen_locusPoint w) d).hom ≫
            ((representedQuasicoherentSchemeEquivalence s.shrink.site s.shrink.base
                s.shrink.containsBase T).functor.map
              (eqToHom (chartSchemeThetaSource_congr s f L ψ hw
                  (locusOpen_comp_eq_top_of_eq g' t w hw) (locusOpen_locusPoint w) d).symm ≫
                squarePointChartTheta s f L ψ g' f' g hsq t
                  (locusOpen_comp_eq_top_of_eq g' t w hw) k hk d ≫
                eqToHom (congrArg (fun z => pointLaurentPieceQcoh L T z d) hw))).hom ≫
            (chartTargetIso w d).hom) ∧
      (∀ θ' : ∀ d : ℤ,
          (thetaSourceOfUnitalHom s f L ψ (basePresentation s) d).obj ⟶ (thetaTarget s f L ψ d).obj,
        (∀ (d : ℤ) {T : BigFppfOver s.shrink.site s.shrink.base s.shrink.containsBase}
          (w : yoneda.obj T ⟶ (locusSpaceOfUnitalHom s f L ψ).obj),
          (modulePullback s.shrink.site s.shrink.base s.shrink.containsBase (pointHom w)).map
              (θ' d) =
            (chartSourceIso (basePresentation s) w (locusOpen_locusPoint w) d).hom ≫
              ((representedQuasicoherentSchemeEquivalence s.shrink.site s.shrink.base
                  s.shrink.containsBase T).functor.map
                (chartSchemeTheta s f L ψ (locusPoint w) (locusOpen_locusPoint w) d)).hom ≫
              (chartTargetIso w d).hom) →
        θ' = θ)

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.theta_map_eq_pullback, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpaceTheta.lean, line 168. The attribute's comment: “theta for X an algebraic space, on the scheme points of U(psi): for scheme points x : T -> X and x o tau, tau : T' -> T, the map theta_{x o tau} of Tag 01O9 for (x o tau)^psi is the pullback along tau of theta_x, through the canonical isomorphisms of the sources r'^((+)_d O(d)) and of the targets (+)_d ((x o tau)^*L)^d. This is the last assertion of clause (3) for the square with Y' = X' = T' and f' = id, that is, the compatibility of the restrictions of theta between scheme points”.

The restriction of θ to the scheme point x ∘ τ is the pullback along τ of its restriction to x (Stacks 0D2Z for an algebraic space X, on the scheme points of U(ψ)): θ_{x ∘ τ} is j^*θ_x for the restriction j : U((x ∘ τ)^*ψ) ⟶ U(x^*ψ) of τ, read through the identification of the sources (…GradedAlgebraRestriction.squareThetaSourceIso, then …GradedPowerMap.thetaTransportSourceIso) and of the targets (…GradedAlgebraRestriction.squareThetaTargetIso, then …GradedPowerMap.thetaTransportTargetIso for τ^*(x^*ℒ) ≅ (x ∘ τ)^*ℒ).

theorem theta_map_eq_pullback :
    (toGradedPowerMap (R.twisting T' (yoneda.map τ ≫ x))).theta =
      ((toGradedPowerMap (s.quadrupleRestriction.squareTwisting
          s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf (R.twisting T
            x)
          ((yoneda.map τ ≫ x) ≫ f) (𝟙 T') τ
          (yoneda_map_id_comp_assoc s f τ x))).thetaTransportSourceIso
        (R.coveringOpen_twisting_map_le τ x)
        (homOfLE_globalMorphism_of_eq_congrBase_congrModule (CategoryTheory.Functor.map_id _ T') _
          (R.lineIso τ x) _ (R.twisting_map τ x))).inv ≫
        pullbackGradedAlgebraMap
          (Scheme.homOfLE
            ((BigFppfOver.toScheme s.shrink.site s.shrink.base s.shrink.containsBase).obj T')
            (R.coveringOpen_twisting_map_le τ x)).toLRSHom.toShHom
          ((s.quadrupleRestriction.squareThetaSourceIso s.shrink.contains_relativeProj_pointAlgebra
              s.shrink.space.property.isSheaf (R.twisting T x) ((yoneda.map τ ≫ x) ≫ f) (𝟙 T') τ
              (yoneda_map_id_comp_assoc s f τ x)).inv ≫
            pullbackGradedAlgebraMap
              (Scheme.Hom.resLE
                ((BigFppfOver.toScheme s.shrink.site s.shrink.base s.shrink.containsBase).map τ)
                (toGradedPowerMap (R.twisting T x)).coveringOpen
                (toGradedPowerMap (s.quadrupleRestriction.squareTwisting
                  s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf
                  (R.twisting T x) ((yoneda.map τ ≫ x) ≫ f) (𝟙 T') τ
                  (yoneda_map_id_comp_assoc s f τ x))).coveringOpen
                (s.quadrupleRestriction.coveringOpen_squareTwisting
                  s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf
                  (R.twisting T x) ((yoneda.map τ ≫ x) ≫ f) (𝟙 T') τ
                  (yoneda_map_id_comp_assoc s f τ x)).le).toLRSHom.toShHom
              (toGradedPowerMap (R.twisting T x)).theta ≫
            (s.quadrupleRestriction.squareThetaTargetIso s.shrink.contains_relativeProj_pointAlgebra
              s.shrink.space.property.isSheaf (R.twisting T x) ((yoneda.map τ ≫ x) ≫ f) (𝟙 T') τ
              (yoneda_map_id_comp_assoc s f τ x)).hom) ≫
        ((toGradedPowerMap (s.quadrupleRestriction.squareTwisting
          s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf (R.twisting T
            x)
          ((yoneda.map τ ≫ x) ≫ f) (𝟙 T') τ
          (yoneda_map_id_comp_assoc s f τ x))).thetaTransportTargetIso
          (R.lineIso τ x) (R.coveringOpen_twisting_map_le τ x)).hom

AlgebraicGeometry.Space.RelativeProjSituation.InvertibleTwistingRestriction.theta_map_eq_pullback_ofUnitalHom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSpaceTheta.lean, line 248. The attribute's comment: “theta for an algebraic space X with an invertible O_X-module L on its small etale site and a homomorphism of graded algebras psi : f^*A -> (+)_n L^n, on the scheme points of U(psi): theta_{x o tau} is the pullback along tau of theta_x, through the canonical isomorphisms of the sources and of the targets”.

The restriction of θ to the scheme point x ∘ τ is the pullback along τ of its restriction to x, for a pair (ℒ, ψ) on the small étale site of the algebraic space X: theta_map_eq_pullback for the restriction datum ofUnitalHom s f L ψ of (ℒ, ψ).

theorem theta_map_eq_pullback_ofUnitalHom :
    (toGradedPowerMap ((ofUnitalHom s f L ψ).twisting T' (yoneda.map τ ≫ x))).theta =
      ((toGradedPowerMap (s.quadrupleRestriction.squareTwisting
          s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf
          ((ofUnitalHom s f L ψ).twisting T x)
          ((yoneda.map τ ≫ x) ≫ f.hom) (𝟙 T') τ
          (yoneda_map_id_comp_assoc s f.hom τ x))).thetaTransportSourceIso
        ((ofUnitalHom s f L ψ).coveringOpen_twisting_map_le τ x)
        (homOfLE_globalMorphism_of_eq_congrBase_congrModule (CategoryTheory.Functor.map_id _ T') _
          ((ofUnitalHom s f L ψ).lineIso τ x) _ ((ofUnitalHom s f L ψ).twisting_map τ x))).inv ≫
        pullbackGradedAlgebraMap
          (Scheme.homOfLE
            ((BigFppfOver.toScheme s.shrink.site s.shrink.base s.shrink.containsBase).obj T')
            ((ofUnitalHom s f L ψ).coveringOpen_twisting_map_le τ x)).toLRSHom.toShHom
          ((s.quadrupleRestriction.squareThetaSourceIso s.shrink.contains_relativeProj_pointAlgebra
              s.shrink.space.property.isSheaf ((ofUnitalHom s f L ψ).twisting T x)
              ((yoneda.map τ ≫ x) ≫ f.hom) (𝟙 T') τ
              (yoneda_map_id_comp_assoc s f.hom τ x)).inv ≫
            pullbackGradedAlgebraMap
              (Scheme.Hom.resLE
                ((BigFppfOver.toScheme s.shrink.site s.shrink.base s.shrink.containsBase).map τ)
                (toGradedPowerMap ((ofUnitalHom s f L ψ).twisting T x)).coveringOpen
                (toGradedPowerMap (s.quadrupleRestriction.squareTwisting
                  s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf
                  ((ofUnitalHom s f L ψ).twisting T x) ((yoneda.map τ ≫ x) ≫ f.hom) (𝟙 T') τ
                  (yoneda_map_id_comp_assoc s f.hom τ x))).coveringOpen
                (s.quadrupleRestriction.coveringOpen_squareTwisting
                  s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf
                  ((ofUnitalHom s f L ψ).twisting T x) ((yoneda.map τ ≫ x) ≫ f.hom) (𝟙 T') τ
                  (yoneda_map_id_comp_assoc s f.hom τ x)).le).toLRSHom.toShHom
              (toGradedPowerMap ((ofUnitalHom s f L ψ).twisting T x)).theta ≫
            (s.quadrupleRestriction.squareThetaTargetIso s.shrink.contains_relativeProj_pointAlgebra
              s.shrink.space.property.isSheaf ((ofUnitalHom s f L ψ).twisting T x)
              ((yoneda.map τ ≫ x) ≫ f.hom) (𝟙 T') τ
              (yoneda_map_id_comp_assoc s f.hom τ x)).hom) ≫
        ((toGradedPowerMap (s.quadrupleRestriction.squareTwisting
          s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf
          ((ofUnitalHom s f L ψ).twisting T x)
          ((yoneda.map τ ≫ x) ≫ f.hom) (𝟙 T') τ
          (yoneda_map_id_comp_assoc s f.hom τ x))).thetaTransportTargetIso
          ((ofUnitalHom s f L ψ).lineIso τ x)
          ((ofUnitalHom s f L ψ).coveringOpen_twisting_map_le τ x)).hom

AlgebraicGeometry.Space.RelativeProjSituation.invertibleMorphism_baseChange_square, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSquare.lean, line 730. The attribute's comment: “clause (3), the open and the morphism, at a scheme point f : X -> Y of the base (X a scheme), for an ARBITRARY commutative square g o f' = f o g' with X', Y' schemes, on the relative Proj constructed as the functor of quadruples of Tag 084A: with psi' the pullback of psi to (f')^(g^A) (through the comparisons (f')^(g^A) = (g o f')^A = (f o g')^A = (g')^(f^A)), U(psi') = (g')^{-1}(U(psi)), and r_{psi',L'} : U(psi') -> Proj_{Y'}(g^A) of Tag 01O9 is the base change of r_{psi,L} through the identification Proj_{Y'}(g^A) = Y' x_Y Proj_Y(A) of Tag 084B, tested on every scheme T -> U(psi')”.

Clause (3) of Stacks 0D2Z, for the open and the morphism, for an arbitrary commutative square, on the constructed relative Proj.

Let F = Proj_Y(𝒜) be the relative Proj of Situation 0849, constructed as the functor of quadruples of Stacks 084A (AlgebraicGeometry.Space.RelativeProjSituation.relativeProjFunctor), f : X ⟶ Y a scheme point of the algebraic space Y, ℒ an invertible 𝒪_X-module, ψ : f^*𝒜 ⟶ ⨁_{d ≥ 0} ℒ^{⊗ d} a homomorphism of graded algebras and r_{ℒ,ψ} : U(ψ) ⟶ F the morphism of Stacks 0D2Z. Consider a commutative square g ∘ f' = f ∘ g' with f' : X' ⟶ Y', g' : X' ⟶ X and g : Y' ⟶ Y, X' and Y' schemes; put 𝒜' = g^*𝒜, ℒ' = (g')^*ℒ and let ψ' : (f')^*𝒜' ⟶ ⨁_d (ℒ')^{⊗ d} be the pullback of ψ (AlgebraicGeometry.Space.GradedAlgebraRestriction.squareTwisting). Then

  • U(ψ') = (g')^{-1}(U(ψ)), U(ψ') being the open of Tag 01O9 for ψ' over Y'; and
  • r_{ψ',ℒ'} : U(ψ') ⟶ Proj_{Y'}(𝒜') of Tag 01O9 agrees with the base change of r_{ψ,ℒ} through the identification Proj_{Y'}(𝒜') = Y' ×_Y F of Stacks 084B: for every test scheme t : T ⟶ X' of U(ψ'), the T-point of Y' ×_Y F with components f' ∘ t and r_{ψ,ℒ} ∘ g' ∘ t is, in Proj_{Y'}(𝒜'), the composite T ⟶ U(ψ') ⟶ Proj_{Y'}(𝒜').
theorem invertibleMorphism_baseChange_square :
    (toGradedPowerMap (s.quadrupleRestriction.squareTwisting
        s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf
          ψ g f' g' hsq)).coveringOpen =
      (BigFppfOver.toScheme s.site s.base s.containsBase).map g' ⁻¹ᵁ
        (toGradedPowerMap ψ).coveringOpen ∧
    ∀ {T : BigFppfOver s.site s.base s.containsBase} (t : T ⟶ X')
      (ht : t ≫ g' ∈ (subspaceOfOpens s.site s.base s.containsBase X
        (toGradedPowerMap ψ).coveringOpen).obj (op T)),
      (s.relativeProjPoints.pointEquivProjOver Y' g (t ≫ f')
          ⟨s.relativeProjPoints.locusFactor ψ (t ≫ g') ht ≫
            s.relativeProjPoints.invertibleMorphism ψ,
            s.quadrupleRestriction.locusFactor_invertibleMorphism_comp_π
              s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf ψ g f' g'
                hsq t
              ht⟩).1 =
        liftOfPreimageEqTop _ ((BigFppfOver.toScheme s.site s.base s.containsBase).map t)
            (s.quadrupleRestriction.preimage_coveringOpen_squareTwisting_eq_top
              s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf ψ g f' g'
                hsq t
              ht) ≫
          (toGradedPowerMap (s.quadrupleRestriction.squareTwisting
            s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf ψ g f' g'
              hsq)).globalMorphism (relativeProj (s.relativeProjPoints.algebra Y' g))

AlgebraicGeometry.Space.RelativeProjSituation.invertibleTheta_baseChange_square, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSquare.lean, line 783. The attribute's comment: “clause (3), theta: at a scheme point f : X -> Y of the base (X a scheme), for an ARBITRARY commutative square g o f' = f o g' with X', Y' schemes, on the relative Proj constructed as the functor of quadruples of Tag 084A, the map theta' : r'^((+)_d O(d)) -> (+)_d (L')^d|_{U(psi')} of Tag 01O9 for the pullback psi' of psi is the pullback j^theta of theta along the restriction j : U(psi') -> U(psi) of g', through the canonical isomorphisms of graded algebras j^r^((+)_d O(d)) = r'^((+)_d O(d)) and j^((+)_d L^d|_{U(psi)}) = (+)_d (L')^d|_{U(psi')}”.

The last assertion of clause (3) of Stacks 0D2Z, θ' is the pullback of θ, for an arbitrary commutative square, on the constructed relative Proj.

In the situation of invertibleMorphism_baseChange_square (a commutative square g ∘ f' = f ∘ g' with X', Y' schemes, 𝒜' = g^*𝒜, ℒ' = (g')^*ℒ and ψ' the pullback of ψ), let θ : r_{ℒ,ψ}^*(⨁_d 𝒪(d)) ⟶ ⨁_d ℒ^{⊗ d}|_{U(ψ)} and θ' : r_{ℒ',ψ'}^*(⨁_d 𝒪(d)) ⟶ ⨁_d (ℒ')^{⊗ d}|_{U(ψ')} be the homomorphisms of graded algebras of Tag 01O9, for ψ at the point f and for ψ' over Y'. Then θ' is the inverse image j^*θ of θ along the restriction j : U(ψ') = (g')^{-1}(U(ψ)) ⟶ U(ψ) of g', read through the canonical identifications of sheaves of graded algebras j^*r_{ℒ,ψ}^*(⨁_d 𝒪(d)) ≅ r_{ℒ',ψ'}^*(⨁_d 𝒪(d)) (AlgebraicGeometry.Space.GradedAlgebraRestriction.squareThetaSourceIso: pseudofunctoriality of the inverse image and the comparison of the twists of Tag 01NR along the morphisms of relative Proj's over the point g ∘ f' = f ∘ g' of X', Stacks 084B (3)) and j^*(⨁_d ℒ^{⊗ d}|_{U(ψ)}) ≅ ⨁_d (ℒ')^{⊗ d}|_{U(ψ')} (AlgebraicGeometry.Space.GradedAlgebraRestriction.squareThetaTargetIso).

theorem invertibleTheta_baseChange_square :
    (toGradedPowerMap (s.quadrupleRestriction.squareTwisting
        s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf
          ψ g f' g' hsq)).theta =
      (s.quadrupleRestriction.squareThetaSourceIso s.shrink.contains_relativeProj_pointAlgebra
          s.shrink.space.property.isSheaf ψ g f' g' hsq).inv ≫
        pullbackGradedAlgebraMap
          (Scheme.Hom.resLE ((BigFppfOver.toScheme s.site s.base s.containsBase).map g')
            (toGradedPowerMap ψ).coveringOpen
            (toGradedPowerMap (s.quadrupleRestriction.squareTwisting
              s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf
              ψ g f' g' hsq)).coveringOpen
            (s.quadrupleRestriction.coveringOpen_squareTwisting
              s.shrink.contains_relativeProj_pointAlgebra s.shrink.space.property.isSheaf
              ψ g f' g' hsq).le).toLRSHom.toShHom
          (toGradedPowerMap ψ).theta ≫
        (s.quadrupleRestriction.squareThetaTargetIso s.shrink.contains_relativeProj_pointAlgebra
          s.shrink.space.property.isSheaf ψ g f' g' hsq).hom

AlgebraicGeometry.Space.RelativeProjPoints.invertibleTheta_unique, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleSquare.lean, line 827. The attribute's comment: “theta is characterized by clause (1), at the scheme point f : X -> Y: a homomorphism of graded algebras theta' : r^((+)_d O(d)) -> (+)_d L^d|_{U(psi)} which for every open V of X, d >= 0 and a in (f^A)_d(V) carries the pullback of psi_P(a) to the restriction of psi(a) is theta”.

θ is characterized by clause (1) of [Stacks, Tag 0D2Z], after base change to the scheme point f : X ⟶ Y. With the twists of Proj_Y(𝒜) at f those of Proj_X(f^*𝒜), as in invertibleTheta_clauseOne: a homomorphism of graded algebras θ' : r^*(⨁_d 𝒪(d)) ⟶ ⨁_d ℒ^{⊗ d}|_{U(ψ)} which, for every open V of X, d ≥ 0 and a ∈ (f^*𝒜)_d(V), carries the inverse image of ψ_P(a) to the restriction of ψ(a) to U(ψ) ∩ V is θ.

theorem invertibleTheta_unique
    (θ' : SheafOfModules.GradedAlgebra.Hom
      (Stacks.Conormal.gradedPullback
        ((toGradedPowerMap ψ).globalMorphism (relativeProj (d.algebra X f)))
        (twistDataOfGradedAlgebra (d.algebra X f)).algebra)
      (Stacks.AlgebraicGeometry.ProjChartGradedTriple.laurentOn L
        (toGradedPowerMap ψ).coveringOpen))
    (h : ∀ (V : ((BigFppfOver.toScheme B S hS).obj X).Opens) (n : ℕ)
        (a : Γ((d.algebra X f).piece (n : ℤ), V)),
        ((Stacks.AmpleProjectiveImmersion.tensorPowerModule _ L (n : ℤ)).restrict
            (toGradedPowerMap ψ).coveringOpen.ι).presheaf.map
            (eqToHom ((toGradedPowerMap ψ).toBase_preimage_eq V)).op
            ((θ'.app n).val.app
              (op ((toGradedPowerMap ψ).globalMorphism (relativeProj (d.algebra X f)) ⁻¹ᵁ
                ((relativeProj (d.algebra X f)).toBase ⁻¹ᵁ V)))
              (Stacks.RingedSpace.pullbackUnit
                ((toGradedPowerMap ψ).globalMorphism
                  (relativeProj (d.algebra X f))).toLRSHom.toShHom
                ((twistDataOfGradedAlgebra (d.algebra X f)).algebra.piece (n : ℤ))
                (op ((relativeProj (d.algebra X f)).toBase ⁻¹ᵁ V))
                (((twistDataOfGradedAlgebra (d.algebra X f)).ψ n).app V a)))
          = (Stacks.AmpleProjectiveImmersion.tensorPowerModule _ L (n : ℤ)).presheaf.map
              (homOfLE ((toGradedPowerMap ψ).coveringOpen.ι.image_preimage_le
                (𝟙 ((BigFppfOver.toScheme B S hS).obj X) ⁻¹ᵁ V))).op
              ((Stacks.AlgebraicGeometry.CoherentMulSections.powCompare L n).hom.app
                (𝟙 ((BigFppfOver.toScheme B S hS).obj X) ⁻¹ᵁ V)
                ((toGradedPowerMap ψ).value n V a))) :
    θ' = (toGradedPowerMap ψ).theta

AlgebraicGeometry.Space.RelativeProjPoints.invertibleTheta_baseChange, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjInvertibleThetaBaseChange.lean, line 561. The attribute's comment: “variant: clause (3), last sentence, for the squares in which Y' -> Y is the scheme point f : X -> Y; the tag is AlgebraicGeometry.Space.RelativeProjSituation.tag0D2Z”.

The last sentence of clause (3) of [Stacks, Tag 0D2Z]: θ' is the pullback of θ, for the squares in which Y' ⟶ Y is the scheme point f : X ⟶ Y. Consider the square with Y' = X, g = f, a scheme g' : X' ⟶ X and f' = g', so that 𝒜' = f^*𝒜 (the algebra d.algebra X f of the presentation of Proj_Y(𝒜) at f), ℒ' = g'^*ℒ and ψ' = g'^*ψ; at the point f the twists 𝒪(d) of Proj_Y(𝒜) are those of Proj_X(f^*𝒜), as in invertibleTheta_clauseOne. Then the map θ' : r_{ℒ',ψ'}^*(⨁_d 𝒪(d)) ⟶ ⨁_d (ℒ')^{⊗ d}|_{U(ψ')} is the inverse image of θ : r_{ℒ,ψ}^*(⨁_d 𝒪(d)) ⟶ ⨁_d ℒ^{⊗ d}|_{U(ψ)} along the restriction j : U(ψ') = g'^{-1}(U(ψ)) ⟶ U(ψ) of g', read through the canonical identifications j^*r_{ℒ,ψ}^*(⨁ 𝒪(d)) ≅ r_{ℒ',ψ'}^*(⨁ 𝒪(d)) (pseudofunctoriality of the inverse image, along j ≫ r_{ℒ,ψ} = r_{ℒ',ψ'}, which is invertibleMorphism_baseChange) and j^*(⨁ ℒ^{⊗ d}|_{U(ψ)}) ≅ ⨁ (g'^*ℒ)^{⊗ d}|_{U(ψ')} of sheaves of graded algebras.

theorem invertibleTheta_baseChange {X' : BigFppfOver B S hS} (g' : X' ⟶ X) :
    (toGradedPowerMap (ψ.pullback ((BigFppfOver.toScheme B S hS).map g'))).theta =
      (thetaSourceIso ψ ((BigFppfOver.toScheme B S hS).map g')).inv ≫
        pullbackGradedAlgebraMap
          (coveringOpenPullback ψ ((BigFppfOver.toScheme B S hS).map g')).toLRSHom.toShHom
          (toGradedPowerMap ψ).theta ≫
        (thetaTargetIso ψ ((BigFppfOver.toScheme B S hS).map g')).hom
Sources

Section71.14 Relatively ample sheaves#

Section 71.14 of the Stacks Project, Tag 0D30. 7 tags here are carried by 17 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.

Tag 0D31, a definition

Tag 0D31 in the Stacks Project.

AlgebraicGeometry.Space.IsRelativelyAmple, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmple.lean, line 177.

Stacks 0D31. A module L on an algebraic space X is ample relative to f : X ⟶ Y, or f-ample, when f is representable and, for every scheme T over the base with a morphism to Y and every cartesian square identifying the fibre product with a scheme U, the pullback of L to U is invertible and ample relative to U ⟶ T in the sense of Stacks 01VH.

def IsRelativelyAmple {X Y : AlgebraicSpaces B S hS} (f : X ⟶ Y)
    (L : Modules.{u, u} B S hS X.1 X.2) : Prop
Tag 0D32, a lemma

Tag 0D32 in the Stacks Project.

AlgebraicGeometry.Space.IsRelativelyAmple.isRepresentable, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmpleOverScheme.lean, line 59. The attribute's comment: “the source is a scheme”.

If a module is ample relative to f : X ⟶ Y and the algebraic space Y is a scheme, then the algebraic space X is a scheme.

theorem IsRelativelyAmple.isRepresentable {X Y : AlgebraicSpaces B S hS} {f : X ⟶ Y}
    {L : Modules.{u, u} B S hS X.1 X.2} (h : IsRelativelyAmple B S hS f L)
    [Y.1.IsRepresentable] : X.1.IsRepresentable

AlgebraicGeometry.Space.isRelativelyAmple_iff_exists_scheme, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmpleOverScheme.lean, line 144.

Let f : X ⟶ Y be a morphism of algebraic spaces over the base, let L be an invertible 𝒪_X-module, and assume that the algebraic space Y is the scheme V. The following are equivalent:

  1. L is ample relative to f in the sense of algebraic spaces, Stacks 0D31;
  2. X is a scheme U and the restriction of L to U is invertible and ample relative to the morphism U ⟶ V induced by f, in the sense of schemes, Stacks 01VH.
theorem isRelativelyAmple_iff_exists_scheme {X Y : AlgebraicSpaces B S hS} (f : X ⟶ Y)
    (L : Modules.{u, u} B S hS X.1 X.2)
    (hLinv : Stacks.SheafOfModules.IsInvertible (structurePresheaf B S hS X.1)
      ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X.1 X.2).O)).property L)
    (V : BigFppfOver B S hS) (eY : Y.1 ≅ yoneda.obj V) :
    IsRelativelyAmple B S hS f L ↔
      ∃ (U : BigFppfOver B S hS) (eX : yoneda.obj U ≅ X.1)
        (hL : Stacks.Ample.IsInvertibleModule ((BigFppfOver.toScheme B S hS).obj U)
          (baseChangeModule B S hS L U eX.hom)),
        @Stacks.RelativeAmple.IsRelativelyAmple _ _
          ((BigFppfOver.toScheme B S hS).map (yoneda.preimage (eX.hom ≫ f.hom ≫ eY.hom)))
          (baseChangeModule B S hS L U eX.hom) hL
Tag 0D33, a lemma

Tag 0D33 in the Stacks Project.

AlgebraicGeometry.Space.isRelativelyAmple_baseChange, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmple.lean, line 267.

Stacks 0D33. Relative ampleness is stable under arbitrary base change of algebraic spaces: if L is f-ample and f' : X' ⟶ Y' is the base change of f : X ⟶ Y along Y' ⟶ Y, then the pullback of L to X' is f'-ample.

theorem isRelativelyAmple_baseChange {X Y X' Y' : AlgebraicSpaces B S hS} {f : X ⟶ Y}
    {g : Y' ⟶ Y} {p : X' ⟶ X} {f' : X' ⟶ Y'} (hsq : IsPullback p f' f g)
    (L : Modules.{u, u} B S hS X.1 X.2) (hL : IsRelativelyAmple B S hS f L) :
    IsRelativelyAmple B S hS f' ((modulePullback B S hS p).obj L)
Tag 0D34, a lemma

Tag 0D34 in the Stacks Project.

AlgebraicGeometry.Space.IsRelativelyAmple.relativelyRepresentable, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmple.lean, line 192. The attribute's comment: “representable”.

Stacks 0D34, representability. A relatively ample module is ample relative to a representable morphism.

theorem IsRelativelyAmple.relativelyRepresentable {X Y : AlgebraicSpaces B S hS} {f : X ⟶ Y}
    {L : Modules.{u, u} B S hS X.1 X.2} (h : IsRelativelyAmple B S hS f L) :
    yoneda.relativelyRepresentable f.hom

AlgebraicGeometry.Space.IsRelativelyAmple.isQuasiCompact, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmple.lean, line 236. The attribute's comment: “quasi-compact”.

Stacks 0D34, quasi-compactness. A morphism of algebraic spaces admitting a relatively ample module is quasi-compact.

Relative ampleness on a scheme contains quasi-compactness of the morphism, so every scheme base change of f is quasi-compact; for a representable morphism that is quasi-compactness of f itself, by AlgebraicGeometry.Space.presheaf_quasiCompact_iff_isQuasiCompact (Stacks 03HD).

theorem IsRelativelyAmple.isQuasiCompact {X Y : AlgebraicSpaces B S hS} {f : X ⟶ Y}
    {L : Modules.{u, u} B S hS X.1 X.2} (h : IsRelativelyAmple B S hS f L) :
    IsQuasiCompact B S hS f.hom

AlgebraicGeometry.Space.IsRelativelyAmple.isSeparated, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmple.lean, line 253. The attribute's comment: “separated”. References: EGA II (4.6.3), “more general”.

Stacks 0D34, separatedness. A morphism of algebraic spaces admitting a relatively ample module is separated.

Every scheme base change of f carries a relatively ample invertible module, hence is a separated morphism of schemes by Stacks 01VI (AlgebraicGeometry.Scheme.Modules.IsRelativelyAmple.isSeparated); for a representable morphism that is separatedness of f itself, by AlgebraicGeometry.Space.isSeparated_iff_presheaf (Stacks 03KY).

theorem IsRelativelyAmple.isSeparated {X Y : AlgebraicSpaces B S hS} {f : X ⟶ Y}
    {L : Modules.{u, u} B S hS X.1 X.2} (h : IsRelativelyAmple B S hS f L) :
    IsSeparated B S hS f.hom
Tag 0D35, a lemma

Tag 0D35 in the Stacks Project.

AlgebraicGeometry.Space.isRelativelyAmple_of_baseChange_etale, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmpleEtaleBaseChange.lean, line 183. The attribute's comment: “(2) implies (1), on RelativeAmpleEtaleDescentOfSchemes and with the source's conclusion that X is a scheme assumed”.

Stacks 0D35, (2) implies (1). Let g : V ⟶ U be a morphism of algebraic spaces which are the schemes V₀ and U₀, induced by a surjective étale h₀ : V₀ ⟶ U₀, let f : X ⟶ U be a morphism of algebraic spaces, let L be an invertible 𝒪_X-module, and let pr : Y ⟶ X, f' : Y ⟶ V present Y as V ×_U X. If the pullback of L to Y is ample on Y/V and X is a scheme, then L is ample on X/U.

Both clauses are read on the base by [Stacks, Tag 0D32]: clause (2) gives a scheme Y₀ with N ample on Y₀/V₀, the square of schemes Y₀ ⟶ V₀ over X₀ ⟶ U₀ is cartesian because yoneda is fully faithful and reflects limits while the passage to schemes preserves fibre products, and the module on Y₀ is the pullback of the module on X₀ by AlgebraicGeometry.Space.nonempty_baseChangeModule_baseChange_of_isInvertible. One application of AlgebraicGeometry.Space.RelativeAmpleEtaleDescentOfSchemes at that single square finishes.

The hypothesis hX that X is a scheme is a conclusion of the source's proof, which obtains it from the relative Proj; that route is unavailable here. See the module documentation.

theorem isRelativelyAmple_of_baseChange_etale
    (hdesc : RelativeAmpleEtaleDescentOfSchemes.{u})
    {U V X Y : AlgebraicSpaces B S hS} {f : X ⟶ U} {g : V ⟶ U} {f' : Y ⟶ V} {pr : Y ⟶ X}
    (hsq : IsPullback pr f' f g) (L : Modules.{u, u} B S hS X.1 X.2)
    (hLinv : Stacks.SheafOfModules.IsInvertible (structurePresheaf B S hS X.1)
      ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X.1 X.2).O)).property L)
    (U₀ V₀ : BigFppfOver B S hS) (eU : U.1 ≅ yoneda.obj U₀) (eV : V.1 ≅ yoneda.obj V₀)
    (h₀ : V₀ ⟶ U₀) (hg : g.hom ≫ eU.hom = eV.hom ≫ yoneda.map h₀)
    (hsurj : Surjective ((BigFppfOver.toScheme B S hS).map h₀))
    (hetale : Etale ((BigFppfOver.toScheme B S hS).map h₀))
    (hX : X.1.IsRepresentable)
    (hN : IsRelativelyAmple B S hS f' ((modulePullback B S hS pr).obj L)) :
    IsRelativelyAmple B S hS f L

AlgebraicGeometry.Space.isRelativelyAmple_iff_baseChange_etale, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmpleEtaleBaseChange.lean, line 236. The attribute's comment: “the equivalence; (1) implies (2) is unconditional, (2) implies (1) rests on the carried statement about schemes and on the source's conclusion that X is a scheme”.

Stacks 0D35. Let g : V ⟶ U be a morphism of algebraic spaces which are the schemes V₀ and U₀, induced by a surjective étale morphism h₀ : V₀ ⟶ U₀, let f : X ⟶ U be a morphism of algebraic spaces, let L be an invertible 𝒪_X-module and let pr : Y ⟶ X, f' : Y ⟶ V present Y as V ×_U X. The following are equivalent:

  1. L is ample on X/U;
  2. the pullback of L to Y is ample on Y/V.

Clause (1) implies clause (2) by [Stacks, Tag 0D33], AlgebraicGeometry.Space.isRelativelyAmple_baseChange, and uses neither the hypothesis hdesc nor hX, nor the surjectivity or étaleness of h₀. The converse is AlgebraicGeometry.Space.isRelativelyAmple_of_baseChange_etale, which rests on all of them.

theorem isRelativelyAmple_iff_baseChange_etale
    (hdesc : RelativeAmpleEtaleDescentOfSchemes.{u})
    {U V X Y : AlgebraicSpaces B S hS} {f : X ⟶ U} {g : V ⟶ U} {f' : Y ⟶ V} {pr : Y ⟶ X}
    (hsq : IsPullback pr f' f g) (L : Modules.{u, u} B S hS X.1 X.2)
    (hLinv : Stacks.SheafOfModules.IsInvertible (structurePresheaf B S hS X.1)
      ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X.1 X.2).O)).property L)
    (U₀ V₀ : BigFppfOver B S hS) (eU : U.1 ≅ yoneda.obj U₀) (eV : V.1 ≅ yoneda.obj V₀)
    (h₀ : V₀ ⟶ U₀) (hg : g.hom ≫ eU.hom = eV.hom ≫ yoneda.map h₀)
    (hsurj : Surjective ((BigFppfOver.toScheme B S hS).map h₀))
    (hetale : Etale ((BigFppfOver.toScheme B S hS).map h₀))
    (hX : X.1.IsRepresentable) :
    IsRelativelyAmple B S hS f L ↔
      IsRelativelyAmple B S hS f' ((modulePullback B S hS pr).obj L)

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

Stacks 0D35, (2) implies (1). Let g : V ⟶ U be a morphism of algebraic spaces which are the affine schemes V₀ and U₀, induced by a surjective étale h₀ : V₀ ⟶ U₀, let f : X ⟶ U be a morphism of algebraic spaces, let L be an invertible 𝒪_X-module and let pr : Y ⟶ X, f' : Y ⟶ V present Y as V ×_U X. If the pullback of L to Y is ample on Y/V, then L is ample on X/U.

The source X is a scheme by AlgebraicGeometry.Space.isRepresentable_of_isRelativelyAmple_baseChange_etale, and then ampleness descends along V₀ ⟶ U₀ by AlgebraicGeometry.Space.isRelativelyAmple_of_baseChange_etale_of_isRepresentable.

theorem isRelativelyAmple_of_isRelativelyAmple_baseChange_etale (hsq : IsPullback pr f' f g)
    (L : Modules.{u, u} B S hS X.1 X.2)
    (hLinv : Stacks.SheafOfModules.IsInvertible (structurePresheaf B S hS X.1)
      ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X.1 X.2).O)).property L)
    (U₀ V₀ : BigFppfOver B S hS) (hU₀ : IsAffine ((BigFppfOver.toScheme B S hS).obj U₀))
    (hV₀ : IsAffine ((BigFppfOver.toScheme B S hS).obj V₀))
    (eU : U.1 ≅ yoneda.obj U₀) (eV : V.1 ≅ yoneda.obj V₀)
    (h₀ : V₀ ⟶ U₀) (hg : g.hom ≫ eU.hom = eV.hom ≫ yoneda.map h₀)
    (hsurj : Surjective ((BigFppfOver.toScheme B S hS).map h₀))
    (hetale : Etale ((BigFppfOver.toScheme B S hS).map h₀))
    (hN : IsRelativelyAmple B S hS f' ((modulePullback B S hS pr).obj L)) :
    IsRelativelyAmple B S hS f L

AlgebraicGeometry.Space.isRelativelyAmple_iff_isRelativelyAmple_baseChange_etale, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmpleEtaleSourceScheme.lean, line 321.

Stacks 0D35. Let g : V ⟶ U be a morphism of algebraic spaces which are the affine schemes V₀ and U₀, induced by a surjective étale morphism h₀ : V₀ ⟶ U₀, let f : X ⟶ U be a morphism of algebraic spaces, let L be an invertible 𝒪_X-module and let pr : Y ⟶ X, f' : Y ⟶ V present Y as V ×_U X. The following are equivalent:

  1. L is ample on X/U;
  2. the pullback of L to Y is ample on Y/V.

Clause (1) implies clause (2) by [Stacks, Tag 0D33], AlgebraicGeometry.Space.isRelativelyAmple_baseChange, and the converse is AlgebraicGeometry.Space.isRelativelyAmple_of_isRelativelyAmple_baseChange_etale.

theorem isRelativelyAmple_iff_isRelativelyAmple_baseChange_etale (hsq : IsPullback pr f' f g)
    (L : Modules.{u, u} B S hS X.1 X.2)
    (hLinv : Stacks.SheafOfModules.IsInvertible (structurePresheaf B S hS X.1)
      ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X.1 X.2).O)).property L)
    (U₀ V₀ : BigFppfOver B S hS) (hU₀ : IsAffine ((BigFppfOver.toScheme B S hS).obj U₀))
    (hV₀ : IsAffine ((BigFppfOver.toScheme B S hS).obj V₀))
    (eU : U.1 ≅ yoneda.obj U₀) (eV : V.1 ≅ yoneda.obj V₀)
    (h₀ : V₀ ⟶ U₀) (hg : g.hom ≫ eU.hom = eV.hom ≫ yoneda.map h₀)
    (hsurj : Surjective ((BigFppfOver.toScheme B S hS).map h₀))
    (hetale : Etale ((BigFppfOver.toScheme B S hS).map h₀)) :
    IsRelativelyAmple B S hS f L ↔
      IsRelativelyAmple B S hS f' ((modulePullback B S hS pr).obj L)
Tag 0D36, a lemma

Tag 0D36 in the Stacks Project.

AlgebraicGeometry.Space.isRelativelyAmple_iff_forall_isAmpleOnBaseChange, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmpleBaseChangeCriteria.lean, line 108. The attribute's comment: “parts (1) and (2), which the source calls equivalent by definition and which the library's Tag 0D31 predicate makes so here too”.

Stacks 0D36, parts (1) and (2). A module is ample relative to f : X ⟶ Y precisely when every base change of f along a scheme of the site is represented by a scheme carrying a relatively ample pullback of the module.

The two conditions are the same after unfolding: relative representability of f is the existence of the cartesian squares, and the ampleness clause is imposed on the same squares by both sides.

theorem isRelativelyAmple_iff_forall_isAmpleOnBaseChange {X Y : AlgebraicSpaces B S hS}
    (f : X ⟶ Y) (L : Modules.{u, u} B S hS X.1 X.2) :
    IsRelativelyAmple B S hS f L ↔
      ∀ (T : BigFppfOver B S hS) (g : yoneda.obj T ⟶ Y.1),
        IsAmpleOnBaseChange B S hS f L T g

AlgebraicGeometry.Space.isAmpleOnBaseChange_of_isRelativelyAmple, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmpleBaseChangeCriteria.lean, line 126. The attribute's comment: “part (1) implies part (2) at a single base change, hence part (1) implies part (3) by restriction to affine Z”.

Stacks 0D36, part (1) implies part (3). For a relatively ample module the base change of f along any scheme of the site is a scheme carrying a relatively ample pullback; part (3) of Stacks 0D36 is this restricted to the affine objects of the site.

theorem isAmpleOnBaseChange_of_isRelativelyAmple {X Y : AlgebraicSpaces B S hS} {f : X ⟶ Y}
    {L : Modules.{u, u} B S hS X.1 X.2} (h : IsRelativelyAmple B S hS f L)
    (T : BigFppfOver B S hS) (g : yoneda.obj T ⟶ Y.1) :
    IsAmpleOnBaseChange B S hS f L T g

AlgebraicGeometry.Space.exists_etaleChart_isAmpleOnBaseChange_of_isRelativelyAmple, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmpleBaseChangeCriteria.lean, line 138. The attribute's comment: “part (1) implies part (4): a surjective etale chart of the base over which the pullback is a scheme with ample pullback”.

Stacks 0D36, part (1) implies part (4). A module ample relative to f : X ⟶ Y admits a scheme V of the site and a surjective étale morphism yoneda.obj V ⟶ Y over which the base change of f is a scheme carrying a relatively ample pullback of the module: any atlas of Y (Stacks 025Y) will do.

theorem exists_etaleChart_isAmpleOnBaseChange_of_isRelativelyAmple
    {X Y : AlgebraicSpaces B S hS} {f : X ⟶ Y} {L : Modules.{u, u} B S hS X.1 X.2}
    (h : IsRelativelyAmple B S hS f L) :
    ∃ (V : BigFppfOver B S hS) (g : yoneda.obj V ⟶ Y.1),
      (MorphismProperty.presheaf (MorphismProperty.inverseImage
        (@Surjective.{u} : MorphismProperty Scheme.{u})
        (BigFppfOver.toScheme B S hS))) g ∧
      (MorphismProperty.presheaf (MorphismProperty.inverseImage
        (@Etale.{u} : MorphismProperty Scheme.{u})
        (BigFppfOver.toScheme B S hS))) g ∧
      IsAmpleOnBaseChange B S hS f L V g

AlgebraicGeometry.Space.relativelyRepresentable_of_forall_affine_isAmpleOnBaseChange, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmpleBaseChangeCriteria.lean, line 162. The attribute's comment: “part (3) implies the REPRESENTABILITY clause of part (2) — every base change to a scheme is a scheme — unconditionally. The ampleness clause of that implication is not proved here; see isRelativelyAmple_tfae_of_isInvertible”.

Stacks 0D36, the schematic half of part (3) implies part (2). If the base change of f : X ⟶ Y along every affine object of the site is a scheme, then the base change of f along every object of the site is a scheme.

Relative representability may be tested on the affine objects of the site, by AlgebraicGeometry.Space.presheaf_of_affineBaseChange for the property ⊤ of morphisms of schemes; this is the half of the implication that the source takes from Stacks 03JH.

theorem relativelyRepresentable_of_forall_affine_isAmpleOnBaseChange
    {X Y : AlgebraicSpaces B S hS} (f : X ⟶ Y) (L : Modules.{u, u} B S hS X.1 X.2)
    (h : ∀ (T : BigFppfOver B S hS), IsAffine ((BigFppfOver.toScheme B S hS).obj T) →
      ∀ g : yoneda.obj T ⟶ Y.1, IsAmpleOnBaseChange B S hS f L T g) :
    yoneda.relativelyRepresentable f.hom

AlgebraicGeometry.Space.isRelativelyAmple_tfae_of_isInvertible, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmpleBaseChangeCriteriaComplete.lean, line 472.

Stacks 0D36. Let f : X ⟶ Y be a morphism of algebraic spaces over S and L an invertible 𝒪_X-module. The following are equivalent:

  1. L is ample on X/Y;
  2. for every scheme T of the site and every morphism T ⟶ Y the algebraic space X_T = T ×_Y X is a scheme and the pullback L_T is ample on X_T/T;
  3. for every affine scheme T of the site and every morphism T ⟶ Y the algebraic space X_T is a scheme and L_T is ample on X_T/T;
  4. there are a scheme V of the site and a surjective étale morphism V ⟶ Y such that X_V is a scheme and L_V is ample on X_V/V.

Clause (2) at T ⟶ Y is AlgebraicGeometry.Space.IsAmpleOnBaseChange; see StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmpleBaseChangeCriteria.lean for that spelling. Clause (3) implies clause (2) is AlgebraicGeometry.Space.isAmpleOnBaseChange_of_forall_affine (Stacks 03JH and 01VJ), and clause (4) implies clause (3) is AlgebraicGeometry.Space.isAmpleOnBaseChange_of_exists_etaleChart (Stacks 0D35).

theorem isRelativelyAmple_tfae_of_isInvertible {X Y : AlgebraicSpaces B S hS} (f : X ⟶ Y)
    (L : Modules.{u, u} B S hS X.1 X.2)
    (hLinv : Stacks.SheafOfModules.IsInvertible (structurePresheaf B S hS X.1)
      ((Stacks.SheafOfModules.Tensor.ringSheaf
        (smallEtaleRingedSite B S hS X.1 X.2).O)).property L) :
    List.TFAE
      [IsRelativelyAmple B S hS f L,
        ∀ (T : BigFppfOver B S hS) (g : yoneda.obj T ⟶ Y.1),
          IsAmpleOnBaseChange B S hS f L T g,
        ∀ (T : BigFppfOver B S hS), IsAffine ((BigFppfOver.toScheme B S hS).obj T) →
          ∀ g : yoneda.obj T ⟶ Y.1, IsAmpleOnBaseChange B S hS f L T g,
        ∃ (V : BigFppfOver B S hS) (g : yoneda.obj V ⟶ Y.1),
          (MorphismProperty.presheaf (MorphismProperty.inverseImage
            (@Surjective.{u} : MorphismProperty Scheme.{u})
            (BigFppfOver.toScheme B S hS))) g ∧
          (MorphismProperty.presheaf (MorphismProperty.inverseImage
            (@Etale.{u} : MorphismProperty Scheme.{u})
            (BigFppfOver.toScheme B S hS))) g ∧
          IsAmpleOnBaseChange B S hS f L V g]
Tag 0GUQ, a lemma

Tag 0GUQ in the Stacks Project.

AlgebraicGeometry.Space.isQuasiAffineHom_iff_isRelativelyAmple_unit, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeAmple.lean, line 311. References: EGA II (5.1.6), “more general”.

Stacks 0GUQ. A morphism f : X ⟶ Y of algebraic spaces is quasi-affine if and only if the structure sheaf 𝒪_X is f-relatively ample.

Quasi-affineness of Stacks 03WL is identified with its representable form by AlgebraicGeometry.Space.isQuasiAffineHom_tfae_of_isAlgebraicSpace, and that form quantifies over exactly the cartesian squares relative ampleness does; on each of them the equivalence is the scheme-level Stacks 0891 in the shape Stacks.AmplePullback.isRelativelyAmple_iff_isQuasiAffineHom_of_iso_unitModule, applied through AlgebraicGeometry.Space.baseChangeUnitModuleIso.

theorem isQuasiAffineHom_iff_isRelativelyAmple_unit {X Y : AlgebraicSpaces B S hS} (f : X ⟶ Y) :
    IsQuasiAffineHom B S hS f.hom ↔
      IsRelativelyAmple B S hS f
        (SheafOfModules.unit
          ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X.1 X.2).O)))
Sources

Section71.15 Relative ampleness and cohomology#

Section 71.15 of the Stacks Project, Tag 0D37. 3 tags here are carried by 4 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.

Tag 0D38, a lemma

Tag 0D38 in the Stacks Project.

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

Stacks 0D38. Let R be a Noetherian ring — here an affine object V of the site with Γ(V, 𝒪_V) = R Noetherian — let X be an algebraic space over R whose structure morphism f : X ⟶ h_V is proper, and let 𝓛 be an invertible 𝒪_X-module. Then 𝓛 is ample on X/R (Stacks 0D31) if and only if for every coherent 𝒪_X-module 𝓕 there is an n₀ ≥ 0 with H ᵖ(X, 𝓕 ⊗ 𝓛^{⊗ n}) = 0 for all n ≥ n₀ and all p > 0.

theorem isRelativelyAmple_iff_forall_isCoherent_exists_isZero_rightDerived
    (V : BigFppfOver B S hS) [IsAffine ((BigFppfOver.toScheme B S hS).obj V)]
    [IsNoetherianRing Γ((BigFppfOver.toScheme B S hS).obj V, ⊤)]
    {X : AlgebraicSpaces B S hS} (f : X ⟶ schemeSpace V) (hf : IsProper B S hS f.hom)
    (L : Modules.{u, u} B S hS X.1 X.2)
    [hL : Stacks.SheafOfModules.IsInvertible (structurePresheaf B S hS X.1)
      (Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X.1 X.2).O).property L] :
    have := enoughInjectives_modules B S hS X.1 X.2
    IsRelativelyAmple B S hS f L ↔
      ∀ F : Modules.{u, u} B S hS X.1 X.2, IsCoherent B S hS X.1 X.2 F →
        ∃ n₀ : ℕ, ∀ n : ℕ, n₀ ≤ n → ∀ p : ℕ, 0 < p →
          IsZero (((globalSectionsFunctor.{u + 1, u, u, u}
            (Stacks.SheafOfModules.Tensor.ringSheaf
              (smallEtaleRingedSite B S hS X.1 X.2).O)).rightDerived p).obj
              (twistStep B S hS X.1 X.2 L n F))
Tag 0D39, a lemma

Tag 0D39 in the Stacks Project.

AlgebraicGeometry.Space.exists_ampleSchemeFibreTwistConclusion_tensorPow, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/AmpleSchemeFibreTwistAndNeighbourhood.lean, line 61.

Stacks 0D39. Let Y be a Noetherian scheme of the site, f : X ⟶ h_Y a proper morphism from an algebraic space, ℒ an invertible and ℱ a coherent 𝒪_X-module, and y ∈ Y a point such that the fibre X_y is a scheme (the cartesian square hsq of f along Spec κ(y) ⟶ Y) on which the restriction of ℒ is ample. Then there is a d₀ such that for every d ≥ d₀, R^p f_*(ℱ ⊗ ℒ^{⊗ d})_y = 0 for p > 0 and every section of ℱ ⊗ ℒ^{⊗ d} over X_y comes from f_*(ℱ ⊗ ℒ^{⊗ d})_y (AlgebraicGeometry.Space.AmpleSchemeFibreTwistConclusion).

theorem exists_ampleSchemeFibreTwistConclusion_tensorPow (Y : BigFppfOver B S hS)
    [_root_.AlgebraicGeometry.IsNoetherian ((BigFppfOver.toScheme B S hS).obj Y)]
    {X : AlgebraicSpaces B S hS} (f : X ⟶ representedAlgebraicSpace B S hS Y)
    (hf : IsProper B S hS f.hom) (L : Modules.{u, u} B S hS X.1 X.2)
    [Stacks.SheafOfModules.IsInvertible (structureSheaf B S hS X.1 X.2).obj
      (structureRingPresheaf_isSheaf B S hS X.1 X.2) L]
    (F : Modules.{u, u} B S hS X.1 X.2) (hF : IsCoherent B S hS X.1 X.2 F)
    (y : (BigFppfOver.toScheme B S hS).obj Y) (U : BigFppfOver B S hS) (p : yoneda.obj U ⟶ X.1)
    (q : U ⟶ residuePointObject Y y)
    (hsq : IsPullback p (yoneda.map q) f.hom (yoneda.map (residuePointHom Y y)))
    (hL : ∃ hL : Stacks.Ample.IsInvertibleModule ((BigFppfOver.toScheme B S hS).obj U)
      (baseChangeModule B S hS L U p), @Stacks.Ample.IsAmple _ _ hL) :
    ∃ d₀ : ℕ, ∀ d : ℕ, d₀ ≤ d →
      AmpleSchemeFibreTwistConclusion f y U p (F ⊗ tensorPow B S hS L d)
Tag 0D3A, a lemma

Tag 0D3A in the Stacks Project.

AlgebraicGeometry.Space.exists_mem_isRelativelyAmple_openSub_of_isAmple_baseChangeModule, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/AmpleSchemeFibreTwistAndNeighbourhood.lean, line 85.

Stacks 0D3A. Let Y be a Noetherian scheme of the site, f : X ⟶ h_Y a proper morphism from an algebraic space, ℒ an invertible 𝒪_X-module, and y ∈ Y a point such that the fibre X_y is a scheme (the cartesian square hsq of f along Spec κ(y) ⟶ Y) on which the restriction of ℒ is ample. Then there is an open neighbourhood V of y such that the pullback of ℒ to f⁻¹(V) is ample on f⁻¹(V)/V (Stacks 0D31), for every base change of f along V ⟶ Y.

theorem exists_mem_isRelativelyAmple_openSub_of_isAmple_baseChangeModule
    {Y : BigFppfOver B S hS}
    [_root_.AlgebraicGeometry.IsNoetherian ((BigFppfOver.toScheme B S hS).obj Y)]
    {X : AlgebraicSpaces B S hS} (f : X ⟶ representedAlgebraicSpace B S hS Y)
    (hf : IsProper B S hS f.hom) (L : Modules.{u, u} B S hS X.1 X.2)
    [Stacks.SheafOfModules.IsInvertible (structureSheaf B S hS X.1 X.2).obj
      (structureRingPresheaf_isSheaf B S hS X.1 X.2) L]
    (y : (BigFppfOver.toScheme B S hS).obj Y) (U : BigFppfOver B S hS) (p : yoneda.obj U ⟶ X.1)
    (q : U ⟶ residuePointObject Y y)
    (hsq : IsPullback p (yoneda.map q) f.hom (yoneda.map (residuePointHom Y y)))
    (hamp : ∃ hL : Stacks.Ample.IsInvertibleModule ((BigFppfOver.toScheme B S hS).obj U)
      (baseChangeModule B S hS L U p), @Stacks.Ample.IsAmple _ _ hL) :
    ∃ V : ((BigFppfOver.toScheme B S hS).obj Y).Opens, y ∈ V ∧
      ∀ ⦃X₁ : AlgebraicSpaces B S hS⦄ (p₁ : X₁ ⟶ X)
        (f₁ : X₁ ⟶ representedAlgebraicSpace B S hS (openSub Y V)),
        IsPullback p₁ f₁ f (ObjectProperty.homMk (yoneda.map (openSubHom Y V))) →
        IsRelativelyAmple B S hS f₁ ((modulePullback B S hS p₁).obj L)

AlgebraicGeometry.Space.exists_mem_isRelativelyAmple_openSub_of_forall_isRelativelyAmple_residueField, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/AmpleSchemeFibreTwistAndNeighbourhood.lean, line 113.

Stacks 0D3A, the fibre read through Stacks 0D31. Let Y be a Noetherian scheme of the site, f : X ⟶ h_Y a proper morphism from an algebraic space, ℒ an invertible 𝒪_X-module, and y ∈ Y a point such that the pullback of ℒ is ample on every base change of f along Spec κ(y) ⟶ Y (so X_y is a scheme on which ℒ_y is ample). Then there is an open neighbourhood V of y such that the pullback of ℒ is ample on every base change of f along V ⟶ Y.

theorem exists_mem_isRelativelyAmple_openSub_of_forall_isRelativelyAmple_residueField
    {Y : BigFppfOver B S hS}
    [_root_.AlgebraicGeometry.IsNoetherian ((BigFppfOver.toScheme B S hS).obj Y)]
    {X : AlgebraicSpaces B S hS} (f : X ⟶ representedAlgebraicSpace B S hS Y)
    (hf : IsProper B S hS f.hom) (L : Modules.{u, u} B S hS X.1 X.2)
    (hL : Stacks.SheafOfModules.IsInvertible (structurePresheaf B S hS X.1)
      ((Stacks.SheafOfModules.Tensor.ringSheaf (smallEtaleRingedSite B S hS X.1 X.2).O)).property
        L)
    (y : (BigFppfOver.toScheme B S hS).obj Y)
    (hy : ∀ ⦃X₀ : AlgebraicSpaces B S hS⦄ (p₀ : X₀ ⟶ X)
      (f₀ : X₀ ⟶ representedAlgebraicSpace B S hS
        (residueFieldObject B S hS Y y (B.residueField_spec_contains Y.left.property y))),
      IsPullback p₀ f₀ f (ObjectProperty.homMk (yoneda.map
        (residueFieldMap B S hS Y y (B.residueField_spec_contains Y.left.property y)))) →
      IsRelativelyAmple B S hS f₀ ((modulePullback B S hS p₀).obj L)) :
    ∃ V : ((BigFppfOver.toScheme B S hS).obj Y).Opens, y ∈ V ∧
      ∀ ⦃X₁ : AlgebraicSpaces B S hS⦄ (p₁ : X₁ ⟶ X)
        (f₁ : X₁ ⟶ representedAlgebraicSpace B S hS (openSub Y V)),
        IsPullback p₁ f₁ f (ObjectProperty.homMk (yoneda.map (openSubHom Y V))) →
        IsRelativelyAmple B S hS f₁ ((modulePullback B S hS p₁).obj L)
Sources

Section71.16 Closed subspaces of relative proj#

Section 71.16 of the Stacks Project, Tag 085K. 4 tags here are carried by 14 declarations of the repository (all in StacksFrontier), quoted below from AxiomMath/Stacks at commit 5ed82d14.

Tag 085L, a lemma

Tag 085L in the Stacks Project.

AlgebraicGeometry.Space.closedSubspaceSectionMap, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjClosedSubspaceIdeal.lean, line 249. The attribute's comment: “the canonical map 𝒜 ⟶ ⨁ π_((i_𝒪_Z)(d)), degreewise, built from the carried twists 𝒪_P(d) and homogeneous section maps of Tag 01NR”.

The canonical map 𝒜_d ⟶ π_*((i_*𝒪_Z)(d)) of Stacks 085L, in degree d: the homogeneous section map 𝒜_d ⟶ π_*(𝒪_P(d)) of Stacks 01MP followed by the direct image of the twist 𝒪_P(d) ⟶ (i_*𝒪_Z)(d) of the structure map of the closed subspace.

The source states the map into the direct sum over d ≥ 0; it is graded, and this is its degree-d component. Only the twists are carried: the composite itself is the one the source names.

def closedSubspaceSectionMap (T : ClosedSubspaceTwistSections s P π) (i : Z ⟶ P) (d : ℕ) :
    s.algebra.piece (d : ℤ) ⟶ twistedStructureDirectImage T i d

AlgebraicGeometry.Space.closedSubspaceGradedIdeal, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjClosedSubspaceIdeal.lean, line 260. The attribute's comment: “the graded ideal ℐ ⊆ 𝒜, degreewise, as the kernel of that canonical map”.

The graded ideal ℐ ⊆ 𝒜 of Stacks 085L, in degree d: the sectionwise kernel of the canonical map, as a submodule of the degree-d piece of 𝒜.

This is the kernel of the map the source writes down, not a choice of ideal with the right properties; the only carried ingredient is the twists.

def closedSubspaceGradedIdeal (T : ClosedSubspaceTwistSections s P π) (i : Z ⟶ P) (d : ℕ) :
    (s.algebra.piece (d : ℤ)).Submodule

AlgebraicGeometry.Space.isQuasicoherentOnSite_closedSubspaceGradedIdealObj, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjClosedSubspaceIdeal.lean, line 308. The attribute's comment: “ℐ is a quasi-coherent 𝒪_X-module, degreewise; granted only Tag 03M9 for π as quasi-coherence of the direct images π_((i_𝒪_Z)(d)), the kernel clause of Tag 03M1(3) being discharged from the closure lemma, and built from the carried twists of Tag 01NR”.

Stacks 085L, the quasi-coherence of ℐ. The degree-d piece of the graded ideal cut out by a closed subspace of the relative Proj is a quasi-coherent 𝒪_X-module.

There is exactly one carried input, and it is one the source cites. hpush is Stacks 03M9 for π, in the form in which the source uses it: the direct image along π of the quasi-coherent module (i_*𝒪_Z)(d) is quasi-coherent — this is where quasi-compactness of π and its separatedness (Stacks 084E) enter. It is carried because the library's Stacks 03M9, AlgebraicGeometry.Space.pushforward_isQuasicoherentOnSite_of_chartwiseKernel, is itself conditional on the exact sequence of Stacks 03M8.

The kernel clause of Stacks 03M1(3) is not carried: it is discharged from AlgebraicGeometry.Space.isClosedUnderKernels_quasicoherentSheaves_smallEtale, whose own Stacks 03DX(2) input is already proved for the small étale site. The letI ascribes it at this module's spelling of the structure ring sheaf, which instance resolution does not identify with the RingedSite.ringSheaf spelling of that lemma on its own. Quasi-coherence of 𝒜_d is a field of the relative Proj situation of Stacks 0849.

theorem isQuasicoherentOnSite_closedSubspaceGradedIdealObj
    (T : ClosedSubspaceTwistSections s P π) (i : Z ⟶ P)
    (hpush : ∀ d : ℕ, (twistedStructureDirectImage T i d).IsQuasicoherentOnSite) (d : ℕ) :
    (closedSubspaceGradedIdealObj T i d).IsQuasicoherentOnSite

AlgebraicGeometry.Space.C1359Bridge.exists_iso_quotientProjHom_psiKernelGradedIdeal, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjClosedSubspaceKernelProj.lean, line 55. The attribute's comment: “Z ≅ Proj_X(𝒜/ℐ) over P for π quasi-compact, ℐ the kernel of 𝒜 ⟶ ⨁_{d ≥ 0} π_((i_𝒪_Z)(d))”.

Stacks 085L. Let π : P = Proj_X(𝒜) ⟶ X be the relative Proj of a quasi-coherent graded 𝒪_X-algebra on an algebraic space X (twists 𝒪_P(d) and ψ built from a presentation of X), and i : Z ⟶ P a closed subspace. Let ℐ ⊆ 𝒜 be the kernel of the canonical map 𝒜 ⟶ ⨁_{d ≥ 0} π_*((i_*𝒪_Z)(d)): in degree d ≥ 0 the sections killed by the adjoint 𝒜_d ⟶ π_*𝒪_P(d) of ψ_d followed by π_* of 𝒪_P(d) ⟶ i_*i^*𝒪_P(d) = (i_*𝒪_Z)(d), and ℐ_n = 𝒜_n = 0 for n < 0. If π is quasi-compact, ℐ is a quasi-coherent graded ideal and there is an isomorphism Z ≅ Proj_X(𝒜/ℐ) over P.

theorem exists_iso_quotientProjHom_psiKernelGradedIdeal
    (hi : IsClosedImmersion s.site s.base s.containsBase i.hom)
    (hπ : IsQuasiCompact s.site s.base s.containsBase s.π.hom) :
    (∀ (d : ℕ) (V : (SmallEtale s.site s.base s.containsBase s.space.1)ᵒᵖ)
        (x : (s.algebra.piece (d : ℤ)).val.obj V),
        x ∈ ((psiKernelGradedIdeal s Px i hi hπ).piece (d : ℤ)).obj V ↔
          (psiKernelMap s Px i d (s.psiTwistHom Px d)).val.app V x = 0) ∧
      ∃ e : Z ≅ (psiKernelGradedIdeal s Px i hi hπ).quotientSituation.Proj,
        e.hom ≫ (psiKernelGradedIdeal s Px i hi hπ).quotientProjHom = i
Tag 085M, a lemma

Tag 085M in the Stacks Project.

AlgebraicGeometry.Space.exists_finiteType_chartDegreeSubmodule, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjChartSituation.lean, line 416. The attribute's comment: “the chart half: over an affine étale chart V of X there are d > 0 and a quasi-coherent finite type submodule ℱ of the module restriction (𝒜_d)|_V cutting out a closed subscheme of finite presentation of Proj_V(𝒜|_V), with no hypothesis beyond the tag's own, exactly as the scheme case Tag 0802. The globalization of ℱ to a submodule of 𝒜_d on X — the colimit clause of Tag 0829, still resting on Tag 07V9 — and the descent of the presentation to X are NOT claimed, so the existence assertion of Tag 085M on X is not delivered here”.

Stacks 085M on an affine étale chart.

Let 𝒜 be the quasi-coherent graded 𝒪_X-algebra of a relative Proj situation on an algebraic space X, let V be an étale chart of X with affine underlying scheme, and let 𝒜|_V be the restriction of Stacks 01NN carried by AlgebraicGeometry.Space.relativeProjChartSheafAlgebra. For a closed subscheme i : Z ⟶ Proj_V(𝒜|_V) of finite presentation with Proj_V(𝒜|_V) ⟶ V quasi-compact there are a degree d > 0 and a quasi-coherent finite type submodule ℱ ⊆ (𝒜_d)|_V of the module restriction of 𝒜_d with Z = Proj_V((𝒜|_V)/ℱ(𝒜|_V)).

This is the step of the source's proof reading "by the case of schemes, Divisors 0802, applied over U". Compactness and quasi-separatedness of the base, which Stacks 0802 asks for, are discharged from affineness of the chart; the graded algebra is not an input but the restriction of 𝒜, by AlgebraicGeometry.Space.relativeProjChartSheafAlgebra_piece, which is what makes the submodule a submodule of (𝒜_d)|_V.

Neither the globalization of ℱ to a submodule of 𝒜_d on X nor the descent of the presentation to X is claimed; see What is not proved in the module documentation.

theorem exists_finiteType_chartDegreeSubmodule
    (hV : _root_.AlgebraicGeometry.IsAffine (chartScheme V)) {Z : Scheme.{u}}
    (i : Z ⟶ (relativeProj (relativeProjChartSheafAlgebra s V hqc)).scheme)
    [_root_.AlgebraicGeometry.IsClosedImmersion i]
    [_root_.AlgebraicGeometry.QuasiCompact
      (relativeProj (relativeProjChartSheafAlgebra s V hqc)).toBase]
    (hi : _root_.AlgebraicGeometry.FinitePresentation i) :
    ∃ d : ℕ, 0 < d ∧
      ∃ ℱ : (restrictToChartScheme s.site s.base s.containsBase s.space.1 s.space.2
          (s.algebra.piece (d : ℤ)) V).Submodule,
        ℱ.toSheafOfModules.IsQuasicoherent ∧
          SheafOfModules.IsFiniteType.{u, u, u} ℱ.toSheafOfModules ∧
            Nonempty (DegreeQuotientPresentation
              (relativeProjChartSheafAlgebra s V hqc) i ℱ)

AlgebraicGeometry.Space.closedSubspaceDegreeProducts_le_ker, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjClosedSubspaceFiniteType.lean, line 221. The attribute's comment: “the containment Z ⊆ Proj_X(𝒜/ℱ𝒜) in graded-ideal form: the graded ideal ℱ𝒜 generated by ℱ ⊆ 𝒜_d is killed by every degreewise, bidegree-(d,e)-multiplicative map of graded algebras killing ℱ. The existence of d > 0 and of the finite type quasi-coherent ℱ is not claimed”.

Stacks 085M, the containment Z ⊆ Proj_X(𝒜/ℱ𝒜), in graded-ideal form.

Let ψ : 𝒜 ⟶ ℬ be a degreewise map of graded 𝒪_X-algebras which is multiplicative in the bidegree (d, e), and suppose every local section of ℱ ⊆ 𝒜_d is killed by ψ — that is, ℱ consists of equations for the closed subspace ℬ presents. Then every local section of the graded ideal ℱ𝒜 in degree d + e is killed by ψ as well, so ℱ𝒜 is contained in the graded ideal of that closed subspace.

This is the step of the source's proof reading "Z ⊆ Z' since ℱ𝒜 ⊆ ℐ". Its content is the passage from the objectwise products to the ideal they generate: the kernel of ψ has local membership, so a section of 𝒜_{d+e} that is only locally a sum of products a · b with a a section of ℱ is killed by ψ too.

Neither the degree d > 0 nor the finite type submodule ℱ of the source's conclusion is produced here; see What is not proved in the module documentation.

theorem closedSubspaceDegreeProducts_le_ker
    {ℬ : SheafOfModules.GradedAlgebra.{u, u, u, u + 1}
      (structureRingSheaf s.site s.base s.containsBase s.space)}
    (ψ : ∀ n : ℤ, s.algebra.piece n ⟶ ℬ.piece n)
    (hmul : ∀ (U : (SmallEtale s.site s.base s.containsBase s.space.1)ᵒᵖ)
      (a : (s.algebra.piece d).val.obj U) (b : (s.algebra.piece e).val.obj U),
      (ψ (d + e)).val.app U ((s.algebra.mul d e).app U a b) =
        (ℬ.mul d e).app U ((ψ d).val.app U a) ((ψ e).val.app U b))
    {ℱ : (s.algebra.piece d).Submodule}
    (hℱ : ℱ ≤ Stacks.SheafOfModules.kerSubmodule (ψ d)) :
    closedSubspaceDegreeProducts s d e ℱ ≤
      Stacks.SheafOfModules.kerSubmodule (ψ (d + e))

AlgebraicGeometry.Space.RelativeProjSituation.exists_finiteType_iso_quotientProjHom, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjClosedSubspaceFiniteTypeIdealOfZ.lean, line 50.

Let X be a quasi-compact and quasi-separated algebraic space, 𝒜 a quasi-coherent graded 𝒪_X-algebra whose relative Proj π : Proj_X(𝒜) ⟶ X is quasi-compact, and i : Z ⟶ Proj_X(𝒜) a closed immersion locally of finite presentation. Then there are d > 0 and a quasi-coherent 𝒪_X-submodule ℱ ⊆ 𝒜_d of finite type such that Z = Proj_X(𝒜/ℱ𝒜) as closed subspaces of Proj_X(𝒜).

theorem exists_finiteType_iso_quotientProjHom (s : RelativeProjSituation.{u, u})
    (hXqc : IsQuasiCompactSpace s.site s.base s.containsBase s.space.1)
    (hXqs : IsAbsolutelyQuasiSeparated s.site s.base s.containsBase
      (BigFppfSite.contains_terminal s.site) s.space.1)
    (hπ : IsQuasiCompact s.site s.base s.containsBase s.π.hom)
    {Z : AlgebraicSpaces s.site s.base s.containsBase} (i : Z ⟶ s.Proj)
    (hi : IsClosedImmersion s.site s.base s.containsBase i.hom)
    (hfp : IsLocallyOfFinitePresentation s.site s.base s.containsBase i.hom) :
    ∃ d : ℕ, 0 < d ∧ ∃ (F : (s.algebra.piece (d : ℤ)).Submodule)
      (hF : F.toSheafOfModules.IsQuasicoherentOnSite), F.toSheafOfModules.IsFiniteType ∧
        ∃ e : Z ≅ (GradedIdeal.ofDegree s F hF).quotientSituation.Proj,
          e.hom ≫ (GradedIdeal.ofDegree s F hF).quotientProjHom = i
Tag 085N, a lemma

Tag 085N in the Stacks Project.

AlgebraicGeometry.Space.RelativeProjSituation.exists_finiteType_degreeSubmodule_range_eq_quotientProj, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjClosedSubspaceQuotientPresentation.lean, line 235. The attribute's comment: “the relative Proj P = Proj_X(𝒜) of Stacks 084A-084B; clause (a) is the equality of the ranges of i : Z ⟶ P and of the closed immersion Proj_X(𝒜/ℱ𝒜) ⟶ P, clause (b) the disjointness from U of the support of 𝒜_d/ℱ; the closed subspace written i : Z → X in the source is i : Z ⟶ P, which condition (3) and clause (a) require”.

Stacks 085N. Let X be a quasi-compact and quasi-separated algebraic space over S, 𝒜 a quasi-coherent graded 𝒪_X-algebra and π : P = Proj_X(𝒜) ⟶ X its relative Proj (Stacks 084A–084B). Let i : Z ⟶ P be a closed subspace and U ⊆ |X| open. Assume (1) π quasi-compact, (2) i of finite presentation, (3) |U| ∩ |π|(|i|(|Z|)) = ∅, (4) U quasi-compact and (5) every 𝒜_n of finite type. Then there are d > 0 and a quasi-coherent 𝒪_X-submodule of finite type ℱ ⊆ 𝒜_d with (a) Z = Proj_X(𝒜/ℱ𝒜) and (b) the support of 𝒜_d/ℱ disjoint from U.

Clause (a) says that Z and the closed subspace Proj_X(𝒜/ℱ𝒜) ⟶ P (AlgebraicGeometry.Space.RelativeProjSituation.quotientProjHom of the graded ideal ℱ𝒜, AlgebraicGeometry.Space.RelativeProjSituation.degreeIdeal) have the same range in P; clause (b) is disjointness from U of the support (Stacks 04KA) of the cokernel of ℱ ⊆ 𝒜_d. "X quasi-separated" is AlgebraicGeometry.Space.IsAbsolutelyQuasiSeparated (Stacks 03BS). The source writes the closed subspace as i : Z → X; its hypothesis (3) and conclusion (a) place Z in P, and it is formalized as i : Z ⟶ P.

theorem exists_finiteType_degreeSubmodule_range_eq_quotientProj
    (hX : IsQuasiCompactSpace s.site s.base s.containsBase s.space.1)
    (hXqs : IsAbsolutelyQuasiSeparated s.site s.base s.containsBase s.site.contains_terminal
      s.space.1)
    {Z : AlgebraicSpaces s.site s.base s.containsBase} (i : Z.1 ⟶ s.relativeProjFunctor)
    (hi : IsClosedImmersion s.site s.base s.containsBase i)
    (hπ : IsQuasiCompact s.site s.base s.containsBase s.relativeProjπ)
    (hfp : IsFinitePresentation s.site s.base s.containsBase i)
    {U : Set (points s.site s.base s.containsBase s.space.1)}
    (hZU : Disjoint U (Set.range fun z ↦
      pointsMap s.site s.base s.containsBase s.relativeProjFunctor s.relativeProjπ
        (pointsMap s.site s.base s.containsBase Z.1 i z)))
    (hU : IsOpen U) (hUc : IsCompact U)
    (hA : ∀ n : ℤ, SheafOfModules.IsFiniteType (s.algebra.piece n)) :
    ∃ (d : ℕ) (_ : 0 < d) (ℱ : (s.algebra.piece (d : ℤ)).Submodule)
      (hℱ : ℱ.toSheafOfModules.IsQuasicoherentOnSite),
      SheafOfModules.IsFiniteType ℱ.toSheafOfModules ∧
        Subfunctor.range i = Subfunctor.range (s.quotientProjHom (s.degreeIdeal ℱ)
          (s.isQuasicoherentOnSite_degreeIdeal_piece ℱ hℱ)) ∧
        Disjoint (supportOfSheaf s.site s.base s.containsBase s.space.1
          ((SheafOfModules.toSheaf (structureRingSheaf s.site s.base s.containsBase
            s.space)).obj (cokernel ℱ.ι))) U

AlgebraicGeometry.Space.exists_finiteType_degreeSubmodule_disjoint_support, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/RelativeProjClosedSubspaceSupport.lean, line 223. The attribute's comment: “the relative Proj P = Proj_X(𝒜) of Stacks 084A-084B; clause (a) as the data ClosedSubspaceDegreeQuotientPresentation (Z identified over P with Proj_X(𝒜/ℱ𝒜) and its closed immersion into P), clause (b) the disjointness from U of the support of 𝒜_d/ℱ; the closed subspace written i : Z → X in the source is i : Z ⟶ P, which condition (3) and clause (a) require”.

Stacks 085N. Let S be a scheme, X a quasi-compact and quasi-separated algebraic space over S and 𝒜 a quasi-coherent graded 𝒪_X-algebra; let π : P = Proj_X(𝒜) ⟶ X be the relative Proj (…RelativeProjSituation.relativeProjFunctor), let i : Z ⟶ P be a closed subspace and let U be an open of |X|. Assume (1) π quasi-compact, (2) i of finite presentation, (3) |U| ∩ |π|(|i|(|Z|)) = ∅, (4) U quasi-compact and (5) every 𝒜_n of finite type. Then there are a degree d > 0 and a quasi-coherent finite type 𝒪_X-submodule ℱ ⊆ 𝒜_d with (a) Z = Proj_X(𝒜/ℱ𝒜) and (b) the support of 𝒜_d/ℱ disjoint from U.

Clause (a) is the structure AlgebraicGeometry.Space.ClosedSubspaceDegreeQuotientPresentation, the form in which Stacks 085M records the same assertion; clause (b) is disjointness from U of the support of Stacks 04KA of the cokernel of ℱ ⊆ 𝒜_d. This is …RelativeProjSituation.exists_finiteType_degreeSubmodule_range_eq_quotientProj, whose clause (a) is the equality of the ranges of i and of Proj_X(𝒜/ℱ𝒜) ⟶ P, read through …RelativeProjSituation.nonempty_closedSubspaceDegreeQuotientPresentation_of_range_eq.

theorem exists_finiteType_degreeSubmodule_disjoint_support
    (hX : IsQuasiCompactSpace s.site s.base s.containsBase s.space.1)
    (hXqs : IsAbsolutelyQuasiSeparated s.site s.base s.containsBase s.site.contains_terminal
      s.space.1)
    {Z : AlgebraicSpaces s.site s.base s.containsBase}
    (i : Z ⟶ (⟨s.relativeProjFunctor, s.isAlgebraicSpace_relativeProjFunctor⟩ :
      AlgebraicSpaces s.site s.base s.containsBase))
    (hi : IsClosedImmersion s.site s.base s.containsBase i.hom)
    (hπ : IsQuasiCompact s.site s.base s.containsBase s.relativeProjπ)
    (hfp : IsFinitePresentation s.site s.base s.containsBase i.hom)
    {U : Set (points s.site s.base s.containsBase s.space.1)}
    (hZU : Disjoint U (Set.range fun z ↦
      pointsMap s.site s.base s.containsBase s.relativeProjFunctor s.relativeProjπ
        (pointsMap s.site s.base s.containsBase Z.1 i.hom z)))
    (hU : IsOpen U) (hUc : IsCompact U)
    (hA : ∀ n : ℤ, SheafOfModules.IsFiniteType (s.algebra.piece n)) :
    ∃ (d : ℕ) (hd : 0 < d) (ℱ : (s.algebra.piece (d : ℤ)).Submodule),
      ℱ.toSheafOfModules.IsQuasicoherentOnSite ∧
        SheafOfModules.IsFiniteType ℱ.toSheafOfModules ∧
          Nonempty (ClosedSubspaceDegreeQuotientPresentation i hd ℱ) ∧
            Disjoint (supportOfSheaf s.site s.base s.containsBase s.space.1
              ((SheafOfModules.toSheaf (structureRingSheaf s.site s.base s.containsBase
                s.space)).obj (cokernel ℱ.ι))) U
Tag 0B4I, a lemma

Tag 0B4I in the Stacks Project.

AlgebraicGeometry.Space.projectiveBundleSectionsEquiv, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/ProjectiveBundle/SectionsClassification.lean, line 70. The attribute's comment: “the bijection between sections of P(E) -> X and invertible quotients of E”.

The bijection of Stacks 0B4I between the sections of π : 𝐏(ℰ) ⟶ X and the isomorphism classes of invertible quotients of ℰ, characterized in projectiveBundle_sections_invertibleQuotients.

def projectiveBundleSectionsEquiv :
    {σ : X ⟶ relativeProjSymmetricAlgebra X E hE hb // σ ≫ projectiveBundleπ X E hE hb = 𝟙 X} ≃
      InvertibleQuotientClass X E

AlgebraicGeometry.Space.projectiveBundle_sections_invertibleQuotients, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/ProjectiveBundle/SectionsClassification.lean, line 123. The attribute's comment: “the bijection between sections of P(E) -> X and invertible quotients of E, its characterization at scheme points, sections are closed immersions, and compatibility with base change”.

Stacks 0B4I: sections of 𝐏(ℰ) ⟶ X, invertible quotients of ℰ, and base change.

Let X be an algebraic space and ℰ a quasi-coherent 𝒪_X-module, with projective bundle π : 𝐏(ℰ) = Proj_X(Sym(ℰ)) ⟶ X (Stacks 084C).

  1. The bijection projectiveBundleSectionsEquiv between the sections σ of π and the isomorphism classes of surjections ℰ ⟶ ℒ onto invertible 𝒪_X-modules is the canonical one: it sends σ to c exactly when, at every scheme point x : T ⟶ X, the point x ≫ σ of 𝐏(ℰ) over x corresponds to the pullback of c to T under the identification of the points of 𝐏(ℰ) over x with the invertible quotients of x^*ℰ (pointsEquivInvertibleQuotientClass: Stacks 084B, the comparison of x^*Sym(ℰ) with Sym(x^*ℰ), and Stacks 0B3V on T).
  2. Every section of π is a closed immersion.
  3. Compatibility with base change: for g : X' ⟶ X, the square formed by projectiveBundleBaseChange : 𝐏(g^*ℰ) ⟶ 𝐏(ℰ), the two projections and g is cartesian, and a section σ' of 𝐏(g^*ℰ) ⟶ X' lying over a section σ of 𝐏(ℰ) ⟶ X corresponds to the pullback along g of the invertible quotient σ corresponds to.

The homogeneous sections of Sym(ℰ) (and of Sym(g^*ℰ)) are bounded by the cutoff of the site (SymmetricAlgebraBounded), the set-theoretic convention of Situation 0849 under which the relative Proj is an algebraic space over the chosen site.

theorem projectiveBundle_sections_invertibleQuotients :
    (∀ (σ : {σ : X ⟶ relativeProjSymmetricAlgebra X E hE hb //
          σ ≫ projectiveBundleπ X E hE hb = 𝟙 X})
        (c : InvertibleQuotientClass X E),
      projectiveBundleSectionsEquiv X E hE hb σ = c ↔
        ∀ (T : BigFppfOver B S hS) (x : yoneda.obj T ⟶ X.1),
          pointsEquivInvertibleQuotientClass X E hE hb T x ⟨x ≫ σ.1.hom,
            comp_section_comp (projectiveBundleπ X E hE hb).hom x
              (congrArg InducedCategory.Hom.hom σ.2)⟩ = pointRestrictClass X E T x c) ∧
    (∀ σ : X ⟶ relativeProjSymmetricAlgebra X E hE hb, σ ≫ projectiveBundleπ X E hE hb = 𝟙 X →
      IsClosedImmersion B S hS σ.hom) ∧
    (∀ (X' : AlgebraicSpaces B S hS) (g : X' ⟶ X)
        (hb' : SymmetricAlgebraBounded X' ((modulePullback B S hS g).obj E)),
      IsPullback (projectiveBundleBaseChange X E hE hb g hb').hom
          (projectiveBundleπ X' _ (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g)
            hb').hom
          (projectiveBundleπ X E hE hb).hom g.hom ∧
        ∀ (σ : {σ : X ⟶ relativeProjSymmetricAlgebra X E hE hb //
            σ ≫ projectiveBundleπ X E hE hb = 𝟙 X})
          (σ' : {σ' : X' ⟶ relativeProjSymmetricAlgebra X' ((modulePullback B S hS g).obj E)
              (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g) hb' //
            σ' ≫ projectiveBundleπ X' _ _ hb' = 𝟙 X'}),
          σ'.1 ≫ projectiveBundleBaseChange X E hE hb g hb' = g ≫ σ.1 →
            projectiveBundleSectionsEquiv X' _ _ hb' σ' =
              invertibleQuotientBaseChangeClass g (Iso.refl _)
                (projectiveBundleSectionsEquiv X E hE hb σ))

AlgebraicGeometry.Space.projectiveBundle_sectionConormalIso, a theorem in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/ProjectiveBundle/SectionsConormalClassification.lean, line 68. The attribute's comment: “the canonical isomorphism Ker(E -> L) tensor L^{-1} = conormal sheaf of sigma(X) in P(E), and its compatibility with base change”.

Stacks 0B4I, the conormal isomorphism and its base change. For a section σ of 𝐏(ℰ) ⟶ X corresponding to q : ℰ ⟶ ℒ there is a unique Ker(q) ⊗ ℒ^{⊗ -1} ≅ 𝒞_{σ(X)/𝐏(ℰ)} restricting on every étale chart to the chart isomorphism of Stacks 0B3V; along g : X' ⟶ X with σ' over σ, these isomorphisms for q and g^*q commute with the base-change maps.

theorem projectiveBundle_sectionConormalIso :
    (∀ (σ : X ⟶ relativeProjSymmetricAlgebra X E hE hb) (hσ : σ ≫ projectiveBundleπ X E hE hb = 𝟙 X)
        (Q : InvertibleQuotient X E)
        (hQ : projectiveBundleSectionsEquiv X E hE hb ⟨σ, hσ⟩ = Quotient.mk _ Q),
      ∃! φ : sectionConormalSource X E Q ≅ sectionConormalTarget X E hE hb σ hσ,
        ∀ U : SmallEtale B S hS X.1, (chartModuleRestriction B S hS X U).map φ.hom =
          (sectionConormalChartFamilyOf X E hE Q hb σ hσ
            (fun (T : BigFppfOver B S hS) (x : yoneda.obj T ⟶ X.1) =>
        haveI : IsInvertible (structureCommRings B S hS X) (structureRingSheaf B S hS X).property
            Q.L := Q.invertible.toAlgebraicGeometry
        (CategoryTheory.Functor.compBifunctorMap (𝒞 := ((BigFppfOver.toScheme B S hS).obj
            T).Modules) (iC := Scheme.Modules.instCategory)
        (Stacks.SheafOfModules.Tensor.sheafTensor ⟨((BigFppfOver.toScheme B S hS).obj T).presheaf,
          Presheaf.isSheaf_of_isSheaf_comp _ ((BigFppfOver.toScheme B S hS).obj T).presheaf
            (forget₂ CommRingCat RingCat) ((BigFppfOver.toScheme B S hS).obj T).ringCatSheaf.2⟩)
        ((zariskiReadingFunctor T).map (modulePullbackTensorIso B S hS (pointHom x) (kernel Q.q)
            (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B S hS X)
            (structureRingSheaf B S hS X).property Q.L (-1))).hom ≫ ((zariskiReadingTensorObjIso T
            ((modulePullback B S hS (pointHom x)).obj (kernel Q.q)) ((modulePullback B S hS
            (pointHom x)).obj (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B S
            hS X) (structureRingSheaf B S hS X).property Q.L (-1)))
            (isQuasicoherentOnSite_modulePullback_of_isQuasicoherentOnSite B S hS (pointHom x)
            (kernel Q.q) (isQuasicoherentOnSite_kernel_q X E hE Q))
            (isQuasicoherentOnSite_modulePullback_of_isQuasicoherentOnSite B S hS (pointHom x)
            (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B S hS X)
            (structureRingSheaf B S hS X).property Q.L (-1))
            (isQuasicoherentOnSite_invertibleTensorPower X Q.L (-1)))).hom ≫
            (monoidalTensorSheafTensorIso ((BigFppfOver.toScheme B S hS).obj T)
            ((zariskiReadingFunctor T).obj ((modulePullback B S hS (pointHom x)).obj (kernel Q.q)))
            ((zariskiReadingFunctor T).obj ((modulePullback B S hS (pointHom x)).obj
            (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B S hS X)
            (structureRingSheaf B S hS X).property Q.L (-1))))).hom))
        (kernelPointReadingHom X E hE Q T x) (inversePointReadingIso X T x Q.L).hom))
            (fun T x hx => isIso_conormalSourcePointReading_of_isEtale X E hE Q T x hx) hQ U).hom) ∧
    (∀ (X' : AlgebraicSpaces B S hS) (g : X' ⟶ X)
        (hb' : SymmetricAlgebraBounded X' ((modulePullback B S hS g).obj E))
        (σ : X ⟶ relativeProjSymmetricAlgebra X E hE hb) (hσ : σ ≫ projectiveBundleπ X E hE hb = 𝟙
            X)
        (σ' : X' ⟶ relativeProjSymmetricAlgebra X' ((modulePullback B S hS g).obj E)
          (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g) hb')
        (hσ' : σ' ≫ projectiveBundleπ X' ((modulePullback B S hS g).obj E)
          (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g) hb' = 𝟙 X')
        (comm : σ' ≫ (projectiveBundleBaseChange X E hE hb g hb') = g ≫ σ)
        (Q : InvertibleQuotient X E)
        (hQ : projectiveBundleSectionsEquiv X E hE hb ⟨σ, hσ⟩ = Quotient.mk _ Q)
        (φ : sectionConormalSource X E Q ≅ sectionConormalTarget X E hE hb σ hσ)
        (hφ : ∀ U : SmallEtale B S hS X.1, (chartModuleRestriction B S hS X U).map φ.hom =
            (sectionConormalChartFamilyOf X E hE Q hb σ hσ
            (fun (T : BigFppfOver B S hS) (x : yoneda.obj T ⟶ X.1) =>
          (haveI : IsInvertible (structureCommRings B S hS X) (structureRingSheaf B S hS X).property
              Q.L := Q.invertible.toAlgebraicGeometry
          (CategoryTheory.Functor.compBifunctorMap (𝒞 := ((BigFppfOver.toScheme B S hS).obj
              T).Modules) (iC := Scheme.Modules.instCategory)
          (Stacks.SheafOfModules.Tensor.sheafTensor ⟨((BigFppfOver.toScheme B S hS).obj T).presheaf,
            Presheaf.isSheaf_of_isSheaf_comp _ ((BigFppfOver.toScheme B S hS).obj T).presheaf
              (forget₂ CommRingCat RingCat) ((BigFppfOver.toScheme B S hS).obj T).ringCatSheaf.2⟩)
          ((zariskiReadingFunctor T).map (modulePullbackTensorIso B S hS (pointHom x) (kernel Q.q)
              (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B S hS X)
              (structureRingSheaf B S hS X).property Q.L (-1))).hom ≫ ((zariskiReadingTensorObjIso T
              ((modulePullback B S hS (pointHom x)).obj (kernel Q.q)) ((modulePullback B S hS
              (pointHom x)).obj (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B
              S hS X) (structureRingSheaf B S hS X).property Q.L (-1)))
              (isQuasicoherentOnSite_modulePullback_of_isQuasicoherentOnSite B S hS (pointHom x)
              (kernel Q.q) (isQuasicoherentOnSite_kernel_q X E hE Q))
              (isQuasicoherentOnSite_modulePullback_of_isQuasicoherentOnSite B S hS (pointHom x)
              (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B S hS X)
              (structureRingSheaf B S hS X).property Q.L (-1))
              (isQuasicoherentOnSite_invertibleTensorPower X Q.L (-1)))).hom ≫
              (monoidalTensorSheafTensorIso ((BigFppfOver.toScheme B S hS).obj T)
              ((zariskiReadingFunctor T).obj ((modulePullback B S hS (pointHom x)).obj (kernel
              Q.q))) ((zariskiReadingFunctor T).obj ((modulePullback B S hS (pointHom x)).obj
              (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B S hS X)
              (structureRingSheaf B S hS X).property Q.L (-1))))).hom))
          (kernelPointReadingHom X E hE Q T x) (inversePointReadingIso X T x Q.L).hom)))
            (fun T x hx => isIso_conormalSourcePointReading_of_isEtale X E hE Q T x hx) hQ U).hom)
        (φ' : sectionConormalSource X' ((modulePullback B S hS g).obj E) (Q.baseChange g (Iso.refl
            _)) ≅ sectionConormalTarget X' ((modulePullback B S hS g).obj E)
            (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g) hb' σ' hσ')
        (hφ' : ∀ V : SmallEtale B S hS X'.1, (chartModuleRestriction B S hS X' V).map φ'.hom =
            (sectionConormalChartFamilyOf X' ((modulePullback B S hS g).obj E)
                (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g) (Q.baseChange g
                (Iso.refl _)) hb' σ' hσ'
            (fun (T : BigFppfOver B S hS) (x : yoneda.obj T ⟶ X'.1) =>
          (haveI : IsInvertible (structureCommRings B S hS X') (structureRingSheaf B S hS
              X').property (Q.baseChange g (Iso.refl _)).L := (Q.baseChange g (Iso.refl
              _)).invertible.toAlgebraicGeometry
          (CategoryTheory.Functor.compBifunctorMap (𝒞 := ((BigFppfOver.toScheme B S hS).obj
              T).Modules) (iC := Scheme.Modules.instCategory)
          (Stacks.SheafOfModules.Tensor.sheafTensor ⟨((BigFppfOver.toScheme B S hS).obj T).presheaf,
            Presheaf.isSheaf_of_isSheaf_comp _ ((BigFppfOver.toScheme B S hS).obj T).presheaf
              (forget₂ CommRingCat RingCat) ((BigFppfOver.toScheme B S hS).obj T).ringCatSheaf.2⟩)
          ((zariskiReadingFunctor T).map (modulePullbackTensorIso B S hS (pointHom x) (kernel
              (Q.baseChange g (Iso.refl _)).q) (Stacks.SheafOfModules.Invertible.tensorPower
              (structureCommRings B S hS X') (structureRingSheaf B S hS X').property (Q.baseChange g
              (Iso.refl _)).L (-1))).hom ≫ ((zariskiReadingTensorObjIso T ((modulePullback B S hS
              (pointHom x)).obj (kernel (Q.baseChange g (Iso.refl _)).q)) ((modulePullback B S hS
              (pointHom x)).obj (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B
              S hS X') (structureRingSheaf B S hS X').property (Q.baseChange g (Iso.refl _)).L
              (-1))) (isQuasicoherentOnSite_modulePullback_of_isQuasicoherentOnSite B S hS (pointHom
              x) (kernel (Q.baseChange g (Iso.refl _)).q) (isQuasicoherentOnSite_kernel_q X'
              ((modulePullback B S hS g).obj E)
              (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g) (Q.baseChange g
              (Iso.refl _)))) (isQuasicoherentOnSite_modulePullback_of_isQuasicoherentOnSite B S hS
              (pointHom x) (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B S hS
              X') (structureRingSheaf B S hS X').property (Q.baseChange g (Iso.refl _)).L (-1))
              (isQuasicoherentOnSite_invertibleTensorPower X' (Q.baseChange g (Iso.refl _)).L
              (-1)))).hom ≫ (monoidalTensorSheafTensorIso ((BigFppfOver.toScheme B S hS).obj T)
              ((zariskiReadingFunctor T).obj ((modulePullback B S hS (pointHom x)).obj (kernel
              (Q.baseChange g (Iso.refl _)).q))) ((zariskiReadingFunctor T).obj ((modulePullback B S
              hS (pointHom x)).obj (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings
              B S hS X') (structureRingSheaf B S hS X').property (Q.baseChange g (Iso.refl _)).L
              (-1))))).hom))
          (kernelPointReadingHom X' ((modulePullback B S hS g).obj E)
              (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g) (Q.baseChange g
              (Iso.refl _)) T x) (inversePointReadingIso X' T x (Q.baseChange g (Iso.refl
              _)).L).hom)))
            (fun T x hx => isIso_conormalSourcePointReading_of_isEtale X' ((modulePullback B S hS
                g).obj E) (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g)
                (Q.baseChange g (Iso.refl _)) T x hx) (projectiveBundleSectionsEquiv_baseChange_mk X
                E hE hb g hb' σ hσ σ' hσ' comm Q hQ) V).hom),
      (@CategoryStruct.comp _ _ ((modulePullback B S hS g).obj
          (haveI : IsInvertible (structureCommRings B S hS X) (structureRingSheaf B S hS X).property
              Q.L := Q.invertible.toAlgebraicGeometry; (MonoidalCategory.tensorObj (C := Modules.{u,
              u} B S hS X.1 X.2) (kernel Q.q) (Stacks.SheafOfModules.Invertible.tensorPower
              (structureCommRings B S hS X) (structureRingSheaf B S hS X).property Q.L (-1)))))
              ((modulePullback B S hS g).obj (conormalModuleOfImmersion B S hS
              (relativeProjSymmetricAlgebra X E hE hb).2 X.2 σ.hom
          (isImmersion_of_isClosedImmersion B S hS
            (isClosedImmersion_of_section_projectiveBundleπ X E hE hb σ hσ))))
                (conormalModuleOfImmersion B S hS (relativeProjSymmetricAlgebra X' ((modulePullback
                B S hS g).obj E) (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g)
                hb').2 X'.2 σ'.hom
          (isImmersion_of_isClosedImmersion B S hS
            (isClosedImmersion_of_section_projectiveBundleπ X' ((modulePullback B S hS g).obj E)
                (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g) hb' σ' hσ')))
                ((modulePullback B S hS g).map (X :=
                (haveI : IsInvertible (structureCommRings B S hS X) (structureRingSheaf B S hS
                    X).property Q.L := Q.invertible.toAlgebraicGeometry; (MonoidalCategory.tensorObj
                    (C := Modules.{u, u} B S hS X.1 X.2) (kernel Q.q)
                    (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B S hS X)
                    (structureRingSheaf B S hS X).property Q.L (-1))))) (Y :=
                    (conormalModuleOfImmersion B S hS (relativeProjSymmetricAlgebra X E hE hb).2 X.2
                    σ.hom
          (isImmersion_of_isClosedImmersion B S hS
            (isClosedImmersion_of_section_projectiveBundleπ X E hE hb σ hσ)))) φ.hom)
                (sectionConormalTargetBaseChangeHom X E hE hb σ hσ g hb' σ' hσ' comm)) =
                (@CategoryStruct.comp _ _ ((modulePullback B S hS g).obj
                (haveI : IsInvertible (structureCommRings B S hS X) (structureRingSheaf B S hS
                    X).property Q.L := Q.invertible.toAlgebraicGeometry; (MonoidalCategory.tensorObj
                    (C := Modules.{u, u} B S hS X.1 X.2) (kernel Q.q)
                    (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B S hS X)
                    (structureRingSheaf B S hS X).property Q.L (-1)))))
                (haveI : IsInvertible (structureCommRings B S hS X') (structureRingSheaf B S hS
                    X').property (Q.baseChange g (Iso.refl _)).L := (Q.baseChange g (Iso.refl
                    _)).invertible.toAlgebraicGeometry; (MonoidalCategory.tensorObj (C :=
                    Modules.{u, u} B S hS X'.1 X'.2) (kernel (Q.baseChange g (Iso.refl _)).q)
                    (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B S hS X')
                    (structureRingSheaf B S hS X').property (Q.baseChange g (Iso.refl _)).L (-1))))
                    (conormalModuleOfImmersion B S hS (relativeProjSymmetricAlgebra X'
                    ((modulePullback B S hS g).obj E)
                    (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g) hb').2 X'.2
                    σ'.hom
          (isImmersion_of_isClosedImmersion B S hS
            (isClosedImmersion_of_section_projectiveBundleπ X' ((modulePullback B S hS g).obj E)
                (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g) hb' σ' hσ')))
                (sectionConormalSourceBaseChangeHom X E Q g) (Iso.hom (X :=
                (haveI : IsInvertible (structureCommRings B S hS X') (structureRingSheaf B S hS
                    X').property (Q.baseChange g (Iso.refl _)).L := (Q.baseChange g (Iso.refl
                    _)).invertible.toAlgebraicGeometry; (MonoidalCategory.tensorObj (C :=
                    Modules.{u, u} B S hS X'.1 X'.2) (kernel (Q.baseChange g (Iso.refl _)).q)
                    (Stacks.SheafOfModules.Invertible.tensorPower (structureCommRings B S hS X')
                    (structureRingSheaf B S hS X').property (Q.baseChange g (Iso.refl _)).L (-1)))))
                    (Y := (conormalModuleOfImmersion B S hS (relativeProjSymmetricAlgebra X'
                    ((modulePullback B S hS g).obj E)
                    (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g) hb').2 X'.2
                    σ'.hom
          (isImmersion_of_isClosedImmersion B S hS
            (isClosedImmersion_of_section_projectiveBundleπ X' ((modulePullback B S hS g).obj E)
                (isQuasicoherentOnSite_modulePullback_projectiveBundle X E hE g) hb' σ' hσ'))))
                φ')))

AlgebraicGeometry.Space.TautologicalDatum.pullbackQuotient, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SectionsInvertibleQuotients.lean, line 203. The attribute's comment: “the invertible quotient attached to a section, given the 03LU unit law”.

The invertible quotient of E classified by a section of π.

def pullbackQuotient (D : TautologicalDatum π E) {σ : X ⟶ P} (hσ : σ ≫ π = 𝟙 X) :
    InvertibleQuotient X E

AlgebraicGeometry.Space.TautologicalDatum.sectionsEquivInvertibleQuotients, a def in StacksFrontier (drafted, not yet reviewed), declared in StacksFrontier/AlgebraicGeometry/Spaces/SectionsInvertibleQuotients.lean, line 283. The attribute's comment: “the bijection, for a universal tautological datum, given the 03LU unit law”.

The bijection between the sections of π and the invertible quotients of E up to isomorphism, for a universal tautological datum, sending a section to the quotient it pulls back.

def sectionsEquivInvertibleQuotients (D : TautologicalDatum π E) (hD : IsUniversal hc D) :
    { σ : X ⟶ P // σ ≫ π = 𝟙 X } ≃ InvertibleQuotientClass X E
Sources

The dependency explorer needs JavaScript and its graph data.

Download the complete graph data.