在 Sympy 中对多元多项式使用 div():不正确的余数?

Using div() on multivariate polynomials in Sympy: incorrect remainder?

我想在 Python 中计算多元多项式的余数,我发现 sympy 的 div() 应该可以解决问题(我还需要 sympy 进行 Gröbner 计算)。但我一直发现的问题是 div() 似乎只检查 division 的前导词,因为

q, r = div(x**2 + y, 2*x)

给出 r=y,而

q, r = div(x**2 + y, 2*y) 

给出 r=x**2+y.

我想做理想隶属度之类的事情,因此通过 G={g_1,...,g_s} 在 division 上找到一些多项式 f 的余数,在上面我现在不能依赖 div().

在使用 Sage 时我没有遇到这个问题(使用 (x^2+y)%y 得到 x^2),但我更熟悉 Python 并且更喜欢这样做通过 Python.

如果我做错了什么,有人可以告诉我吗?或者有人知道用于余数的更好的函数吗?

我找到了一个不错的选择:reduced(x**2+y, [2*y]) 给出了所需的 ([1/2], x^2)。