Stephen Montgomery-Smith
unread,Jul 2, 2012, 4:17:35 PM7/2/12Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to sage-s...@googlegroups.com
I have a need to multiply polynomials of large degree (like degree
2000). The coefficients are non-negative real numbers, whose size
varies a lot.
Right now I am doing it using C++ code, and using the FFT. Because the
size of the coefficients varies considerably, I have to use high
precision floating point arithmetic packages like gmp or cln.
I have a gut feeling that Mathematica or GiNaC do polynomial
multiplication long hand. This is great for polynomials of small degree.
Does sage multiply large polynomials, whose coefficients are floating
point, using the FFT? And does it account for the fact that the FFT
might lose precision, whereas long hand seems to retain precision
(because the coefficients are non-negative)?
In short, can sage help me?
I looked at some announcements for FLINT, and I see this does this for
polynomials over the rationals or more exotic fields. My coefficients
are all rational, but the denominators are huge and I prefer not to go
in that direction.