-
Notifications
You must be signed in to change notification settings - Fork 235
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: add some lemmas about nthRootsFinset #7464
Conversation
From flt-regular. Co-authored-by: Andrew Yang <the.erd.one@gmail.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.
Would you mind to try to promote nthRootsFinset
to a Subsemigroup
? We surely need a Fintype
instance, but then maybe the rest just works. (Unfortunately it is not a Submonoid
in general, but it can maybe be done with neZero n
).
Co-authored-by: Riccardo Brasca <riccardo.brasca@gmail.com>
theorem one_mem_nthRootsFinset (hn : 0 < n) : 1 ∈ nthRootsFinset n R := by | ||
rw [mem_nthRootsFinset hn, one_pow] | ||
|
||
def nthRootsSubsemigroup (n : ℕ) (R : Type*) [CommRing R] [IsDomain R] : Subsemigroup R where |
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.
@riccardobrasca was this the kind of thing you were thinking of?
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 meant to change the definition of nthRootsFinset
to make it a Subsemigroup
instead of a Finset
, so mul_mem_nthRootsFinset
will be automatic. It's possible that this breaks a lot of things, in that case I don't think it is worth.
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.
Pushed - not very excited so far. I'd like to see the impact on flt-regular before landing this.
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. It should be possible to also add an instance of Submonoid
provided we have NeZero n
, adding an example
that checks we are not creating a diamond.
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've reverted those changes because I'm not at all convinced they're making things better, especially when dealing with product over |
OK, no problem! bors d+ |
✌️ Ruben-VandeVelde can now approve this pull request. To approve and merge a pull request, simply reply with |
bors merge |
From flt-regular. Co-authored-by: Andrew Yang <the.erd.one@gmail.com>
Pull request successfully merged into master. Build succeeded: |
From flt-regular. Co-authored-by: Andrew Yang <the.erd.one@gmail.com>
From flt-regular.
Co-authored-by: Andrew Yang the.erd.one@gmail.com