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. El viernes, 1 de mayo de 2015, 21:18:55 (UTC+2), gjorgen...@my.fit.edu escribió: > > 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? > -- 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 post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.