Documentation

TauCeti.AlgebraicGeometry.AdicSpace.ValuationSpectrum.Basic

The valuation spectrum of a ring #

We define the valuation spectrum Spv A following Wedhorn, Adic Spaces (arXiv:1910.05934v1), Definition 4.1.

Main definitions #

References #

Ported from the open Mathlib pull request leanprover-community/mathlib4#38009 (which supersedes an earlier draft in AINTLIB projects/AdicSpaces); this copy is deleted in favour of the Mathlib declarations once that pull request reaches the pinned Mathlib.

The localization embedding follows the organization and generated-topology argument of Mathlib's PrimeSpectrum.localization_comap_isEmbedding, adapted here from prime ideals to valuative relations.

structure TauCeti.ValuationSpectrum (A : Type u_1) [CommRing A] :
Type u_1

The valuation spectrum Spv A of a commutative ring A. A point of Spv A is a ValuativeRel A, but Spv A is kept as a distinct type so it can carry its own topology without affecting ValuativeRel A.

Instances For
    theorem TauCeti.ValuationSpectrum.ext {A : Type u_1} {inst✝ : CommRing A} {x y : ValuationSpectrum A} (toValuativeRel : x.toValuativeRel = y.toValuativeRel) :
    x = y

    The valuation spectrum Spv A of a commutative ring A. A point of Spv A is a ValuativeRel A, but Spv A is kept as a distinct type so it can carry its own topology without affecting ValuativeRel A.

    Equations
    Instances For

      Over a subsingleton ring, the valuation spectrum is empty.

      theorem TauCeti.ValuationSpectrum.ext' {A : Type u_1} [CommRing A] {v₁ v₂ : ValuationSpectrum A} (h : ∀ (x y : A), x ≤ᵥ y ↔ x ≤ᵥ y) :
      v₁ = v₂

      Two points of Spv A are equal as soon as their underlying vle relations agree.

      Construct a point of Spv A from a valuation v : Valuation A Γ₀.

      Equations
      Instances For
        theorem TauCeti.ValuationSpectrum.ofValuation_eq_of_isEquiv {A : Type u_1} [CommRing A] {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] {Γ'₀ : Type u_3} [LinearOrderedCommGroupWithZero Γ'₀] {v₁ : Valuation A Γ₀} {v₂ : Valuation A Γ'₀} (h : v₁.IsEquiv v₂) :

        Two equivalent valuations define the same point of Spv A.

        The basic open subset Spv(A)(f/s) = {v ∈ Spv A | v(f) ≤ v(s) ∧ v(s) ≠ 0}.

        Equations
        Instances For
          @[simp]

          Membership in the basic open subset Spv(A)(f/s), as a normal form.

          theorem TauCeti.ValuationSpectrum.basicOpen_mul_subset {A : Type u_1} [CommRing A] (t f s : A) :
          basicOpen (t * f) (t * s) ⊆ basicOpen f s

          Scaling numerator and denominator by t shrinks the basic open subset: Spv(A)(tf/ts) ⊆ Spv(A)(f/s).

          The basic open subset for f = s = 1 is the whole spectrum: Spv(A)(1/1) = Spv A. Not @[simp]: basicOpen_one_right together with ValuativeRel.vle_refl already reduces the left-hand side, so a simp attribute here would be redundant (simpNF).

          The basic open subset for f = s consists of the points where v(s) ≠ 0: Spv(A)(s/s) = {v ∈ Spv A | v(s) ≠ 0}.

          @[simp]

          The basic open subset at denominator 1 needs no nonvanishing clause: Spv(A)(f/1) = {v ∈ Spv A | v(f) ≤ 1}.

          @[instance_reducible]

          The topology on Spv A generated by the basic open sets basicOpen f s for f, s : A.

          Equations

          Each basic open subset is open in Spv A.

          The topology of Spv A is generated by the basic opens (the defining equation of the instance).

          The valuative relation of a point is determined by its basic opens: v(f) ≤ v(s) holds iff v lies in basicOpen f s, or s and f both lie in the support — the latter being detected by the diagonal basic opens basicOpen s s and basicOpen f f.

          The sub-unit locus of a set of ring elements is closed: demanding v(a) < 1 at every a ∈ S cuts out a closed subset of Spv A. The complement is the union over a ∈ S of the basic opens Spv(A)(1/a) — the condition 1 ≤ v(a) already forces v(a) ≠ 0, so no separate nonvanishing clause survives.

          This is the closedness underlying Wedhorn's Corollary 7.12: Theorem 7.10 describes Cont A inside Spv (A, IA) by exactly such conditions, so Cont A is the trace of a closed set.

          Spv A is T0: inseparable points agree on every basic open, hence carry the same valuative relation.

          The contravariant map Spv B → Spv A induced by φ : A →+* B.

          Equations
          Instances For
            @[simp]
            theorem TauCeti.ValuationSpectrum.comap_vle {A : Type u_2} {B : Type u_3} [CommRing A] [CommRing B] (φ : A →+* B) (v : ValuationSpectrum B) {a₁ a₂ : A} :
            (a₁ ≤ᵥ a₂) = (φ a₁ ≤ᵥ φ a₂)

            The relation of a pulled-back point compares images under φ.

            @[simp]
            theorem TauCeti.ValuationSpectrum.comap_vlt {A : Type u_2} {B : Type u_3} [CommRing A] [CommRing B] (φ : A →+* B) (v : ValuationSpectrum B) {a₁ a₂ : A} :
            (a₁ <ᵥ a₂) = (φ a₁ <ᵥ φ a₂)

            The strict relation of a pulled-back point compares images under φ.

            @[simp]
            theorem TauCeti.ValuationSpectrum.comap_ofValuation {A : Type u_2} {B : Type u_3} [CommRing A] [CommRing B] {Γ₀ : Type u_5} [LinearOrderedCommGroupWithZero Γ₀] (φ : A →+* B) (v : Valuation B Γ₀) :

            comap is compatible with ofValuation.

            theorem TauCeti.ValuationSpectrum.comap_preimage_basicOpen {A : Type u_2} {B : Type u_3} [CommRing A] [CommRing B] (φ : A →+* B) (f s : A) :
            comap φ ⁻¹' basicOpen f s = basicOpen (φ f) (φ s)

            The preimage of Spv(A)(f/s) under comap φ is Spv(B)(φ(f)/φ(s)).

            theorem TauCeti.ValuationSpectrum.continuous_comap {A : Type u_2} {B : Type u_3} [CommRing A] [CommRing B] (φ : A →+* B) :

            comap φ is continuous.

            @[simp]

            comap of the identity is the identity.

            @[simp]
            theorem TauCeti.ValuationSpectrum.comap_comp {A : Type u_2} {B : Type u_3} {C : Type u_4} [CommRing A] [CommRing B] [CommRing C] (φ : A →+* B) (ψ : B →+* C) :
            comap (ψ.comp φ) = comap φ ∘ comap ψ

            comap is contravariantly functorial: comap (ψ ∘ φ) = comap φ ∘ comap ψ.

            theorem TauCeti.ValuationSpectrum.comap_injective {A : Type u_2} {B : Type u_3} [CommRing A] [CommRing B] {φ : A →+* B} (hφ : Function.Surjective ⇑φ) :

            comap φ is injective when φ is surjective.

            Pulling back along two composable morphisms of commutative rings is pulling back along their composite.

            The support ideal {a ∈ A | v(a) = 0} of a point v : Spv A.

            Equations
            Instances For
              @[simp]

              Membership in the support, as the relation v(x) ≤ v(0).

              The support of a point v : Spv A is a prime ideal.

              @[simp]
              theorem TauCeti.ValuationSpectrum.vle_ofValuation {A : Type u_1} [CommRing A] {Γ₀ : Type u_2} [LinearOrderedCommGroupWithZero Γ₀] (v : Valuation A Γ₀) (x y : A) :
              x ≤ᵥ y ↔ v x ≤ v y

              (ofValuation v).vle x y ↔ v x ≤ v y.

              @[simp]

              The support of ofValuation v equals v.supp.

              The canonical valuation associated to a point v : Spv A.

              Equations
              Instances For

                v.valuation is ValuativeRel.valuation for the valuative relation of v.

                The two sides are definitionally equal, but the definition of TauCeti.ValuationSpectrum.valuation is not exposed outside this module, so a downstream module cannot match v.valuation against Mathlib's ValuativeRel.valuation API without this equation. It exists to cross that module boundary, not to abbreviate.

                @[simp]

                Comparison under the canonical valuation of a point is the point's valuative relation.

                @[simp]

                Strict comparison under the canonical valuation of a point is the point's strict valuative relation — the strict sibling of valuation_le_iff, and the direct bridge between strict valuation inequalities and vlt hypotheses.

                The support of v : Spv A equals the support of its canonical valuation.

                theorem TauCeti.ValuationSpectrum.supp_comap {A : Type u_1} [CommRing A] {B : Type u_2} [CommRing B] (φ : A →+* B) (v : ValuationSpectrum B) :

                The support of a pullback is the preimage of the support.

                @[simp]

                The canonical valuation gives back the same point of Spv.

                The canonical valuation of the point determined by w is equivalent to w.

                theorem TauCeti.ValuationSpectrum.self_le_supp_comap {A : Type u_1} [CommRing A] (𝔞 : Ideal A) (w : ValuationSpectrum (A ⧸ 𝔞)) :

                𝔞 ≤ supp(comap(mk 𝔞, w)) for all w : Spv (A ⧸ 𝔞).

                noncomputable def TauCeti.ValuationSpectrum.quotientLift {A : Type u_1} [CommRing A] (𝔞 : Ideal A) ⦃v : ValuationSpectrum A⦄ (h : 𝔞 ≤ v.supp) :

                Lift a point v ∈ Spv A with 𝔞 ≤ supp v to Spv (A ⧸ 𝔞).

                Equations
                Instances For
                  @[simp]
                  theorem TauCeti.ValuationSpectrum.comap_quotientLift {A : Type u_1} [CommRing A] (𝔞 : Ideal A) ⦃v : ValuationSpectrum A⦄ (h : 𝔞 ≤ v.supp) :

                  comap (mk 𝔞) (quotientLift 𝔞 h) = v.

                  @[simp]
                  theorem TauCeti.ValuationSpectrum.quotientLift_comap {A : Type u_1} [CommRing A] (𝔞 : Ideal A) (w : ValuationSpectrum (A ⧸ 𝔞)) :
                  quotientLift 𝔞 ⋯ = w

                  quotientLift 𝔞 (self_le_supp_comap 𝔞 w) = w.

                  The range of comap (mk 𝔞) is {v ∈ Spv A | 𝔞 ≤ supp v}.

                  comap (mk 𝔞) : Spv (A ⧸ 𝔞) → Spv A is a topological embedding.

                  Send v ∈ Spv A with S ≤ (supp v).primeCompl to the localization Spv B, where B is a localization of A at the submonoid S.

                  Equations
                  Instances For
                    @[simp]

                    comap (algebraMap A B) (localizationComapSection S B v hS) = v.

                    S is disjoint from supp(comap(algebraMap, w)) for w : Spv B.

                    The range of comap (algebraMap A B) is {v | S ≤ supp(v).primeCompl}.

                    Pullback of valuative relations along a localization map is injective.

                    theorem TauCeti.ValuationSpectrum.comap_preimage_basicOpen_mk' {A : Type u_1} [CommRing A] (S : Submonoid A) (B : Type u_2) [CommRing B] [Algebra A B] [IsLocalization S B] (a₁ a₂ : A) (s₁ s₂ : ↥S) :
                    comap (algebraMap A B) ⁻¹' basicOpen (a₁ * ↑s₂) (a₂ * ↑s₁) = basicOpen (IsLocalization.mk' B a₁ s₁) (IsLocalization.mk' B a₂ s₂)

                    The preimage under localization pullback of the basic open obtained by clearing denominators is the basic open defined by the original fractions.

                    Pullback of valuative relations along a localization map induces the source topology.

                    Pullback of valuative relations along a localization map is a topological embedding.

                    The support map to the prime spectrum #

                    The support map Spv A → Spec A.

                    Equations
                    Instances For
                      @[simp]

                      The prime ideal underlying suppFun v is the support of v.

                      supp ∘ Spv(φ) = Spec(φ) ∘ supp.

                      The trivial-valuation section of the support map #

                      The trivial-valuation section of the support map (Wedhorn, Remark 4.6): the point of Spv A given by the trivial valuation attached to a prime ideal.

                      Equations
                      Instances For
                        @[simp]

                        The valuative relation of a trivial-valuation point: v(f) ≤ v(s) holds precisely when f lies in the prime or s does not.

                        @[simp]

                        trivialSection is a section of the support map.

                        The preimage of a basic open under trivialSection is the corresponding basic open of the prime spectrum: trivialSection ⁻¹' Spv(A)(f/s) = D(s).

                        The support map is surjective; the trivial valuations provide a section.

                        Rational opens with a finite numerator set #

                        Wedhorn's Spv(A)(T/s) for a finite set T: the points where every t ∈ T is dominated by s, and s is not in the support.

                        Equations
                        Instances For
                          @[simp]
                          theorem TauCeti.ValuationSpectrum.mem_basicOpenFinset_iff {A : Type u_1} [CommRing A] (T : Finset A) (s : A) (v : ValuationSpectrum A) :
                          v ∈ basicOpenFinset T s ↔ (∀ t ∈ T, t ≤ᵥ s) ∧ ¬s ≤ᵥ 0
                          theorem TauCeti.ValuationSpectrum.basicOpenFinset_subset_basicOpen {A : Type u_1} [CommRing A] {T : Finset A} {s t : A} (ht : t ∈ T) :

                          Each numerator gives back an ordinary basic open.

                          theorem TauCeti.ValuationSpectrum.basicOpenFinset_eq_biInter {A : Type u_1} [CommRing A] (T : Finset A) (s : A) :
                          basicOpenFinset T s = ⋂ t ∈ insert s ↑T, basicOpen t s

                          Spv(A)(T/s) is the finite intersection of the basic opens Spv(A)(t/s) for t ranging over T ∪ {s}; the extra s is what carries the nonvanishing clause when T is empty.

                          @[simp]

                          Inserting the denominator among the numerators changes nothing: the extra condition it adds is v s ≤ v s.

                          @[simp]
                          theorem TauCeti.ValuationSpectrum.basicOpenFinset_image_mul_right {A : Type u_1} [CommRing A] (T : Finset A) (s u : A) (hu : IsUnit u) :
                          basicOpenFinset (Finset.image (fun (t : A) => t * u) T) (s * u) = basicOpenFinset T s

                          Multiplying a presentation by a unit changes nothing. If u is a unit, then multiplying every numerator and the denominator of Spv(A)(T/s) by u gives the same rational open.

                          No injectivity of t ↦ t * u is needed.

                          theorem TauCeti.ValuationSpectrum.comap_preimage_basicOpenFinset {A : Type u_1} [CommRing A] {B : Type u_2} [CommRing B] (φ : A →+* B) (T : Finset A) (s : A) :

                          The preimage of Spv(A)(T/s) under comap φ is Spv(B)(φ(T)/φ(s)), the finite-numerator form of comap_preimage_basicOpen.

                          @[simp]
                          theorem TauCeti.ValuationSpectrum.basicOpenFinset_inter {A : Type u_1} [CommRing A] (T₁ T₂ : Finset A) (s₁ s₂ : A) :
                          basicOpenFinset T₁ s₁ ∩ basicOpenFinset T₂ s₂ = basicOpenFinset (insert s₁ T₁ * insert s₂ T₂) (s₁ * s₂)

                          Wedhorn's step (i) in the proof of Lemma 7.5: the rational opens are stable under finite intersection. Writing Uᵢ = insert sᵢ Tᵢ for the numerator set augmented by its own denominator,

                          Spv(A)(T₁/s₁) ∩ Spv(A)(T₂/s₂) = Spv(A)(U₁U₂ / s₁s₂).
                          

                          The numerator sets on the right carry their own denominators, which basicOpenFinset_insert_self shows costs nothing — the same absorption IsAdmissible performs for the admissibility condition.