#18547: Improve polynomial powering in positive characteristic
-------------------------+-------------------------------------------------
Reporter: bruno | Owner:
Type: | Status: new
enhancement | Milestone: sage-6.8
Priority: major | Keywords: polynomial, powering
Component: | Authors: Bruno Grenet
commutative algebra | Report Upstream: N/A
Merged in: | Branch:
Reviewers: | u/bruno/polynomial_powering_positive_characteristic
Work issues: | Dependencies:
Commit: |
Stopgaps: |
-------------------------+-------------------------------------------------
Before:
{{{#!python
sage: R.<x> = PolynomialRing(GF(5), sparse=True)
sage: (1+x)^(5^10)
... (hangs for ever)
}}}
After:
{{{#!python
sage: R.<x> = PolynomialRing(GF(5), sparse=True)
sage: (1+x)^(5^10)
x^9765625 + 1
}}}
**Notes.**
1. I've tried to be careful with quite extensive tests not to slow down
the computations for "easy" cases. This explains the threshold values in
the code.
2. This is related to #7253 and #12660. Though, there is another problem
for non-sparse polynomials: Simply assigning the value and printing the
polynomial take a very long time. Compare the timings for
{{{#!python
sage: R.<x> = ZZ[]
sage: 1+x^5^10
x^9765625 + 1
}}}
and
{{{#!python
sage: R.<x> = GF(5)[]
sage: 1+x^5^10
x^9765625 + 1
}}}
Thus for tickets #7253 and #12660 to be closed, it remains to handle
this other problem, but this is not the purpose of this ticket.
--
Ticket URL: <http://trac.sagemath.org/ticket/18547>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.