dimension() broken for ideals?

63 views
Skip to first unread message

gjorgen...@my.fit.edu

unread,
May 1, 2015, 3:18:55 PM5/1/15
to sage-...@googlegroups.com
Hi,

For the following ideal, dimension() returns 0,
{{{
R.<s0,s1>=QQbar[]
I=R.ideal([ s0 + 1, s0*s1 + s0 + s1 + 1, (-2)*s0 + 1, (-10)*s1 + 5, 5*s0^2 + 10*s0*s1 ])
I.dimension()
}}}
but its variety is empty.

Also for any other ring, dimension() returns -1 for this ideal. Is this a bug with dimension()? The documentation for dimension() doesn't seem to mention the -1 case. 
It provides the following example,
{{{
R.<x,y> = PolynomialRing(GF(2147483659),order='lex')
I = R.ideal([x*y,x*y+1])
I.dimension()
}}}
which yields dimension 0 for the ideal, yet the corresponding variety is empty.

What is the expected behavior for dimension()? When the variety of the ideal in question has no points is dimension() always supposed to return -1?

mmarco

unread,
May 3, 2015, 9:25:13 AM5/3/15
to sage-...@googlegroups.com
It is definitely a bug in the dimension method.

If singular can handle the ring, sage asks singular to compute the dimension, which does correctly (the -1 is the singular convention for empty varieties).

The problem is that when the field is not supported by singular (which happens with QQbar or finite fields of characteristic bigger than 2^31) , then sage falls back to its own toy implementation. In that case, it appears that the empty case is not treated separatedly than the zero dimensional case.

Jakob Kroeker

unread,
May 6, 2015, 11:47:54 AM5/6/15
to sage-...@googlegroups.com
It is definitely a bug in the dimension method.

could you open a ticket and post the link here?

mmarco

unread,
May 6, 2015, 3:32:28 PM5/6/15
to sage-...@googlegroups.com
This is now ticket #18374
Reply all
Reply to author
Forward
0 new messages