Zulip Chat Archive

Stream: new members

Topic: Localization at minimal prime


Dion Leijnse (Jul 14 2025 at 19:56):

Suppose we have a commutative ring RR and a minimal prime ideal pR\mathfrak{p} \subseteq R. What is the most efficient way to say that an RR-algebra SS is the localiztion of RR at p\mathfrak{p}? The most natural thing for me to write in Lean is the following:

import Mathlib

example (R S : Type) [CommRing R] [CommRing S] (p : minimalPrimes R) [Algebra R S]
    [IsLocalization.AtPrime S p] : Type := S

However, this gives me a typeclass instance error, it is not able to recognize that p is a prime ideal. I can fix this in the following way:

import Mathlib

example (R S : Type) [CommRing R] [CommRing S] (p : Ideal R) (hp : p  minimalPrimes R) [Algebra R S]
    [@IsLocalization.AtPrime _ _ S _ _ p (Ideal.minimalPrimes_isPrime hp)] : Type := S

However, this second solution is a lot more verbose. Is there a more efficient way of doing this?

Aaron Liu (Jul 14 2025 at 19:59):

add an instance

Yiming Fu (Jul 15 2025 at 10:56):

I think you can refer to docs#IsLocalization.subsingleton_primeSpectrum_of_mem_minimalPrimes.

Dion Leijnse (Jul 20 2025 at 14:26):

Thanks, that works for me!


Last updated: Dec 20 2025 at 21:32 UTC