Documentation

Hironaka.Algebra.Proj.Dehomogenize

Dehomogenization: the standard chart of ℙ^{r-1}_R is a polynomial ring #

The exceptional divisor of the blow-up of a smooth scheme along a smooth centre Z of codimension r is locally (Z ∩ U) ×_k ℙ^{r-1}_k; establishing this needs the base change of Proj along k → B for the polynomial ring k[u_0, …, u_{r-1}] with its standard grading [TSPA, Tag 01MX], which Mathlib does not provide. Its local form on the standard chart D₊(u_j) is the ring statement of this file: the degree-zero part of the localization R[u]_{u_j} is the polynomial ring R[u_i/u_j : i ≠ j], naturally in R, so that B ⊗_k (k[u]_{u_j})₀ ≅ (B[u]_{u_j})₀.

Why the theorems hold. Every element of (R[u]_{u_j})₀ is a fraction p/u_j^m with p homogeneous of degree m, and p/u_j^m = p(u_i/u_j) is the polynomial p(u_j ↦ 1, u_i ↦ y_i) in the variables y_i = u_i/u_j (dehomogenization); conversely a polynomial q(y) is recovered from q(u_i/u_j) ∈ R[u]_{u_j} by the ring map u_j ↦ 1, u_i ↦ y_i, which is defined on the localization because it sends u_j to a unit. So q ↦ q(u_i/u_j) is an isomorphism R[y_i : i ≠ j] ≅ (R[u]_{u_j})₀; it commutes with the coefficient maps R → S, and S ⊗_R R[y] = S[y] (Mathlib's MvPolynomial.algebraTensorAlgEquiv) gives the tensor identity.

Main declarations #

Conventions #

The variable type σ lives in Type (the applications use Fin r), so that MvPolynomial σ R stays in the universe of R for CommRingCat. The chart element is carried as a variable f with hf : f = X j, because the base-changed chart is Away (𝒜 S) (gradedMap R S (X j)) (the image of X j, equal but not definitionally equal to X j).

theorem AlgebraicGeometry.Proj.val_fromZeroRingHom {ι : Type u_1} {σ' : Type u_2} {A : Type u_3} [AddCommMonoid ι] [DecidableEq ι] [CommRing A] [SetLike σ' A] [AddSubgroupClass σ' A] (𝒜 : ι → σ') [GradedRing 𝒜] (x : Submonoid A) (f : ↥(𝒜 0)) :

val on the constants of degree zero: f/1.

@[reducible, inline]
abbrev AlgebraicGeometry.Proj.valRingHom {ι : Type u_1} {σ' : Type u_2} {A : Type u_3} [AddCommMonoid ι] [DecidableEq ι] [CommRing A] [SetLike σ' A] [AddSubgroupClass σ' A] (𝒜 : ι → σ') [GradedRing 𝒜] (x : Submonoid A) :

val as a ring homomorphism (the algebraMap of Mathlib's algebra instance).

Equations
Instances For
    theorem AlgebraicGeometry.Proj.valRingHom_apply {ι : Type u_1} {σ' : Type u_2} {A : Type u_3} [AddCommMonoid ι] [DecidableEq ι] [CommRing A] [SetLike σ' A] [AddSubgroupClass σ' A] (𝒜 : ι → σ') [GradedRing 𝒜] (x : Submonoid A) (y : HomogeneousLocalization 𝒜 x) :
    (valRingHom 𝒜 x) y = y.val

    The variables are homogeneous of degree one.

    @[instance_reducible]

    The R-algebra structure on (R[u]_f)₀: Mathlib's scalar action of R on the homogeneous localization (through the numerators) with the constants R → (R[u])₀ → (R[u]_f)₀ as algebraMap — the composite of Mathlib's Algebra (𝒜 0) (HomogeneousLocalization 𝒜 x) with the grade-zero Algebra R (𝒜 0) (the scalar tower instIsScalarTowerAway below). Scoped to Hironaka.Proj, as an instance on a Mathlib type.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      The R-algebra structure on (R[u]_f)₀ is compatible with Mathlib's (R[u])₀-algebra structure.

      @[reducible, inline]
      noncomputable abbrev AlgebraicGeometry.Proj.fpow {σ : Type} (R : Type u) [CommRing R] (f : MvPolynomial σ R) (n : ℕ) :

      f ^ n as an element of the submonoid powers f.

      Equations
      Instances For

        The chart of u_j: f is the variable u_j (as an element, up to the equation hf) #

        noncomputable def AlgebraicGeometry.Proj.mkX {σ : Type} (R : Type u) [CommRing R] (j : σ) (f : MvPolynomial σ R) (hf : f = MvPolynomial.X j) (i : σ) :

        u_i / u_j.

        Equations
        Instances For
          theorem AlgebraicGeometry.Proj.val_mkX {σ : Type} (R : Type u) [CommRing R] (j : σ) (f : MvPolynomial σ R) (hf : f = MvPolynomial.X j) (i : σ) :
          theorem AlgebraicGeometry.Proj.mkX_self {σ : Type} (R : Type u) [CommRing R] (j : σ) (f : MvPolynomial σ R) (hf : f = MvPolynomial.X j) :
          mkX R j f hf j = 1

          R[y_i : i ≠ j] → (R[u]_{u_j})₀, y_i ↦ u_i/u_j.

          Equations
          Instances For
            noncomputable def AlgebraicGeometry.Proj.dehomogenize {σ : Type} (R : Type u) [CommRing R] (j : σ) :

            Dehomogenization u_j ↦ 1, u_i ↦ y_i.

            Equations
            Instances For
              theorem AlgebraicGeometry.Proj.dehomogenize_X_of_ne {σ : Type} (R : Type u) [CommRing R] (j : σ) {i : σ} (h : i ≠ j) :
              theorem AlgebraicGeometry.Proj.eval₂_mul_right_of_isHomogeneous {σ : Type} (R : Type u) [CommRing R] {S : Type u_1} [CommRing S] (φ : R →+* S) (g : σ → S) (u : S) {p : MvPolynomial σ R} {m : ℕ} (hp : p.IsHomogeneous m) :
              MvPolynomial.eval₂ φ (fun (i : σ) => g i * u) p = u ^ m * MvPolynomial.eval₂ φ g p

              For p homogeneous of degree m, p(g_i · u) = u^m · p(g_i).

              The chart computation: a homogeneous p of degree m evaluated at u_i/u_j is the fraction p/u_j^m.

              theorem AlgebraicGeometry.Proj.dehomAux_dehomogenize {σ : Type} (R : Type u) [CommRing R] (j : σ) (f : MvPolynomial σ R) (hf : f = MvPolynomial.X j) (p : MvPolynomial σ R) :
              (dehomAux R j f hf) ((dehomogenize R j) p) = (MvPolynomial.aeval (mkX R j f hf)) p
              theorem AlgebraicGeometry.Proj.dehomAux_surjective {σ : Type} (R : Type u) [CommRing R] (j : σ) (f : MvPolynomial σ R) (hf : f = MvPolynomial.X j) :
              theorem AlgebraicGeometry.Proj.isUnit_dehomogenize {σ : Type} (R : Type u) [CommRing R] (j : σ) (f : MvPolynomial σ R) (hf : f = MvPolynomial.X j) :
              noncomputable def AlgebraicGeometry.Proj.dehomLoc {σ : Type} (R : Type u) [CommRing R] (j : σ) (f : MvPolynomial σ R) (hf : f = MvPolynomial.X j) :

              The map R[u]_{u_j} → R[y], u_j ↦ 1, u_i ↦ y_i, on the localization.

              Equations
              Instances For
                theorem AlgebraicGeometry.Proj.dehomLoc_val_dehomAux {σ : Type} (R : Type u) [CommRing R] (j : σ) (f : MvPolynomial σ R) (hf : f = MvPolynomial.X j) (q : MvPolynomial { i : σ // i ≠ j } R) :
                (dehomLoc R j f hf) (HomogeneousLocalization.val ((dehomAux R j f hf) q)) = q
                theorem AlgebraicGeometry.Proj.dehomAux_injective {σ : Type} (R : Type u) [CommRing R] (j : σ) (f : MvPolynomial σ R) (hf : f = MvPolynomial.X j) :

                The dehomogenization isomorphism R[y_i : i ≠ j] ≅ (R[u]_{u_j})₀, y_i ↦ u_i/u_j: the standard chart of projective space is an affine space [TSPA, Tag 01MX].

                Equations
                Instances For
                  theorem AlgebraicGeometry.Proj.dehom_apply {σ : Type} (R : Type u) [CommRing R] (j : σ) (f : MvPolynomial σ R) (hf : f = MvPolynomial.X j) (q : MvPolynomial { i : σ // i ≠ j } R) :
                  (dehom R j f hf) q = (dehomAux R j f hf) q

                  The coefficient map R[u] → S[u] as a graded ring homomorphism.

                  Equations
                  Instances For
                    theorem AlgebraicGeometry.Proj.gradedMap_apply {σ : Type} (R : Type u) [CommRing R] (S : Type u) [CommRing S] [Algebra R S] (p : MvPolynomial σ R) :
                    theorem AlgebraicGeometry.Proj.gradedMap_X {σ : Type} (R : Type u) [CommRing R] (S : Type u) [CommRing S] [Algebra R S] (i : σ) :
                    theorem AlgebraicGeometry.Proj.awayMap_dehomAux {σ : Type} (R : Type u) [CommRing R] (j : σ) (S : Type u) [CommRing S] [Algebra R S] (q : MvPolynomial { i : σ // i ≠ j } R) :

                    Naturality of dehomogenization in the coefficients.

                    S ⊗_R (R[u]_{u_j})₀ ≅ (S[u]_{u_j})₀: the base change of the standard chart.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For

                      The standard chart of ℙ^{r-1} commutes with base change: the square R → S, R → (R[u]_{u_j})₀, S → (S[u]_{u_j})₀, (R[u]_{u_j})₀ → (S[u]_{u_j})₀ is a pushout of rings — the chart form of the base change of projective space [TSPA, Tag 01MX].