Ticket #1343 (new defect)

Opened 1 year ago

Last modified 2 months ago

singular factorize is randomly slow

Reported by: jbmohler Assigned to: malb
Priority: major Milestone: sage-3.4
Component: commutative algebra Keywords:
Cc:

Description

Singular's factorize command is immensely slow at times, but other times it is decent. I'd not report this as a bug except for the fact that it appears that some tuning of something might fix this.

Run this in singular (binary 3-0-4 from upstream as well):

ring R=0,(p10,g0,g1,g2,g3,g4,X1,X2),dp;
poly t=-p10^170*X1^10*X2^10+p10^130*X1^10*X2^5+p10^130*X1^5*X2^10-p10^90*X1^5*X2^5+p10^80*X1^5*X2^5-p10^40*X1^5-p10^40*X2^5+1;
factorize(t);

Repeat the factorize command a couple of times. You'll get extreme fluctation on the amount of time required to factor (nearly instantaneous all the way out to 5-10 minutes!).

Obviously, sage demonstrates the same bizarre timing statistics:

sage: R.<p10,g0,g1,g2,g3,g4,X1,X2>=QQ[]
sage: t=-p10^170*X1^10*X2^10+p10^130*X1^10*X2^5+p10^130*X1^5*X2^10-p10^90*X1^5*X2^5+p10^80*X1^5*X2^5-p10^40*X1^5-p10^40*X2^5+1
sage: time _=t.factor()
CPU times: user 25.63 s, sys: 0.02 s, total: 25.65 s
Wall time: 26.18
sage: time _=t.factor()
CPU times: user 5.95 s, sys: 0.00 s, total: 5.95 s
Wall time: 5.95
sage: time _=t.factor()
CPU times: user 310.76 s, sys: 0.21 s, total: 310.97 s
Wall time: 311.65

I've reported this to the upstream forum as well (with no response so far): http://singular.mathematik.uni-kl.de/forum/viewtopic.php?t=1652 I also just now submitted the bug through the singular bug request form.

Change History

12/03/2007 09:26:42 AM changed by was

It turns out Magma and Maple are very fast and everybody else is slow.

Here's a new 2007 paper I just found that has an algorithm for
multivariate polynomial factorization that the authors claims
blows away Maple in many cases:

          http://arxiv.org/abs/math/0701670v1

There are a lot of references in this paper.  So this might
be a very good paper to study so Sage can do something
that beats everybody. 

William

10/30/2008 10:15:53 AM changed by was

Please see also #2152, which has some additional easier-to-try examples, but is really a duplicate of this ticket (so I close it as a dupe).