-
-
Notifications
You must be signed in to change notification settings - Fork 482
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
Include modular composition for polynomial rings over finite fields #38476
Conversation
The CI seems much buggier than last time I contributed... Do either of the above failures have anything to do with this PR? |
Sorry for the inconveniences. I am fixing doc build check in #38468. |
Appreciate your fix! And it's not a big problem, I only mentioned it to explain why my PR may have silly typos caught by the CI instead of local testing :) |
Ah, I thought you meant the failure of the doc build workflow. That is not related with your PR. |
Yes -- what i meant was my doc testing locally is also broken at the moment, so I wrote the documentation "blind" so was unsure whether the bug was my end of Sage's end and could not be of much help. |
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 LaTeX details, otherwise this looks great. The speedups are very impressive!
One more thought: Would it be more "standard" with respect to existing Sage naming conventions to call this method |
So I actually called this precisely
Another option would be to set
For polynomial_gf2x.pyx to have both names available and use compose_mod for these two new classes? |
Supporting both seems like an easy way to make everyone happy. That said, I have no strong opinion about it either way. |
I've pushed a change to have the new methods named as |
5fdec3b
to
b67da0f
Compare
correct latex comments from code review Co-authored-by: Lorenz Panny <[email protected]>
Modular composition was very slow for polynomial rings over finite fields, so I have exposed and used the functions from NTL / Flint.
Compared to the naive method we see very nice speed ups.
Both
./sage -t
and./sage -tox ...
are erroring on my new build after 10.4 so I'm going to let the CI catch my typos.