-
Notifications
You must be signed in to change notification settings - Fork 331
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(LocalRing/MaximalIdeal/Basic): localization of a Krull dim zero ring #17549
base: master
Are you sure you want to change the base?
Conversation
PR summary c6c8da1b16Import changes for modified filesNo significant changes to the import graph Import changes for all files
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the contribution!
Some suggestions:
Co-authored-by: Yongle Hu <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you think the conclusion that R
is LocalRing
if nilradical
of R
is maximal will be used afterwards? If you think it will be useful in future, you can extract it and write it as a separate instance
.
I don't plan on using it for what I'm currently doing. However, I imagine it could be helpful to others. I will submit another pull request with this |
I think you can just add the |
Co-authored-by: Yongle Hu <[email protected]>
Co-authored-by: Yongle Hu <[email protected]>
Co-authored-by: Yongle Hu <[email protected]>
I'm getting a strange linter error in an unrelated file. Can someone please help me figure this out? |
Co-authored-by: Yongle Hu <[email protected]>
I also have no idea how to solve this problem. You could post this problem on Zulip for help. |
Co-authored-by: Alex Kontorovich <[email protected]>
Co-authored-by: Alex Kontorovich <[email protected]>
Co-authored-by: Alex Kontorovich <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the PR! I think we are pretty close to merging.
Co-authored-by: Yaël Dillies <[email protected]>
Co-authored-by: Yaël Dillies <[email protected]>
Co-authored-by: Yaël Dillies <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
maintainer merge
Algebraists, please check if you agree with the new def's name
Let `S` be the localization of a commutative semiring `R` at a submonoid `M` that does not | ||
contain 0. If the nilradical of `R` is maximal then there is a `R`-algebra isomorphism between | ||
`R` and `S`. -/ | ||
noncomputable def nilradmaxlocalizationIsSelf [h : (nilradical R).IsMaximal] (h' : (0 : R) ∉ M) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not super sure about this name
🚀 Pull request has been placed on the maintainer queue by YaelDillies. |
variable {R : Type*} [CommSemiring R] {S : Type*} [CommSemiring S] [Algebra R S] {M : Submonoid R} | ||
|
||
-- TODO: Make this an `instance` | ||
theorem LocalRing.of_nilradical_isMaximal [h : (nilradical R).IsMaximal] : |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should add one for Jacobson radical, and this should be an iff.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think a Local ring always has that the nilradical is the unique maximal ideal. I believe we need krull dimension 0 as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But it is always the Jacobson radical.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh I see what you mean now. Yes, I agree.
Let `S` be the localization of a commutative semiring `R` at a submonoid `M` that does not | ||
contain 0. If the nilradical of `R` is maximal then there is a `R`-algebra isomorphism between | ||
`R` and `S`. -/ | ||
noncomputable def nilradmaxlocalizationIsSelf [h : (nilradical R).IsMaximal] (h' : (0 : R) ∉ M) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the more common spelling of "nilradical is maximal" for commutative rings is "artinian local ring".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see that artinian local ring has the nilradical is maximal. However, I don't see the reverse implication. What about R=F[x2,x3,...]/(x_2^2,x_3^3,..)? I am assuming here that F is a field and that we have countably many x_i. I believe we have a local ring with the nilradical is maximal but the ring is not Artinian.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay sorry it's Krull dim = 0 instead.
But we don't have such a class in mathlib :(
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm would something like localization_equiv_self_of_nilradical_isMaximal
be better?...
It seems there is still a comment about a name, but otherwise LGTM, thanks! bors d+ |
✌️ maddycrim can now approve this pull request. To approve and merge a pull request, simply reply with |
(I changed the title to something more memorable) |
For theorem LocalRing.not_mem_maximalIdeal: An element
x
of a commutative local semiring is not contained in the maximal ideal if and only if it is a unit.For noncomputable def nilradmax_localization_IsSelf: Let
S
be the localization of a commutative semiringR
at a submonoidM
that does not contain 0. If the nilradical ofR
is maximal then there is a ring isomorphism betweenR
andS
.As discussed on Zulip here: https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/PR.20Permission/near/472582165