Documentation

Mathlib.AlgebraicGeometry.ProjectiveSpectrum.Basic

Basic properties of the scheme Proj A #

The scheme Proj 𝒜 for a graded algebra 𝒜 is constructed in AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean. In this file we provide basic properties of the scheme.

Main results #

def AlgebraicGeometry.Proj.basicOpen {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) :
(Proj 𝒜).Opens

The basic open set D₊(f) associated to f : A.

Equations
Instances For
    @[simp]
    theorem AlgebraicGeometry.Proj.mem_basicOpen {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) (x : (Proj 𝒜).toPresheafedSpace) :
    x basicOpen 𝒜 f fx.asHomogeneousIdeal
    @[simp]
    theorem AlgebraicGeometry.Proj.basicOpen_one {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] :
    basicOpen 𝒜 1 =
    @[simp]
    theorem AlgebraicGeometry.Proj.basicOpen_zero {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] :
    basicOpen 𝒜 0 =
    @[simp]
    theorem AlgebraicGeometry.Proj.basicOpen_pow {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) (n : ) (hn : 0 < n) :
    basicOpen 𝒜 (f ^ n) = basicOpen 𝒜 f
    theorem AlgebraicGeometry.Proj.basicOpen_mul {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f g : A) :
    basicOpen 𝒜 (f * g) = basicOpen 𝒜 f basicOpen 𝒜 g
    theorem AlgebraicGeometry.Proj.basicOpen_mono {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f g : A) (hfg : f g) :
    basicOpen 𝒜 g basicOpen 𝒜 f
    theorem AlgebraicGeometry.Proj.basicOpen_eq_iSup_proj {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) :
    basicOpen 𝒜 f = ⨆ (i : ), basicOpen 𝒜 ((GradedAlgebra.proj 𝒜 i) f)
    theorem AlgebraicGeometry.Proj.iSup_basicOpen_eq_top {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {ι : Type u_3} (f : ιA) (hf : (HomogeneousIdeal.irrelevant 𝒜).toIdeal Ideal.span (Set.range f)) :
    ⨆ (i : ι), basicOpen 𝒜 (f i) =
    def AlgebraicGeometry.Proj.awayToSection {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) :

    The canonical map (A_f)₀ ⟶ Γ(Proj A, D₊(f)). This is an isomorphism when f is homogeneous of positive degree. See basicOpenIsoAway below.

    Equations
    Instances For
      noncomputable def AlgebraicGeometry.Proj.basicOpenToSpec {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) :

      The canonical map Proj A |_ D₊(f) ⟶ Spec (A_f)₀. This is an isomorphism when f is homogeneous of positive degree. See basicOpenIsoSpec below.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        noncomputable def AlgebraicGeometry.Proj.toSpecZero {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] :
        Proj 𝒜 Spec (CommRingCat.of (𝒜 0))

        The structure map Proj A ⟶ Spec A₀.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          noncomputable def AlgebraicGeometry.Proj.basicOpenIsoSpec {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) {m : } (f_deg : f 𝒜 m) (hm : 0 < m) :

          The canonical isomorphism Proj A |_ D₊(f) ≅ Spec (A_f)₀ when f is homogeneous of positive degree.

          Equations
          Instances For
            theorem AlgebraicGeometry.Proj.basicOpenIsoSpec_hom {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) {m : } (f_deg : f 𝒜 m) (hm : 0 < m) :
            (basicOpenIsoSpec 𝒜 f f_deg hm).hom = basicOpenToSpec 𝒜 f
            noncomputable def AlgebraicGeometry.Proj.basicOpenIsoAway {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) {m : } (f_deg : f 𝒜 m) (hm : 0 < m) :

            The canonical isomorphism (A_f)₀ ≅ Γ(Proj A, D₊(f)) when f is homogeneous of positive degree.

            Equations
            Instances For
              theorem AlgebraicGeometry.Proj.basicOpenIsoAway_hom {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) {m : } (f_deg : f 𝒜 m) (hm : 0 < m) :
              (basicOpenIsoAway 𝒜 f f_deg hm).hom = awayToSection 𝒜 f
              noncomputable def AlgebraicGeometry.Proj.awayι {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) {m : } (f_deg : f 𝒜 m) (hm : 0 < m) :

              The open immersion Spec (A_f)₀ ⟶ Proj A.

              Equations
              Instances For
                instance AlgebraicGeometry.Proj.instIsOpenImmersionAwayι {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) {m : } (f_deg : f 𝒜 m) (hm : 0 < m) :
                IsOpenImmersion (awayι 𝒜 f f_deg hm)
                theorem AlgebraicGeometry.Proj.opensRange_awayι {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) {m : } (f_deg : f 𝒜 m) (hm : 0 < m) :
                Scheme.Hom.opensRange (awayι 𝒜 f f_deg hm) = basicOpen 𝒜 f
                theorem AlgebraicGeometry.Proj.isAffineOpen_basicOpen {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) {m : } (f_deg : f 𝒜 m) (hm : 0 < m) :
                theorem AlgebraicGeometry.Proj.awayι_toSpecZero {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) {m : } (f_deg : f 𝒜 m) (hm : 0 < m) :
                theorem AlgebraicGeometry.Proj.awayMap_awayToSection {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m' : } {g : A} (g_deg : g 𝒜 m') {x : A} (hx : x = f * g) :
                theorem AlgebraicGeometry.Proj.awayMap_awayToSection_assoc {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m' : } {g : A} (g_deg : g 𝒜 m') {x : A} (hx : x = f * g) {Z : CommRingCat} (h : (Proj 𝒜).presheaf.obj (Opposite.op (basicOpen 𝒜 x)) Z) :
                theorem AlgebraicGeometry.Proj.basicOpenToSpec_SpecMap_awayMap {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m' : } {g : A} (g_deg : g 𝒜 m') {x : A} (hx : x = f * g) :
                theorem AlgebraicGeometry.Proj.SpecMap_awayMap_awayι {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m : } (f_deg : f 𝒜 m) (hm : 0 < m) {m' : } {g : A} (g_deg : g 𝒜 m') {x : A} (hx : x = f * g) :
                theorem AlgebraicGeometry.Proj.SpecMap_awayMap_awayι_assoc {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m : } (f_deg : f 𝒜 m) (hm : 0 < m) {m' : } {g : A} (g_deg : g 𝒜 m') {x : A} (hx : x = f * g) {Z : Scheme} (h : Proj 𝒜 Z) :
                noncomputable def AlgebraicGeometry.Proj.pullbackAwayιIso {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m : } (f_deg : f 𝒜 m) (hm : 0 < m) {m' : } {g : A} (g_deg : g 𝒜 m') (hm' : 0 < m') {x : A} (hx : x = f * g) :

                The isomorphism D₊(f) ×[Proj 𝒜] D₊(g) ≅ D₊(fg).

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  @[simp]
                  theorem AlgebraicGeometry.Proj.pullbackAwayιIso_hom_awayι {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m : } (f_deg : f 𝒜 m) (hm : 0 < m) {m' : } {g : A} (g_deg : g 𝒜 m') (hm' : 0 < m') {x : A} (hx : x = f * g) :
                  CategoryTheory.CategoryStruct.comp (pullbackAwayιIso 𝒜 f_deg hm g_deg hm' hx).hom (awayι 𝒜 x ) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.pullback.fst (awayι 𝒜 f f_deg hm) (awayι 𝒜 g g_deg hm')) (awayι 𝒜 f f_deg hm)
                  @[simp]
                  theorem AlgebraicGeometry.Proj.pullbackAwayιIso_hom_awayι_assoc {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m : } (f_deg : f 𝒜 m) (hm : 0 < m) {m' : } {g : A} (g_deg : g 𝒜 m') (hm' : 0 < m') {x : A} (hx : x = f * g) {Z : Scheme} (h : Proj 𝒜 Z) :
                  @[simp]
                  theorem AlgebraicGeometry.Proj.pullbackAwayιIso_hom_SpecMap_awayMap_left {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m : } (f_deg : f 𝒜 m) (hm : 0 < m) {m' : } {g : A} (g_deg : g 𝒜 m') (hm' : 0 < m') {x : A} (hx : x = f * g) :
                  @[simp]
                  theorem AlgebraicGeometry.Proj.pullbackAwayιIso_hom_SpecMap_awayMap_left_assoc {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m : } (f_deg : f 𝒜 m) (hm : 0 < m) {m' : } {g : A} (g_deg : g 𝒜 m') (hm' : 0 < m') {x : A} (hx : x = f * g) {Z : Scheme} (h : Spec (CommRingCat.of (HomogeneousLocalization.Away 𝒜 f)) Z) :
                  @[simp]
                  theorem AlgebraicGeometry.Proj.pullbackAwayιIso_hom_SpecMap_awayMap_right {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m : } (f_deg : f 𝒜 m) (hm : 0 < m) {m' : } {g : A} (g_deg : g 𝒜 m') (hm' : 0 < m') {x : A} (hx : x = f * g) :
                  @[simp]
                  theorem AlgebraicGeometry.Proj.pullbackAwayιIso_hom_SpecMap_awayMap_right_assoc {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m : } (f_deg : f 𝒜 m) (hm : 0 < m) {m' : } {g : A} (g_deg : g 𝒜 m') (hm' : 0 < m') {x : A} (hx : x = f * g) {Z : Scheme} (h : Spec (CommRingCat.of (HomogeneousLocalization.Away 𝒜 g)) Z) :
                  @[simp]
                  theorem AlgebraicGeometry.Proj.pullbackAwayιIso_inv_fst {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m : } (f_deg : f 𝒜 m) (hm : 0 < m) {m' : } {g : A} (g_deg : g 𝒜 m') (hm' : 0 < m') {x : A} (hx : x = f * g) :
                  @[simp]
                  theorem AlgebraicGeometry.Proj.pullbackAwayιIso_inv_fst_assoc {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m : } (f_deg : f 𝒜 m) (hm : 0 < m) {m' : } {g : A} (g_deg : g 𝒜 m') (hm' : 0 < m') {x : A} (hx : x = f * g) {Z : Scheme} (h : Spec (CommRingCat.of (HomogeneousLocalization.Away 𝒜 f)) Z) :
                  @[simp]
                  theorem AlgebraicGeometry.Proj.pullbackAwayιIso_inv_snd {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m : } (f_deg : f 𝒜 m) (hm : 0 < m) {m' : } {g : A} (g_deg : g 𝒜 m') (hm' : 0 < m') {x : A} (hx : x = f * g) :
                  @[simp]
                  theorem AlgebraicGeometry.Proj.pullbackAwayιIso_inv_snd_assoc {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {f : A} {m : } (f_deg : f 𝒜 m) (hm : 0 < m) {m' : } {g : A} (g_deg : g 𝒜 m') (hm' : 0 < m') {x : A} (hx : x = f * g) {Z : Scheme} (h : Spec (CommRingCat.of (HomogeneousLocalization.Away 𝒜 g)) Z) :
                  noncomputable def AlgebraicGeometry.Proj.openCoverOfISupEqTop {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] {ι : Type u_3} (f : ιA) {m : ι} (f_deg : ∀ (i : ι), f i 𝒜 (m i)) (hm : ∀ (i : ι), 0 < m i) (hf : (HomogeneousIdeal.irrelevant 𝒜).toIdeal Ideal.span (Set.range f)) :
                  (Proj 𝒜).AffineOpenCover

                  Given a family of homogeneous elements f of positive degree that spans the irrelevant ideal, Spec (A_f)₀ ⟶ Proj A forms an affine open cover of Proj A.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    noncomputable def AlgebraicGeometry.Proj.affineOpenCover {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] :
                    (Proj 𝒜).AffineOpenCover

                    Proj A is covered by Spec (A_f)₀ for all homogeneous elements of positive degree.

                    Equations
                    Instances For
                      noncomputable def AlgebraicGeometry.Proj.stalkIso {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (x : (Proj 𝒜).toPresheafedSpace) :
                      (Proj 𝒜).presheaf.stalk x CommRingCat.of (HomogeneousLocalization.AtPrime 𝒜 x.asHomogeneousIdeal.toIdeal)

                      The stalk of Proj A at x is the degree 0 part of the localization of A at x.

                      Equations
                      Instances For