Skip to content
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: units of polynomial rings #4691

Closed
wants to merge 12 commits into from

Conversation

EmilieUthaiwat
Copy link
Collaborator

@EmilieUthaiwat EmilieUthaiwat commented Jun 5, 2023

We proved that a polynomial is a unit if and only if all of its coefficients are nilpotent, except the constant term which is a unit.

Co-authored-by: Cyprien Chauveau cyprien.chauveau@etu.u-paris.fr
Co-authored-by: Lucas Pouillart lucas.pouillart@etu.u-paris.fr


I can backport this to mathlib3 if needed.

Open in Gitpod

@EmilieUthaiwat EmilieUthaiwat added the WIP Work in progress label Jun 5, 2023
@EmilieUthaiwat EmilieUthaiwat marked this pull request as ready for review June 5, 2023 11:56
@EmilieUthaiwat EmilieUthaiwat changed the title add Commute.IsNilpotent.add_isUnit feat: units of polynomial rings Jun 5, 2023
@EmilieUthaiwat
Copy link
Collaborator Author

This is my first pull request so I apologize in advance if it is not done correctly.

@EmilieUthaiwat EmilieUthaiwat added awaiting-review The author would like community review of the PR and removed WIP Work in progress labels Jun 5, 2023
@@ -11,6 +11,7 @@ Authors: Oliver Nash
import Mathlib.Data.Nat.Choose.Sum
import Mathlib.Algebra.Algebra.Bilinear
import Mathlib.RingTheory.Ideal.Operations
import Mathlib.Algebra.GeomSum
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How much extra does this pull in?

Copy link
Collaborator Author

@EmilieUthaiwat EmilieUthaiwat Jun 7, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mathlib.Algebra.GeomSum imports the following files:

import Mathlib.Algebra.BigOperators.Order
import Mathlib.Algebra.BigOperators.Ring
import Mathlib.Algebra.BigOperators.Intervals
import Mathlib.Tactic.Abel
import Mathlib.Data.Nat.Parity

Mathlib.RingTheory.Nilpotent already pulls in every file mentioned above, except Mathlib.Data.Nat.Parity, so the only new file imported by Mathlib.Algebra.GeomSum is Mathlib.Data.Nat.Parity.

@semorrison
Copy link
Contributor

Otherwise LGTM.

@EmilieUthaiwat
Copy link
Collaborator Author

Thank you!

@EmilieUthaiwat
Copy link
Collaborator Author

Is there anything else that I should do concerning this PR?

@j-loreaux
Copy link
Collaborator

@semorrison I don't see any reason not to merge this, but I'm not doing a maintainer merge in case you wanted to wait.

Copy link
Member

@ADedecker ADedecker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just have two small comments, after that I'm going to maintainer merge this since it has been waiting for so long.

Mathlib/RingTheory/Polynomial/Quotient.lean Outdated Show resolved Hide resolved
Mathlib/RingTheory/Polynomial/Quotient.lean Outdated Show resolved Hide resolved
@ADedecker ADedecker added awaiting-author A reviewer has asked the author a question or requested changes and removed awaiting-review The author would like community review of the PR labels Jun 30, 2023
Co-authored-by: Anatole Dedecker <anatolededecker@gmail.com>
@riccardobrasca riccardobrasca added awaiting-review The author would like community review of the PR and removed awaiting-author A reviewer has asked the author a question or requested changes labels Jul 1, 2023

/-- Let `P` be a polynomial over `R`. If `P` is a unit, then all its coefficients are nilpotent,
except its constant term which is a unit. -/
theorem coeff_isUnit_isNilpotent_of_isUnit {P : Polynomial R} (hunit : IsUnit P) :
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In this case the previous name was fine. I don't really have a preference, so keep the one you prefer.

@ADedecker
Copy link
Member

Thanks and congratulations for your first PR! 🎉
maintainer merge

@github-actions
Copy link

github-actions bot commented Jul 3, 2023

🚀 Pull request has been placed on the maintainer queue by ADedecker.

@RemyDegenne
Copy link
Contributor

bors r+

@github-actions github-actions bot added ready-to-merge This PR has been sent to bors. and removed awaiting-review The author would like community review of the PR labels Jul 4, 2023
bors bot pushed a commit that referenced this pull request Jul 4, 2023
We proved that a polynomial is a unit if and only if all of its coefficients are nilpotent, except the constant term which is a unit.

Co-authored-by: Cyprien Chauveau cyprien.chauveau@etu.u-paris.fr
Co-authored-by: Lucas Pouillart lucas.pouillart@etu.u-paris.fr



Co-authored-by: EmilieUthaiwat <102412311+EmilieUthaiwat@users.noreply.github.com>
@bors
Copy link

bors bot commented Jul 4, 2023

Pull request successfully merged into master.

Build succeeded!

The publicly hosted instance of bors-ng is deprecated and will go away soon.

If you want to self-host your own instance, instructions are here.
For more help, visit the forum.

If you want to switch to GitHub's built-in merge queue, visit their help page.

@bors bors bot changed the title feat: units of polynomial rings [Merged by Bors] - feat: units of polynomial rings Jul 4, 2023
@bors bors bot closed this Jul 4, 2023
@bors bors bot deleted the Emilie/Polynomial branch July 4, 2023 10:35
kbuzzard pushed a commit that referenced this pull request Jul 6, 2023
We proved that a polynomial is a unit if and only if all of its coefficients are nilpotent, except the constant term which is a unit.

Co-authored-by: Cyprien Chauveau cyprien.chauveau@etu.u-paris.fr
Co-authored-by: Lucas Pouillart lucas.pouillart@etu.u-paris.fr



Co-authored-by: EmilieUthaiwat <102412311+EmilieUthaiwat@users.noreply.github.com>
semorrison pushed a commit that referenced this pull request Aug 14, 2023
We proved that a polynomial is a unit if and only if all of its coefficients are nilpotent, except the constant term which is a unit.

Co-authored-by: Cyprien Chauveau cyprien.chauveau@etu.u-paris.fr
Co-authored-by: Lucas Pouillart lucas.pouillart@etu.u-paris.fr



Co-authored-by: EmilieUthaiwat <102412311+EmilieUthaiwat@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready-to-merge This PR has been sent to bors.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants