Hi, 

here is another try.

sage: R = QQ['a,b,c,w,x,y,z']
sage: (a,b,c,w,x,y,z) = R.gens()
sage: I = (x^5-a*b*c^3, x^7-w^5*a^5*b^5, b*c^3-a^7, \
b^2*a^3*c^5*x-y*z*w^2, x*y*z-w*z^2*a*b, b*x-a*w*z^9)*R 
sage: time _ = I.radical() 
CPU times: user 0.21 s, sys: 0.05 s, total: 0.26 s
Wall time: 41.03 s

And now in Singular:
(Sages default termorder is degrevlex which is dp in Singular)

So in Singular this looks like this:
cat singulartest.sing
LIB "primdec.lib";
ring R =  0,(a,b,c,w,x,y,z),dp;
ideal I = x5-abc3, x7-w5a5b5, bc3-a7, b2a3c5x-yzw2 , xyz-wz2ab, bx-awz9;
ideal s = std(I);
ideal Ir = radical(s);
ideal Sr = std(Ir);
quit;

time Singular singulartest.sing
real    0m31.848s
user    0m31.201s
sys     0m0.303s

I can hardly believe that there are 10 seconds of message passing
between singular and python, maybe something is misconfigured here ??

> What is your machine/os? Mine:
> Intel Core2Duo 2.33Ghz 3GB RAM
> 64-bit Debian/GNU Linux

I'm using Core2Duo 1.6Ghz 3GB, 32bit Gentoo Linux, but I'm really
interested in the discrepancy being around 25% in my case... 

> For me usually working with Sage's native datatypes and calling 
> I.groebner_basis (which calls Singular via pexpect) is the way to go, because 
> my inputs and outputs are small but the GB computation takes considerable 
> time.

Alright, I think I understand that now, My case looks similar, I will do
many things in python and then from time to time call Singular for a
specific thing that takes long (compared to the time it takes to call
it)

thank you 
Thomas

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to