Maple 14 on iMac Core i5 2.66 GHz 8GB (64-bit):

f := x*y^3*z^2 + x^2*y^2*z + x*y^3*z + x*y^2*z^2 + y^3*z^2 + y^3*z +
2*y^2*z^2 + 2*x*y*z + y^2*z + y*z^2 + y^2 + 2*y*z + z;
curr := 1:
TIMER := time[real]():
for i from 1 to 100 do
  curr := expand(curr*f):
  lprint(i=time[real]()-TIMER):
end do:

K=70 is 115.24 sec
K=100 is 533.79 sec

However there is a lot of overhead here because f is small and curr is
huge.  90% of the time is spent converting to and from Maple's data
structure.  If you stay in the sdmp data structure:

f := x*y^3*z^2 + x^2*y^2*z + x*y^3*z + x*y^2*z^2 + y^3*z^2 + y^3*z +
2*y^2*z^2 + 2*x*y*z + y^2*z + y*z^2 + y^2 + 2*y*z + z;
f := sdmp(f,plex(x,y,z),pack=3):
curr := sdmp(1,plex(x,y,z),pack=3):
TIMER := time[real]():
for i from 1 to 100 do
  curr := sdmp:-Multiply(f,curr):
  lprint(i=time[real]()-TIMER):
end do:

K=70 is 13.78 sec
K=100 is 53.92 sec

So there's plenty of room for improvement in dealing with large
polynomials.  The polynomial f^100 has 3.7 million terms.

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to