Documentation

Mathlib.RingTheory.Spectrum.Prime.RingHom

Functoriality of the prime spectrum #

In this file we define the induced map on prime spectra induced by a ring homomorphism.

Main definitions #

def PrimeSpectrum.comap {R : Type u_1} {S : Type u_2} [CommSemiring R] [CommSemiring S] (f : R →+* S) (p : PrimeSpectrum S) :

The pullback of an element of PrimeSpectrum S along a ring homomorphism f : R →+* S. The bundled continuous version is PrimeSpectrum.comap.

Equations
Instances For
    @[deprecated PrimeSpectrum.comap (since := "2025-12-10")]
    def RingHom.specComap {R : Type u_1} {S : Type u_2} [CommSemiring R] [CommSemiring S] (f : R →+* S) (p : PrimeSpectrum S) :

    Alias of PrimeSpectrum.comap.


    The pullback of an element of PrimeSpectrum S along a ring homomorphism f : R →+* S. The bundled continuous version is PrimeSpectrum.comap.

    Equations
    Instances For
      @[simp]
      theorem PrimeSpectrum.comap_asIdeal {R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] (f : R →+* S) (y : PrimeSpectrum S) :
      @[deprecated PrimeSpectrum.comap_asIdeal (since := "2025-12-10")]

      Alias of PrimeSpectrum.comap_asIdeal.

      @[simp]
      theorem PrimeSpectrum.comap_id {R : Type u} [CommSemiring R] :
      comap (RingHom.id R) = fun (x : PrimeSpectrum R) => x
      @[deprecated PrimeSpectrum.comap_id (since := "2025-12-10")]
      theorem PrimeSpectrum.specComap_id {R : Type u} [CommSemiring R] :
      comap (RingHom.id R) = fun (x : PrimeSpectrum R) => x

      Alias of PrimeSpectrum.comap_id.

      @[simp]
      theorem PrimeSpectrum.comap_comp {R : Type u} {S : Type v} {S' : Type u_1} [CommSemiring R] [CommSemiring S] [CommSemiring S'] (f : R →+* S) (g : S →+* S') :
      @[deprecated PrimeSpectrum.comap_comp (since := "2025-12-10")]
      theorem PrimeSpectrum.specComap_comp {R : Type u} {S : Type v} {S' : Type u_1} [CommSemiring R] [CommSemiring S] [CommSemiring S'] (f : R →+* S) (g : S →+* S') :

      Alias of PrimeSpectrum.comap_comp.

      theorem PrimeSpectrum.comap_comp_apply {R : Type u} {S : Type v} {S' : Type u_1} [CommSemiring R] [CommSemiring S] [CommSemiring S'] (f : R →+* S) (g : S →+* S') (x : PrimeSpectrum S') :
      comap (g.comp f) x = comap f (comap g x)
      @[deprecated PrimeSpectrum.comap_comp_apply (since := "2025-12-10")]
      theorem PrimeSpectrum.specComap_comp_apply {R : Type u} {S : Type v} {S' : Type u_1} [CommSemiring R] [CommSemiring S] [CommSemiring S'] (f : R →+* S) (g : S →+* S') (x : PrimeSpectrum S') :
      comap (g.comp f) x = comap f (comap g x)

      Alias of PrimeSpectrum.comap_comp_apply.

      @[simp]
      theorem PrimeSpectrum.preimage_comap_zeroLocus {R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] (f : R →+* S) (s : Set R) :
      @[deprecated PrimeSpectrum.preimage_comap_zeroLocus (since := "2025-12-10")]
      theorem PrimeSpectrum.preimage_specComap_zeroLocus {R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] (f : R →+* S) (s : Set R) :

      Alias of PrimeSpectrum.preimage_comap_zeroLocus.

      @[deprecated PrimeSpectrum.comap_injective_of_surjective (since := "2025-12-10")]

      Alias of PrimeSpectrum.comap_injective_of_surjective.

      RingHom.comap of an isomorphism of rings as an equivalence of their prime spectra.

      Equations
      Instances For
        @[simp]
        def PrimeSpectrum.sigmaToPi {ι : Type u_3} (R : ιType u_2) [(i : ι) → CommSemiring (R i)] :
        (i : ι) × PrimeSpectrum (R i)PrimeSpectrum ((i : ι) → R i)

        The canonical map from a disjoint union of prime spectra of commutative semirings to the prime spectrum of the product semiring.

        Equations
        Instances For
          @[simp]
          theorem PrimeSpectrum.sigmaToPi_asIdeal {ι : Type u_3} (R : ιType u_2) [(i : ι) → CommSemiring (R i)] (a✝ : (i : ι) × PrimeSpectrum (R i)) :
          theorem PrimeSpectrum.sigmaToPi_injective {ι : Type u_3} (R : ιType u_2) [(i : ι) → CommSemiring (R i)] :
          theorem PrimeSpectrum.exists_maximal_notMem_range_sigmaToPi_of_infinite {ι : Type u_3} (R : ιType u_2) [(i : ι) → CommSemiring (R i)] [Infinite ι] [∀ (i : ι), Nontrivial (R i)] :
          ∃ (I : Ideal ((i : ι) → R i)) (x : I.IsMaximal), { asIdeal := I, isPrime := }Set.range (sigmaToPi R)

          An infinite product of nontrivial commutative semirings has a maximal ideal outside of the range of sigmaToPi, i.e. is not of the form πᵢ⁻¹(𝔭) for some prime 𝔭 ⊂ R i, where πᵢ : (Π i, R i) →+* R i is the projection. For a complete description of all prime ideals, see https://math.stackexchange.com/a/1563190.

          @[deprecated PrimeSpectrum.exists_maximal_notMem_range_sigmaToPi_of_infinite (since := "2025-05-24")]
          theorem PrimeSpectrum.exists_maximal_nmem_range_sigmaToPi_of_infinite {ι : Type u_3} (R : ιType u_2) [(i : ι) → CommSemiring (R i)] [Infinite ι] [∀ (i : ι), Nontrivial (R i)] :
          ∃ (I : Ideal ((i : ι) → R i)) (x : I.IsMaximal), { asIdeal := I, isPrime := }Set.range (sigmaToPi R)

          Alias of PrimeSpectrum.exists_maximal_notMem_range_sigmaToPi_of_infinite.


          An infinite product of nontrivial commutative semirings has a maximal ideal outside of the range of sigmaToPi, i.e. is not of the form πᵢ⁻¹(𝔭) for some prime 𝔭 ⊂ R i, where πᵢ : (Π i, R i) →+* R i is the projection. For a complete description of all prime ideals, see https://math.stackexchange.com/a/1563190.

          theorem PrimeSpectrum.sigmaToPi_not_surjective_of_infinite {ι : Type u_3} (R : ιType u_2) [(i : ι) → CommSemiring (R i)] [Infinite ι] [∀ (i : ι), Nontrivial (R i)] :
          theorem PrimeSpectrum.exists_comap_evalRingHom_eq {ι : Type u_3} {R : ιType u_4} [(i : ι) → CommRing (R i)] [Finite ι] (p : PrimeSpectrum ((i : ι) → R i)) :
          ∃ (i : ι) (q : PrimeSpectrum (R i)), comap (Pi.evalRingHom R i) q = p
          theorem PrimeSpectrum.sigmaToPi_bijective {ι : Type u_3} (R : ιType u_4) [(i : ι) → CommRing (R i)] [Finite ι] :
          theorem PrimeSpectrum.iUnion_range_comap_comp_evalRingHom {ι : Type u_3} {R : ιType u_4} [(i : ι) → CommRing (R i)] [Finite ι] {S : Type u_5} [CommRing S] (f : S →+* (i : ι) → R i) :
          ⋃ (i : ι), Set.range (comap ((Pi.evalRingHom R i).comp f)) = Set.range (comap f)
          @[deprecated PrimeSpectrum.iUnion_range_comap_comp_evalRingHom (since := "2025-12-11")]
          theorem PrimeSpectrum.iUnion_range_specComap_comp_evalRingHom {ι : Type u_3} {R : ιType u_4} [(i : ι) → CommRing (R i)] [Finite ι] {S : Type u_5} [CommRing S] (f : S →+* (i : ι) → R i) :
          ⋃ (i : ι), Set.range (comap ((Pi.evalRingHom R i).comp f)) = Set.range (comap f)

          Alias of PrimeSpectrum.iUnion_range_comap_comp_evalRingHom.

          @[deprecated image_comap_zeroLocus_eq_zeroLocus_comap (since := "2025-12-10")]

          Alias of image_comap_zeroLocus_eq_zeroLocus_comap.

          @[deprecated range_comap_of_surjective (since := "2025-12-10")]

          Alias of range_comap_of_surjective.

          noncomputable def Ideal.primeSpectrumOrderIsoZeroLocusOfSurj {R : Type u} {S : Type v} [CommRing R] [CommRing S] (f : R →+* S) (hf : Function.Surjective f) {I : Ideal R} (hI : RingHom.ker f = I) :

          Let f : R →+* S be a surjective ring homomorphism, then Spec S is order-isomorphic to Z(I) where I = ker f.

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

            Spec (R / I) is order-isomorphic to Z(I).

            Equations
            Instances For

              p is in the image of Spec S → Spec R if and only if p extended to S and restricted back to R is p.

              A prime p is in the range of Spec S → Spec R if the fiber over p is nontrivial.

              @[deprecated RingHom.strictMono_comap_of_surjective (since := "2025-12-10")]

              Alias of RingHom.strictMono_comap_of_surjective.

              @[deprecated PrimeSpectrum.residueField_comap (since := "2025-12-10")]

              Alias of PrimeSpectrum.residueField_comap.

              @[deprecated IsLocalHom.of_comap_surjective (since := "2025-12-10")]

              Alias of IsLocalHom.of_comap_surjective.