-
Notifications
You must be signed in to change notification settings - Fork 297
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
[Merged by Bors] - feat(ring_theory/*): generalise minpoly.dvd
to integrally closed rings
#18021
Conversation
This PR is now ready for review. If someone has some advice on where the main results could be put, that would be super helpful. |
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.
some random stuff I saw - I'm too tired but I'll keep reviewing in the morning. it seems a lot of the results you have are strictly stronger than some already-existing ones so I'd just replace those in-place.
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.
Can you please fix all the linter errors and change the name of temporary_file
file?
We still don't know that a gcd_monoid
is integrally closed, right?
Good! So there should be at least two or three results that can be generalized to integrally closed rings. |
@@ -125,6 +125,19 @@ begin | |||
aeval_alg_hom_apply, aeval_map_algebra_map, aeval_def, hP.2, _root_.map_zero] | |||
end | |||
|
|||
lemma is_integral_of_commuting_diagram {R S T U : Type*} [nontrivial S] [nontrivial T] |
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.
Same comment as above about the name. This can maybe be golfed introducing some is_scalar_tower
, but I am not sure.
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 guess using is_scalar_tower
is equivalent to this, since we have ring_hom.to_algebra
. Which one would you think is most useful/practical to use?
I didn't check carefully, but it seems that the result about the minimal polynomial follow by the fact that irreducible over I think that the confusion is that there are two things people call "Gauss lemma":
The theory of minimal polynomial needed the second one. |
…egrally closed rings (#18147) In this PR, we prove Gauss's lemma for integrally closed rings. See #18021 and #11523 for previous discussion on the topic. We also show that integrally closed domains are precisely the domains in which Gauss's lemma holds for monic polynomials. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/stream/144837-PR-reviews/topic/.2318021.20generalizing.20theory.20of.20minpoly) Co-authored-by: Junyan Xu <junyanxu.math@gmail.com> Co-authored-by: Paul Lezeau <paul.lezeau@gmail.com>
This PR/issue depends on: |
Not that the other PR has been merged, can you summarize what is done in this one? For example, I guess the description needs to be updated. |
Sure ! I'll first update the code - I think some of the lemmas I had written for the original proofs are no longer necessary for instance - and then update the summary. |
exact (lt_iff_not_ge _ _ ).mp h₂ (degree_le_of_dvd h₁ hc), | ||
end | ||
|
||
lemma eq_zero_of_nat_degree_lt {p q : R[X]} (h₁ : p ∣ q) (h₂ : nat_degree q < nat_degree p) : |
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.
If I am not confused by the implications, you can use this to generalize polynomial.monic.not_dvd_of_degree_lt removing the monic assumption. In doing so you should change the name of polynomial.monic.not_dvd_of_degree_lt, if this means modifying a lot of files where it is used can you please open another PR and asking for my review? It can be merged very quickly.
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.
Sure, I'll try and have a go at that later on today!
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.
Haha polynomial.monic.not_dvd_of_degree_lt was added by me days ago, so not many things depend on it. It holds for any semiring without need of no_zero_divisor though. Since this section has no_zero_divisors
present, you can indeed prove a version without monic
here.
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.
Good point! Well I've just added the other version without monic
- it's probably good to have both anyway
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 I guess in that case no need to remove polynomial.monic.not_dvd_of_degree_lt
from the files that use it :)
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.
Yes, I didn't realize they had orthogonal assumptions.
Thanks! bors d+ |
✌️ Paul-Lez can now approve this pull request. To approve and merge a pull request, simply reply with |
bors merge |
…ngs (#18021) This PR generalizes some of the theory of `minpoly` to the setting of integrally closed rings. The main results proven here are: - `minpoly.is_integrally_closed_eq_field_fractions` and variants of it - `minpoly.is_integrally_closed_dvd` - `monic.dvd_of_fraction_map_dvd_fraction_map` In a following PR, I will remove instances of `gcd_domain_dvd` (and the other results this PR generalises) from other files, and replace the file `minpoly.gcd_domain` by `minpoly.is_integrally_closed` Co-authored-by: Junyan Xu <junyanxu.math@gmail.com> Co-authored-by: Paul Lezeau <paul.lezeau@gmail.com>
Pull request successfully merged into master. Build succeeded: |
minpoly.dvd
to integrally closed ringsminpoly.dvd
to integrally closed rings
This PR generalizes some of the theory of
minpoly
to the setting of integrally closed rings. The main results proven here are:minpoly.is_integrally_closed_eq_field_fractions
and variants of itminpoly.is_integrally_closed_dvd
monic.dvd_of_fraction_map_dvd_fraction_map
In a following PR, I will remove instances of
gcd_domain_dvd
(and the other results this PR generalises) from other files, and replace the fileminpoly.gcd_domain
byminpoly.is_integrally_closed
Co-authored-by: Junyan Xu junyanxu.math@gmail.com