I'd like to see what one multivariate polynomial f looks like when another one g vanishes, by rewriting the former as f = r + q g and setting g = 0. In Maple, one could do that just by computing r = prem( f, g, x ) where x is one of the indeterminates of f and g, which is effectively treating f and g as univariate polynomials over the ring of polynomials in the remaining indeterminates. Unfortunately when I try to do that in Sage it gives me the following error (but perhaps there's a simpler way?):
R.<y,z> = QQ["y,z"]
S.<x> = PolynomialRing(R, "x" )
a = x^2y - x - z
a.reduce(Ideal([xy-z]))Error in lines 4-4
Traceback (most recent call last):
File "/cocalc/lib/python3.8/site-packages/smc_sagews/sage_server.py", line 1230, in execute
exec(
File "", line 1, in <module>
File "sage/structure/element.pyx", line 493, in sage.structure.element.Element.__getattr__ (build/cythonized/sage/structure/element.c:4703)
return self.getattr_from_category(name)
File "sage/structure/element.pyx", line 506, in sage.structure.element.Element.getattr_from_category (build/cythonized/sage/structure/element.c:4815)
return getattr_from_other_class(self, cls, name)
File "sage/cpython/getattr.pyx", line 372, in sage.cpython.getattr.getattr_from_other_class (build/cythonized/sage/cpython/getattr.c:2620)
raise AttributeError(dummy_error_message)
AttributeError: 'sage.rings.polynomial.polynomial_element.Polynomial_generic_dense' object has no attribute 'reduce'