On Wednesday 16 October 2024 at 06:43:30 UTC-7 Georgi Guninski wrote:

sage: Kx.<x,y>=QQ[] 
sage: I=Ideal([x*y]) 
sage: gb=I.groebner_basis(algorithm='singular:stdfglm') 

TypeError: Singular error: 
? The ideal i has to be 0-dimensional 

I believe computing the dimension of ideal requires computing groebner 
basis 
and even if this a false, computing the dimension of ideal will detect 
the constant ideal. If computing the dimension of ideal is efficient, 
this will be a major achievement. 

So `stdfglm` recognizes the ideal is not 0 dimensional, something else 
did the heavy computation of the dimension, so `stdfglm` is slower than 
the `else`. 

Is the above reasoning correct? 


No it is not. The error above only indicates that the algorithm found a 
contradiction to the assumption that the ideal is 0-dimensional; not that 
it computed what the dimension actually is.

groebner bases of 0-dimensional ideals have been proven to be easier to 
compute than the general case (there are better complexity bounds for 
them), so it is quite conceivable to that there is something to gain by 
writing an algorithm that proceeds on the assumption the ideal is 
0-dimensional and bails as soon as it finds something that is inconsistent 
with that assumption. I'd assume the singular documentation would have a 
reference to a relevant paper discussing the strategy followed by stdfglm

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/9b600b97-523d-4e0e-a237-28737be128adn%40googlegroups.com.

Reply via email to