Documentation

Mathlib.AlgebraicGeometry.ProjectiveSpectrum.Scheme

Proj as a scheme #

This file is to prove that Proj is a scheme.

Notation #

Implementation #

In AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean, we have given Proj a structure sheaf so that Proj is a locally ringed space. In this file we will prove that Proj equipped with this structure sheaf is a scheme. We achieve this by using an affine cover by basic open sets in Proj, more specifically:

  1. We prove that Proj can be covered by basic open sets at homogeneous element of positive degree.
  2. We prove that for any homogeneous element f : A of positive degree m, Proj.T | (pbo f) is homeomorphic to Spec.T A⁰_f:

Main Definitions and Statements #

For a homogeneous element f of degree m

If we further assume m is positive

Reference #

Proj restrict to some open set

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    def AlgebraicGeometry.ProjIsoSpecTopComponent.ToSpec.carrier {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {𝒜 : Submodule R A} [GradedAlgebra 𝒜] {f : A} (x : ((AlgebraicGeometry.Proj.toLocallyRingedSpace 𝒜).restrict ).toTopCat) :

    For any x in Proj| (pbo f), the corresponding ideal in Spec A⁰_f. This fact that this ideal is prime is proven in TopComponent.Forward.toFun

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      theorem AlgebraicGeometry.ProjIsoSpecTopComponent.ToSpec.MemCarrier.clear_denominator' {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {𝒜 : Submodule R A} [GradedAlgebra 𝒜] {f : A} (x : ((AlgebraicGeometry.Proj.toLocallyRingedSpace 𝒜).restrict ).toTopCat) [DecidableEq (Localization.Away f)] {z : Localization.Away f} (hz : z Ideal.span ((algebraMap A (Localization.Away f)) '' (x).asHomogeneousIdeal)) :
      ∃ (c : ((algebraMap A (Localization.Away f)) '' (x).asHomogeneousIdeal) →₀ Localization.Away f) (N : ) (acd : (y : Localization.Away f) → y Finset.image (c) c.supportA), f ^ N z = (algebraMap A (Localization.Away f)) (c.support.attach.sum fun (i : { x_1 : ((algebraMap A (Localization.Away f)) '' (x).asHomogeneousIdeal) // x_1 c.support }) => acd (c i) * Exists.choose )
      theorem AlgebraicGeometry.ProjIsoSpecTopComponent.ToSpec.MemCarrier.clear_denominator {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {𝒜 : Submodule R A} [GradedAlgebra 𝒜] {f : A} (x : ((AlgebraicGeometry.Proj.toLocallyRingedSpace 𝒜).restrict ).toTopCat) [DecidableEq (Localization.Away f)] {z : HomogeneousLocalization.Away 𝒜 f} (hz : z AlgebraicGeometry.ProjIsoSpecTopComponent.ToSpec.carrier x) :
      ∃ (c : ((algebraMap A (Localization.Away f)) '' (x).asHomogeneousIdeal) →₀ Localization.Away f) (N : ) (acd : (y : Localization.Away f) → y Finset.image (c) c.supportA), f ^ N HomogeneousLocalization.val z = (algebraMap A (Localization.Away f)) (c.support.attach.sum fun (i : { x_1 : ((algebraMap A (Localization.Away f)) '' (x).asHomogeneousIdeal) // x_1 c.support }) => acd (c i) * Exists.choose )
      theorem AlgebraicGeometry.ProjIsoSpecTopComponent.ToSpec.carrier_eq_span {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {𝒜 : Submodule R A} [GradedAlgebra 𝒜] {f : A} (x : ((AlgebraicGeometry.Proj.toLocallyRingedSpace 𝒜).restrict ).toTopCat) :
      AlgebraicGeometry.ProjIsoSpecTopComponent.ToSpec.carrier x = Ideal.span {z : HomogeneousLocalization.Away 𝒜 f | ∃ (s : A) (F : A) (_ : s (x).asHomogeneousIdeal) (n : ) (s_mem : s 𝒜 n) (F_mem1 : F 𝒜 n) (F_mem2 : F Submonoid.powers f), z = Quotient.mk'' { deg := n, num := s, s_mem, den := F, F_mem1, den_mem := F_mem2 }}

      For x : pbo f, the ideal A⁰_f ∩ span {g / 1 | g ∈ x} is equal to span {a/f^n | a ∈ x and deg(a) = deg(f^n)}.

      theorem AlgebraicGeometry.ProjIsoSpecTopComponent.ToSpec.disjoint {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {𝒜 : Submodule R A} [GradedAlgebra 𝒜] {f : A} (x : ((AlgebraicGeometry.Proj.toLocallyRingedSpace 𝒜).restrict ).toTopCat) :
      Disjoint (x).asHomogeneousIdeal.toIdeal (Submonoid.powers f)
      def AlgebraicGeometry.ProjIsoSpecTopComponent.ToSpec.toFun {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {𝒜 : Submodule R A} [GradedAlgebra 𝒜] (f : A) (x : ((AlgebraicGeometry.Proj.toLocallyRingedSpace 𝒜).restrict ).toPresheafedSpace) :

      The function between the basic open set D(f) in Proj to the corresponding basic open set in Spec A⁰_f. This is bundled into a continuous map in TopComponent.forward.

      Equations
      Instances For
        theorem AlgebraicGeometry.ProjIsoSpecTopComponent.ToSpec.preimage_eq {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {𝒜 : Submodule R A} [GradedAlgebra 𝒜] (f : A) (a : A) (b : A) (k : ) (a_mem : a 𝒜 k) (b_mem1 : b 𝒜 k) (b_mem2 : b Submonoid.powers f) :
        AlgebraicGeometry.ProjIsoSpecTopComponent.ToSpec.toFun f ⁻¹' (PrimeSpectrum.basicOpen (Quotient.mk'' { deg := k, num := a, a_mem, den := b, b_mem1, den_mem := b_mem2 })) = {x : ((AlgebraicGeometry.Proj.toLocallyRingedSpace 𝒜).restrict ).toPresheafedSpace | x ProjectiveSpectrum.basicOpen 𝒜 f ProjectiveSpectrum.basicOpen 𝒜 a}
        def AlgebraicGeometry.ProjIsoSpecTopComponent.toSpec {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] (𝒜 : Submodule R A) [GradedAlgebra 𝒜] (f : A) :

        The continuous function from the basic open set D(f) in Proj to the corresponding basic open set in Spec A⁰_f.

        Equations
        Instances For
          theorem AlgebraicGeometry.ProjIsoSpecTopComponent.toSpec_preimage_eq {R : Type u_1} {A : Type u_2} [CommRing R] [CommRing A] [Algebra R A] {𝒜 : Submodule R A} [GradedAlgebra 𝒜] {f : A} (a : A) (b : A) (k : ) (a_mem : a 𝒜 k) (b_mem1 : b 𝒜 k) (b_mem2 : b Submonoid.powers f) :
          (AlgebraicGeometry.ProjIsoSpecTopComponent.toSpec 𝒜 f) ⁻¹' (PrimeSpectrum.basicOpen (Quotient.mk'' { deg := k, num := a, a_mem, den := b, b_mem1, den_mem := b_mem2 })) = {x : (CategoryTheory.forget TopCat).obj ((AlgebraicGeometry.Proj.toLocallyRingedSpace 𝒜).restrict ).toPresheafedSpace | x ProjectiveSpectrum.basicOpen 𝒜 f ProjectiveSpectrum.basicOpen 𝒜 a}
          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              def AlgebraicGeometry.ProjIsoSpecTopComponent.FromSpec.carrier {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) (q : (AlgebraicGeometry.Spec.locallyRingedSpaceObj (CommRingCat.of (HomogeneousLocalization.Away 𝒜 f))).toPresheafedSpace) :
              Set A

              The function from Spec A⁰_f to Proj|D(f) is defined by q ↦ {a | aᵢᵐ/fⁱ ∈ q}, i.e. sending q a prime ideal in A⁰_f to the homogeneous prime relevant ideal containing only and all the elements a : A such that for every i, the degree 0 element formed by dividing the m-th power of the i-th projection of a by the i-th power of the degree-m homogeneous element f, lies in q.

              The set {a | aᵢᵐ/fⁱ ∈ q}

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                theorem AlgebraicGeometry.ProjIsoSpecTopComponent.FromSpec.mem_carrier_iff {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) (q : (AlgebraicGeometry.Spec.locallyRingedSpaceObj (CommRingCat.of (HomogeneousLocalization.Away 𝒜 f))).toPresheafedSpace) (a : A) :
                a AlgebraicGeometry.ProjIsoSpecTopComponent.FromSpec.carrier f_deg q ∀ (i : ), Quotient.mk'' { deg := m * i, num := (GradedAlgebra.proj 𝒜 i) a ^ m, , den := f ^ i, , den_mem := } q.asIdeal
                def AlgebraicGeometry.ProjIsoSpecTopComponent.FromSpec.carrier.asIdeal {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) (q : (AlgebraicGeometry.Spec.locallyRingedSpaceObj (CommRingCat.of (HomogeneousLocalization.Away 𝒜 f))).toPresheafedSpace) :

                For a prime ideal q in A⁰_f, the set {a | aᵢᵐ/fⁱ ∈ q} as an ideal.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  def AlgebraicGeometry.ProjIsoSpecTopComponent.FromSpec.carrier.asHomogeneousIdeal {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) (q : (AlgebraicGeometry.Spec.locallyRingedSpaceObj (CommRingCat.of (HomogeneousLocalization.Away 𝒜 f))).toPresheafedSpace) :

                  For a prime ideal q in A⁰_f, the set {a | aᵢᵐ/fⁱ ∈ q} as a homogeneous ideal.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    def AlgebraicGeometry.ProjIsoSpecTopComponent.FromSpec.toFun {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) :
                    (AlgebraicGeometry.Spec.locallyRingedSpaceObj (CommRingCat.of (HomogeneousLocalization.Away 𝒜 f))).toPresheafedSpace((AlgebraicGeometry.Proj.toLocallyRingedSpace 𝒜).restrict ).toPresheafedSpace

                    The function Spec A⁰_f → Proj|D(f) sending q to {a | aᵢᵐ/fⁱ ∈ q}.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      @[deprecated AlgebraicGeometry.ProjIsoSpecTopComponent.toSpec_fromSpec]

                      Alias of AlgebraicGeometry.ProjIsoSpecTopComponent.toSpec_fromSpec.

                      theorem AlgebraicGeometry.ProjIsoSpecTopComponent.fromSpec_toSpec {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) (x : ((AlgebraicGeometry.Proj.toLocallyRingedSpace 𝒜).restrict ).toPresheafedSpace) :
                      theorem AlgebraicGeometry.ProjIsoSpecTopComponent.toSpec_injective {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.ProjIsoSpecTopComponent.toSpec_surjective {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.ProjIsoSpecTopComponent.toSpec_bijective {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.ProjIsoSpecTopComponent.toSpec.image_basicOpen_eq_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) (a : A) (i : ) :
                      (AlgebraicGeometry.ProjIsoSpecTopComponent.toSpec 𝒜 f) '' {x : (CategoryTheory.forget TopCat).obj ((AlgebraicGeometry.Proj.toLocallyRingedSpace 𝒜).restrict ).toPresheafedSpace | x ProjectiveSpectrum.basicOpen 𝒜 f ProjectiveSpectrum.basicOpen 𝒜 (((DirectSum.decompose 𝒜) a) i)} = (PrimeSpectrum.basicOpen (Quotient.mk'' { deg := m * i, num := (((DirectSum.decompose 𝒜) a) i) ^ m, , den := f ^ i, , den_mem := })).carrier
                      def AlgebraicGeometry.ProjIsoSpecTopComponent.fromSpec {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 continuous function Spec A⁰_f → Proj|D(f) sending q to {a | aᵢᵐ/fⁱ ∈ q} where m is the degree of f

                      Equations
                      Instances For
                        def AlgebraicGeometry.projIsoSpecTopComponent {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 homeomorphism Proj|D(f) ≅ Spec A⁰_f defined by

                        • φ : Proj|D(f) ⟶ Spec A⁰_f by sending x to A⁰_f ∩ span {g / 1 | g ∈ x}
                        • ψ : Spec A⁰_f ⟶ Proj|D(f) by sending q to {a | aᵢᵐ/fⁱ ∈ q}.
                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For