Documentation

Mathlib.RingTheory.Localization.AtPrime.Basic

Localizations of commutative rings at the complement of a prime ideal #

Main definitions #

Main results #

Implementation notes #

See RingTheory.Localization.Basic for a design overview.

Tags #

localization, ring localization, commutative ring localization, characteristic predicate, commutative ring, field of fractions

@[reducible, inline]
abbrev IsLocalization.AtPrime {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (P : Ideal R) [hp : P.IsPrime] :

Given a prime ideal P, the typeclass IsLocalization.AtPrime S P states that S is isomorphic to the localization of R at the complement of P.

Instances For
    @[reducible, inline]
    abbrev Localization.AtPrime {R : Type u_1} [CommSemiring R] (P : Ideal R) [hp : P.IsPrime] :
    Type u_1

    Given a prime ideal P, Localization.AtPrime P is a localization of R at the complement of P, as a quotient type.

    Instances For

      The localization of an integral domain at the complement of a prime ideal is an integral domain.

      The localization of R at the complement of a prime ideal is a local ring.

      def IsLocalization.AtPrime.orderIsoOfPrime {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] :
      { p : Ideal S // p.IsPrime } โ‰ƒo { p : Ideal R // p.IsPrime โˆง p โ‰ค I }

      The prime ideals in the localization of a commutative ring at a prime ideal I are in order-preserving bijection with the prime ideals contained in I.

      Instances For
        @[simp]
        theorem IsLocalization.AtPrime.coe_orderIsoOfPrime_symm_apply_coe {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] (aโœ : { p : Ideal R // p.IsPrime โˆง p โ‰ค I }) :
        โ†‘โ†‘((RelIso.symm (orderIsoOfPrime S I)) aโœ) = โ‹‚ (s : Submodule S S), โ‹‚ (_ : โ†‘โ†‘((OrderIso.setCongr (fun (p : Ideal R) => p.IsPrime โˆง Disjoint โ†‘I.primeCompl โ†‘p) (fun (p : Ideal R) => p.IsPrime โˆง p โ‰ค I) โ‹ฏ).symm aโœ) โІ โ‡‘(algebraMap R S) โปยน' โ†‘s), โ†‘s
        @[simp]
        theorem IsLocalization.AtPrime.coe_orderIsoOfPrime_apply_coe {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] (aโœ : { p : Ideal S // p.IsPrime }) :
        โ†‘โ†‘((orderIsoOfPrime S I) aโœ) = โ‡‘(algebraMap R S) โปยน' โ†‘โ†‘aโœ
        def IsLocalization.AtPrime.primeSpectrumOrderIso {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] :
        PrimeSpectrum S โ‰ƒo โ†‘(Set.Iic { asIdeal := I, isPrime := hI })

        The prime spectrum of the localization of a commutative ring R at a prime ideal I are in order-preserving bijection with the interval $(-โˆž, I]$ in the prime spectrum of R.

        Instances For
          @[simp]
          theorem IsLocalization.AtPrime.coe_primeSpectrumOrderIso_apply_coe_asIdeal {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] (aโœ : PrimeSpectrum S) :
          โ†‘(โ†‘((primeSpectrumOrderIso S I) aโœ)).asIdeal = โ‡‘(algebraMap R S) โปยน' โ†‘aโœ.asIdeal
          @[simp]
          theorem IsLocalization.AtPrime.coe_primeSpectrumOrderIso_symm_apply_asIdeal {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] (aโœ : โ†‘(Set.Iic { asIdeal := I, isPrime := hI })) :
          โ†‘((RelIso.symm (primeSpectrumOrderIso S I)) aโœ).asIdeal = โ‹‚ (s : Submodule S S), โ‹‚ (_ : โ†‘โ†‘((OrderIso.setCongr (fun (p : Ideal R) => p.IsPrime โˆง Disjoint โ†‘I.primeCompl โ†‘p) (fun (p : Ideal R) => p.IsPrime โˆง p โ‰ค I) โ‹ฏ).symm โŸจ(โ†‘aโœ).asIdeal, โ‹ฏโŸฉ) โІ โ‡‘(algebraMap R S) โปยน' โ†‘s), โ†‘s
          theorem IsLocalization.AtPrime.isUnit_to_map_iff {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] (x : R) :
          IsUnit ((algebraMap R S) x) โ†” x โˆˆ I.primeCompl
          theorem IsLocalization.AtPrime.to_map_mem_maximal_iff {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] (x : R) (h : IsLocalRing S := โ‹ฏ) :
          (algebraMap R S) x โˆˆ IsLocalRing.maximalIdeal S โ†” x โˆˆ I
          theorem IsLocalization.AtPrime.isUnit_mk'_iff {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] (x : R) (y : โ†ฅI.primeCompl) :
          IsUnit (mk' S x y) โ†” x โˆˆ I.primeCompl
          theorem IsLocalization.AtPrime.mk'_mem_maximal_iff {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (I : Ideal R) [hI : I.IsPrime] [IsLocalization.AtPrime S I] (x : R) (y : โ†ฅI.primeCompl) (h : IsLocalRing S := โ‹ฏ) :
          mk' S x y โˆˆ IsLocalRing.maximalIdeal S โ†” x โˆˆ I

          The unique maximal ideal of the localization at I.primeCompl lies over the ideal I.

          The image of I in the localization at I.primeCompl is a maximal ideal, and in particular it is the unique maximal ideal given by the local ring structure AtPrime.isLocalRing

          noncomputable def Localization.localRingHom {R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R โ†’+* P) (hIJ : I = Ideal.comap f J) :

          For a ring hom f : R โ†’+* S and a prime ideal J in S, the induced ring hom from the localization of R at J.comap f to the localization of S at J.

          To make this definition more flexible, we allow any ideal I of R as input, together with a proof that I = J.comap f. This can be useful when I is not definitionally equal to J.comap f.

          Instances For
            @[simp]
            theorem Localization.localRingHom_to_map {R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R โ†’+* P) (hIJ : I = Ideal.comap f J) (x : R) :
            @[simp]
            theorem Localization.localRingHom_mk' {R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R โ†’+* P) (hIJ : I = Ideal.comap f J) (x : R) (y : โ†ฅI.primeCompl) :
            (localRingHom I J f hIJ) (IsLocalization.mk' (Localization.AtPrime I) x y) = IsLocalization.mk' (Localization.AtPrime J) (f x) โŸจf โ†‘y, โ‹ฏโŸฉ
            @[simp]
            theorem Localization.localRingHom_mk {R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R โ†’+* P) (hIJ : I = Ideal.comap f J) (x : R) (y : โ†ฅI.primeCompl) :
            (localRingHom I J f hIJ) (mk x y) = mk (f x) โŸจf โ†‘y, โ‹ฏโŸฉ
            instance Localization.isLocalHom_localRingHom {R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [hJ : J.IsPrime] (f : R โ†’+* P) (hIJ : I = Ideal.comap f J) :
            theorem Localization.localRingHom_unique {R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] (J : Ideal P) [J.IsPrime] (f : R โ†’+* P) (hIJ : I = Ideal.comap f J) {j : Localization.AtPrime I โ†’+* Localization.AtPrime J} (hj : โˆ€ (x : R), j ((algebraMap R (Localization.AtPrime I)) x) = (algebraMap P (Localization.AtPrime J)) (f x)) :
            localRingHom I J f hIJ = j
            theorem Localization.localRingHom_comp {R : Type u_1} [CommSemiring R] {P : Type u_3} [CommSemiring P] (I : Ideal R) [hI : I.IsPrime] {S : Type u_4} [CommSemiring S] (J : Ideal S) [hJ : J.IsPrime] (K : Ideal P) [hK : K.IsPrime] (f : R โ†’+* S) (hIJ : I = Ideal.comap f J) (g : S โ†’+* P) (hJK : J = Ideal.comap g K) :
            localRingHom I K (g.comp f) โ‹ฏ = (localRingHom J K g hJK).comp (localRingHom I J f hIJ)
            noncomputable def Localization.localAlgHom {R : Type u_1} [CommSemiring R] {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [Algebra R P] (I : Ideal S) [I.IsPrime] (J : Ideal P) [J.IsPrime] (f : S โ†’โ‚[R] P) (hIJ : I = Ideal.comap f J) :

            For an algebra hom f : S โ†’โ‚[R] P and a prime ideal J in P, the induced ring hom from the localization of R at J โˆฉ S to the localization of P at J.

            Instances For
              @[simp]
              theorem Localization.localAlgHom_apply {R : Type u_1} [CommSemiring R] {S : Type u_2} [CommSemiring S] [Algebra R S] {P : Type u_3} [CommSemiring P] [Algebra R P] (I : Ideal S) [I.IsPrime] (J : Ideal P) [J.IsPrime] (f : S โ†’โ‚[R] P) (hIJ : I = Ideal.comap f J) (x : Localization.AtPrime I) :
              (localAlgHom I J f hIJ) x = (localRingHom I J f.toRingHom hIJ) x
              theorem Localization.localRingHom_bijective_of_saturated_inf_eq_top {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] {P : Ideal S} [P.IsPrime] {s : Subalgebra R S} (H : s.saturation (P.primeCompl โŠ“ s.toSubmonoid) โ‹ฏ = โŠค) (p : Ideal โ†ฅs) [p.IsPrime] [P.LiesOver p] :
              Function.Bijective โ‡‘(localRingHom p P (algebraMap (โ†ฅs) S) โ‹ฏ)
              @[implicit_reducible]
              noncomputable instance Localization.AtPrime.instAlgebraOfLiesOver {A : Type u_4} {B : Type u_5} [CommRing A] [CommRing B] [Algebra A B] (p : Ideal A) [p.IsPrime] (P : Ideal B) [P.IsPrime] [P.LiesOver p] :
              @[reducible, inline]
              noncomputable abbrev Localization.AtPrime.mapPiEvalRingHom {ฮน : Type u_4} {R : ฮน โ†’ Type u_5} [(i : ฮน) โ†’ CommSemiring (R i)] {i : ฮน} (I : Ideal (R i)) [I.IsPrime] :

              Localization.localRingHom specialized to a projection homomorphism from a product ring.

              Instances For
                theorem Localization.AtPrime.mapPiEvalRingHom_bijective {ฮน : Type u_4} {R : ฮน โ†’ Type u_5} [(i : ฮน) โ†’ CommSemiring (R i)] {i : ฮน} (I : Ideal (R i)) [I.IsPrime] :
                theorem Localization.AtPrime.mapPiEvalRingHom_comp_algebraMap {ฮน : Type u_4} {R : ฮน โ†’ Type u_5} [(i : ฮน) โ†’ CommSemiring (R i)] {i : ฮน} (I : Ideal (R i)) [I.IsPrime] :
                theorem Localization.AtPrime.mapPiEvalRingHom_algebraMap_apply {ฮน : Type u_4} {R : ฮน โ†’ Type u_5} [(i : ฮน) โ†’ CommSemiring (R i)] {i : ฮน} (I : Ideal (R i)) [I.IsPrime] {r : (i : ฮน) โ†’ R i} :
                (mapPiEvalRingHom I) ((algebraMap ((i : ฮน) โ†’ R i) (Localization.AtPrime (Ideal.comap (Pi.evalRingHom R i) I))) r) = (algebraMap (R i) (Localization.AtPrime I)) (r i)
                theorem Ideal.under_map_of_isLocalizationAtPrime {R : Type u_1} [CommSemiring R] (q : Ideal R) [q.IsPrime] {S : Type u_4} [CommSemiring S] [Algebra R S] [IsLocalization.AtPrime S q] {p : Ideal R} [p.IsPrime] (hpq : p โ‰ค q) :
                under R (map (algebraMap R S) p) = p
                theorem IsLocalization.liesOver_of_isPrime_of_disjoint {R : Type u_1} [CommSemiring R] {S : Type u_4} [CommSemiring S] [Algebra R S] {R' : Type u_5} {S' : Type u_6} (M : Submonoid R) (T : Submonoid S) [CommSemiring R'] [CommSemiring S'] [Algebra R R'] [Algebra S S'] [Algebra R' S'] [Algebra R S'] [IsScalarTower R S S'] [IsScalarTower R R' S'] [IsLocalization M R'] [IsLocalization T S'] (p : Ideal R) {P : Ideal S} [P.IsPrime] [P.LiesOver p] (disj : Disjoint โ†‘T โ†‘P) :

                If R' (resp. S') is the localization of R (resp. S) and P lies over p then the image of P in S' lies over the image of p in R'.

                theorem IsLocalization.AtPrime.isPrime_map_of_liesOver {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (p : Ideal R) [p.IsPrime] (Sโ‚š : Type u_5) [CommSemiring Sโ‚š] [Algebra S Sโ‚š] [IsLocalization (Algebra.algebraMapSubmonoid S p.primeCompl) Sโ‚š] (P : Ideal S) [P.IsPrime] [P.LiesOver p] :
                (Ideal.map (algebraMap S Sโ‚š) P).IsPrime
                theorem IsLocalization.AtPrime.map_eq_maximalIdeal {R : Type u_1} [CommSemiring R] (p : Ideal R) [p.IsPrime] (Rโ‚š : Type u_4) [CommSemiring Rโ‚š] [Algebra R Rโ‚š] [IsLocalization.AtPrime Rโ‚š p] [IsLocalRing Rโ‚š] :
                instance IsLocalization.AtPrime.isMaximal_map {R : Type u_1} [CommSemiring R] (p : Ideal R) [p.IsPrime] (Rโ‚š : Type u_4) [CommSemiring Rโ‚š] [Algebra R Rโ‚š] [IsLocalization.AtPrime Rโ‚š p] [IsLocalRing Rโ‚š] :
                (Ideal.map (algebraMap R Rโ‚š) p).IsMaximal
                theorem IsLocalization.AtPrime.comap_map_of_isMaximal {R : Type u_1} [CommSemiring R] (S : Type u_2) [CommSemiring S] [Algebra R S] (p : Ideal R) [p.IsPrime] (Sโ‚š : Type u_5) [CommSemiring Sโ‚š] [Algebra S Sโ‚š] [IsLocalization (Algebra.algebraMapSubmonoid S p.primeCompl) Sโ‚š] (P : Ideal S) [P.IsMaximal] [P.LiesOver p] :
                Ideal.comap (algebraMap S Sโ‚š) (Ideal.map (algebraMap S Sโ‚š) P) = P
                noncomputable def IsLocalization.AtPrime.equivQuotMaximalIdeal {R : Type u_7} [CommRing R] (p : Ideal R) [p.IsMaximal] (Rโ‚š : Type u_8) [CommRing Rโ‚š] [Algebra R Rโ‚š] [IsLocalization.AtPrime Rโ‚š p] [IsLocalRing Rโ‚š] :

                The isomorphism R โงธ p โ‰ƒ+* Rโ‚š โงธ maximalIdeal Rโ‚š, where Rโ‚š satisfies IsLocalization.AtPrime Rโ‚š p. In particular, localization preserves the residue field.

                Instances For
                  @[simp]
                  theorem IsLocalization.AtPrime.equivQuotMaximalIdeal_apply_mk {R : Type u_7} [CommRing R] (p : Ideal R) [p.IsMaximal] (Rโ‚š : Type u_8) [CommRing Rโ‚š] [Algebra R Rโ‚š] [IsLocalization.AtPrime Rโ‚š p] [IsLocalRing Rโ‚š] (x : R) :
                  @[simp]
                  theorem IsLocalization.AtPrime.equivQuotMaximalIdeal_symm_apply_mk {R : Type u_7} [CommRing R] (p : Ideal R) [p.IsMaximal] (Rโ‚š : Type u_8) [CommRing Rโ‚š] [Algebra R Rโ‚š] [IsLocalization.AtPrime Rโ‚š p] [IsLocalRing Rโ‚š] (x : R) (s : โ†ฅp.primeCompl) :
                  @[deprecated IsLocalization.AtPrime.equivQuotMaximalIdeal (since := "2025-11-13")]
                  def equivQuotMaximalIdealOfIsLocalization {R : Type u_7} [CommRing R] (p : Ideal R) [p.IsMaximal] (Rโ‚š : Type u_8) [CommRing Rโ‚š] [Algebra R Rโ‚š] [IsLocalization.AtPrime Rโ‚š p] [IsLocalRing Rโ‚š] :

                  Alias of IsLocalization.AtPrime.equivQuotMaximalIdeal.


                  The isomorphism R โงธ p โ‰ƒ+* Rโ‚š โงธ maximalIdeal Rโ‚š, where Rโ‚š satisfies IsLocalization.AtPrime Rโ‚š p. In particular, localization preserves the residue field.

                  Instances For
                    theorem IsLocalization.AtPrime.comap_map_eq_map {S : Type u_6} {R : Type u_7} [CommRing R] (p : Ideal R) [p.IsMaximal] {Sโ‚š : Type u_9} [CommRing S] [Algebra R S] [CommRing Sโ‚š] [Algebra S Sโ‚š] [Algebra R Sโ‚š] [IsLocalization (Algebra.algebraMapSubmonoid S p.primeCompl) Sโ‚š] [IsScalarTower R S Sโ‚š] :
                    Ideal.comap (algebraMap S Sโ‚š) (Ideal.map (algebraMap R Sโ‚š) p) = Ideal.map (algebraMap R S) p
                    noncomputable def IsLocalization.AtPrime.equivQuotientMapMaximalIdeal (S : Type u_6) {R : Type u_7} [CommRing R] (p : Ideal R) [p.IsMaximal] (Rโ‚š : Type u_8) [CommRing Rโ‚š] [Algebra R Rโ‚š] [IsLocalization.AtPrime Rโ‚š p] [IsLocalRing Rโ‚š] (Sโ‚š : Type u_9) [CommRing S] [Algebra R S] [CommRing Sโ‚š] [Algebra S Sโ‚š] [Algebra R Sโ‚š] [Algebra Rโ‚š Sโ‚š] [IsLocalization (Algebra.algebraMapSubmonoid S p.primeCompl) Sโ‚š] [IsScalarTower R S Sโ‚š] [IsScalarTower R Rโ‚š Sโ‚š] [p.IsMaximal] :

                    The isomorphism S โงธ pS โ‰ƒ+* Sโ‚š โงธ pยทSโ‚š, where Sโ‚š is the localization of S at the (image) of the complement of p

                    Instances For