Documentation

Mathlib.RingTheory.Spectrum.Prime.Topology

The Zariski topology on the prime spectrum of a commutative (semi)ring #

Conventions #

We denote subsets of (semi)rings with s, s', etc... whereas we denote subsets of prime spectra with t, t', etc...

Inspiration/contributors #

The contents of this file draw inspiration from https://github.com/ramonfmir/lean-scheme which has contributions from Ramon Fernandez Mir, Kevin Buzzard, Kenny Lau, and Chris Hughes (on an earlier repository).

Main definitions #

Main results #

In the prime spectrum of a commutative semiring:

The Zariski topology on the prime spectrum of a commutative (semi)ring is defined via the closed sets of the topology: they are exactly those sets that are the zero locus of a subset of the ring.

Equations
    theorem PrimeSpectrum.isOpen_iff {R : Type u} [CommSemiring R] (U : Set (PrimeSpectrum R)) :
    IsOpen U ∃ (s : Set R), U = zeroLocus s

    The antitone order embedding of closed subsets of Spec R into ideals of R.

    Equations
      Instances For

        The prime spectrum of a commutative (semi)ring is a compact topological space.

        The prime spectrum of a commutative semiring has discrete Zariski topology iff it is finite and the semiring has Krull dimension zero or is trivial.

        @[deprecated PrimeSpectrum.discreteTopology_iff_finite_and_krullDimLE_zero (since := "2025-02-05")]

        The prime spectrum of a semiring has discrete Zariski topology iff there are only finitely many maximal ideals and their intersection is contained in the nilradical.

        The continuous function between prime spectra of commutative (semi)rings induced by a ring homomorphism.

        Equations
          Instances For
            theorem PrimeSpectrum.coe_comap {R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] (f : R →+* S) :
            (comap f) = f.specComap
            theorem PrimeSpectrum.comap_apply {R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] (f : R →+* S) (x : PrimeSpectrum S) :
            (comap f) x = f.specComap x
            @[simp]
            theorem PrimeSpectrum.comap_asIdeal {R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] (f : R →+* S) (y : PrimeSpectrum S) :
            @[simp]
            theorem PrimeSpectrum.comap_comp {R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] {S' : Type u_1} [CommSemiring S'] (f : R →+* S) (g : S →+* S') :
            comap (g.comp f) = (comap f).comp (comap g)
            theorem PrimeSpectrum.comap_comp_apply {R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] {S' : Type u_1} [CommSemiring S'] (f : R →+* S) (g : S →+* S') (x : PrimeSpectrum S') :
            (comap (g.comp f)) x = (comap f) ((comap g) x)
            @[simp]
            theorem PrimeSpectrum.preimage_comap_zeroLocus {R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] (f : R →+* S) (s : Set R) :
            (comap f) ⁻¹' zeroLocus s = zeroLocus (f '' s)

            The embedding has closed range if the domain (and therefore the codomain) is a ring, see PrimeSpectrum.isClosedEmbedding_comap_of_surjective. On the other hand, comap (Nat.castRingHom (ZMod 2)) does not have closed range.

            Homeomorphism between prime spectra induced by an isomorphism of semirings.

            Equations
              Instances For

                The comap of a surjective ring homomorphism is a closed embedding between the prime spectra.

                The prime spectrum of R × S is homeomorphic to the disjoint union of PrimeSpectrum R and PrimeSpectrum S.

                Equations
                  Instances For

                    basicOpen r is the open subset containing all prime ideals not containing r.

                    Equations
                      Instances For
                        @[simp]
                        theorem PrimeSpectrum.mem_basicOpen {R : Type u} [CommSemiring R] (f : R) (x : PrimeSpectrum R) :
                        x basicOpen f fx.asIdeal
                        theorem PrimeSpectrum.basicOpen_mul {R : Type u} [CommSemiring R] (f g : R) :
                        @[simp]
                        theorem PrimeSpectrum.basicOpen_pow {R : Type u} [CommSemiring R] (f : R) (n : ) (hn : 0 < n) :
                        theorem PrimeSpectrum.eq_biUnion_of_isOpen {R : Type u} [CommSemiring R] {s : Set (PrimeSpectrum R)} (hs : IsOpen s) :
                        s = ⋃ (r : R), ⋃ (_ : (basicOpen r) s), (basicOpen r)
                        theorem PrimeSpectrum.iSup_basicOpen_eq_top_iff {R : Type u} [CommSemiring R] {ι : Type u_1} {f : ιR} :
                        ⨆ (i : ι), basicOpen (f i) = Ideal.span (Set.range f) =

                        If the prime spectrum of a commutative semiring R has discrete Zariski topology, then R is canonically isomorphic to the product of its localizations at the (finitely many) maximal ideals.

                        Stacks Tag 00JA (See also PrimeSpectrum.discreteTopology_iff_finite_isMaximal_and_sInf_le_nilradical.)

                        Equations
                          Instances For
                            @[deprecated MaximalSpectrum.toPiLocalizationEquiv (since := "2025-02-12")]

                            Alias of MaximalSpectrum.toPiLocalizationEquiv.


                            If the prime spectrum of a commutative semiring R has discrete Zariski topology, then R is canonically isomorphic to the product of its localizations at the (finitely many) maximal ideals.

                            Stacks Tag 00JA (See also PrimeSpectrum.discreteTopology_iff_finite_isMaximal_and_sInf_le_nilradical.)

                            Equations
                              Instances For

                                The specialization order #

                                We endow PrimeSpectrum R with a partial order, where x ≤ y if and only if y ∈ closure {x}.

                                nhds as an order embedding.

                                Equations
                                  Instances For

                                    If x specializes to y, then there is a natural map from the localization of y to the localization of x.

                                    Equations
                                      Instances For

                                        If f : Spec S → Spec R is specializing and surjective, the topology on Spec R is the quotient topology induced by f.

                                        If f : Spec S → Spec R is generalizing and surjective, the topology on Spec R is the quotient topology induced by f.

                                        theorem PrimeSpectrum.denseRange_comap_iff_minimalPrimes {R : Type u_1} {S : Type u_2} [CommSemiring R] [CommSemiring S] (f : R →+* S) :
                                        DenseRange (comap f) ∀ (I : Ideal R) (h : I minimalPrimes R), { asIdeal := I, isPrime := } Set.range (comap f)

                                        Stacks Tag 00FL

                                        Zero loci of prime ideals are closed irreducible sets in the Zariski topology and any closed irreducible set is a zero locus of some prime ideal.

                                        Equations
                                          Instances For
                                            theorem PrimeSpectrum.basicOpen_eq_zeroLocus_of_mul_add {R : Type u} [CommSemiring R] (e f : R) (mul : e * f = 0) (add : e + f = 1) :
                                            theorem PrimeSpectrum.zeroLocus_eq_basicOpen_of_mul_add {R : Type u} [CommSemiring R] (e f : R) (mul : e * f = 0) (add : e + f = 1) :
                                            theorem PrimeSpectrum.isClopen_basicOpen_of_mul_add {R : Type u} [CommSemiring R] (e f : R) (mul : e * f = 0) (add : e + f = 1) :
                                            theorem PrimeSpectrum.exists_mul_eq_zero_add_eq_one_basicOpen_eq_of_isClopen {R : Type u} [CommSemiring R] {s : Set (PrimeSpectrum R)} (hs : IsClopen s) :
                                            ∃ (e : R) (f : R), e * f = 0 e + f = 1 s = (basicOpen e) s = (basicOpen f)
                                            theorem PrimeSpectrum.isClopen_iff_mul_add {R : Type u} [CommSemiring R] {s : Set (PrimeSpectrum R)} :
                                            IsClopen s ∃ (e : R) (f : R), e * f = 0 e + f = 1 s = (basicOpen e)
                                            theorem PrimeSpectrum.isClopen_iff_mul_add_zeroLocus {R : Type u} [CommSemiring R] {s : Set (PrimeSpectrum R)} :
                                            IsClopen s ∃ (e : R) (f : R), e * f = 0 e + f = 1 s = zeroLocus {e}

                                            Clopen subsets in the prime spectrum of a commutative semiring are in order-preserving bijection with pairs of elements with product 0 and sum 1. (By definition, (e₁, f₁) ≤ (e₂, f₂) iff e₁ * e₂ = e₁.) Both elements in such pairs must be idempotents, but there may exists idempotents that do not form such pairs (does not have a "complement"). For example, in the semiring {0, 0.5, 1} with ⊔ as + and ⊓ as *, 0.5 has no complement.

                                            Equations
                                              Instances For
                                                theorem PrimeSpectrum.isClosedMap_comap_of_isIntegral {R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] (f : R →+* S) (hf : f.IsIntegral) :
                                                theorem PrimeSpectrum.closure_image_comap_zeroLocus {R : Type u_1} {S : Type u_2} [CommRing R] [CommRing S] (f : R →+* S) (I : Ideal S) :

                                                Zero loci of minimal prime ideals of R are irreducible components in Spec R and any irreducible component is a zero locus of some minimal prime ideal.

                                                Stacks Tag 00ES

                                                Equations
                                                  Instances For

                                                    The closed point in the prime spectrum of a local ring.

                                                    Equations
                                                      Instances For
                                                        theorem PrimeSpectrum.isClopen_iff {R : Type u} [CommRing R] {s : Set (PrimeSpectrum R)} :
                                                        IsClopen s ∃ (e : R), IsIdempotentElem e s = (basicOpen e)

                                                        Clopen subsets in the prime spectrum of a commutative ring are in 1-1 correspondence with idempotent elements in the ring.

                                                        Stacks Tag 00EE

                                                        Equations
                                                          Instances For