Feature #1770
Evaluate polynomial function/class
Description
Create a class(?) to make it easier to evaluate polynomials.
A first prototype is in SparsePolyOps-cyclotomic
(historical quirk).
It is called EvalUPoly
, and is usefully faster than using a RingHom
.
Improve the design, and make it a proper new feature of CoCoALib
Related issues
History
#1 Updated by John Abbott 5 months ago
- Related to Slug #1769: FixedDivisor is sometimes surprisingly slow added
#2 Updated by John Abbott 5 months ago
- Status changed from New to In Progress
- % Done changed from 0 to 10
I made a quick prototype, and used it in a revised version of FixedDivisor
(in PolyRing.C
).
It made the code about 20 times faster (on a nasty example).
Must think about the interface, and possible generalizations.
NOTE: also move it out of SparsePolyOps-cyclotomic
... but to where?
#3 Updated by John Abbott 5 months ago
- Status changed from In Progress to Resolved
- Assignee set to John Abbott
- % Done changed from 10 to 80
I have separated the evaluation code from the cyclotomic code, and put it in a new file.
Must still document the new code: the interface is reasonable (but might be migliorabile).
#4 Updated by John Abbott about 2 months ago
- Status changed from Resolved to Feedback
- % Done changed from 80 to 90
The new code is in SparsePolyOps-eval
The current impl is rather restricted: the polynomial has to be over ZZ
, and the evaluation point must be INT/RAT.
I suggest making this "incomplete" implementation available; we can later make it more complete -- not especially hard, but will take some time.
#5 Updated by John Abbott about 1 month ago
- Status changed from Feedback to Closed
- % Done changed from 90 to 100
- Estimated time set to 3.11 h