I consider this as a bug, too. My guess is, that it comes from the Singular interface:
sage: R.<x,y> = PolynomialRing(QQ, order='negdeglex') sage: f = 1 + x sage: I = R.ideal(x^2) sage: import sage.libs.singular.function_factory sage: reduce = sage.libs.singular.function_factory.ff.reduce sage: reduce(f, I) 1 but: SINGULAR / Development A Computer Algebra System for Polynomial Computations / version 4.1 .1 0< by: W. Decker, G.-M. Greuel, G. Pfister, H. Schoenemann \ Feb 2018 FB Mathematik der Universitaet, D-67653 Kaiserslautern \ > ring r = 0,(x, y),lp; > poly f,g = 1+x, x^2; > ideal I = (g); > reduce(f,I); x+1 Note, that in Sage f.reduce(I) returns 1, as well, even though is not implemented as above, but using the Singular kernel function kNF. Anyway, this seems to be a task for Singular experts. On Monday, April 6, 2020 at 9:46:26 AM UTC+2, Yang Zhou wrote: > > Hi, > > I am trying to truncate a multi-variable polynomial by moding out higher > order term and found > the following (simplified) example. I am wondering if it is a bug. > > > *Reproducible Example: * > >> R.<x,y> = PolynomialRing(QQ, order='negdeglex') >> > f = 1 + x >> I = R.ideal(x^2) >> f.mod(I) >> > *Expected output:* > >> 1 + x >> > *Actual output:* > >> 1 >> > > > *Note: * > The actual output will be 1+x when I omit the "order='negdeglex" parameter. > > *SageMath version:* > SageMath version 9.0, Release Date: 2020-01-01 > > *Operating system:* > OS: Ubuntu 19.10 x86_64 > Kernel: 5.3.0-45-generic > > Best regards, > Yang > -- 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/f1c2216c-23d9-438c-a587-7f4b92848974%40googlegroups.com.