> <\body> <\tmdoc-title> Monomial tensor product polynomials\ \; These polynomials are represented as an array of coefficients in the tensor product monomial basis. The corresponding type is , where is the type of coefficients. \ Here we describe the main functionnalities available for these polynomials. <\session|mathemagix|default> <\input> <|input> use "realroot" <\textput> <\unfolded-io> <|unfolded-io> R := ZZ['x,'y] <|unfolded-io> > <\unfolded-io> <|unfolded-io> type (R:\ Generic) <|unfolded-io> Integer> <\unfolded-io> <|unfolded-io> RT := tensor R <|unfolded-io> > <\unfolded-io> <|unfolded-io> type (RT:\ Generic) <|unfolded-io> Integer> <\textput> <\textput> Construction of polynomials from strings: <\unfolded-io> <|unfolded-io> x := RT[0]; p:= 215*x^4+10*x-3232231 <|unfolded-io> > <\unfolded-io> <|unfolded-io> p := RT \\ "215*x^4+10*x-3232231" <|unfolded-io> > <\unfolded-io> <|unfolded-io> q := polynomial(RT,"3*x^3*z-x^2*y+2") <|unfolded-io> *y+3*x*z> <\unfolded-io> <|unfolded-io> type (q:\ Generic) <|unfolded-io> MonomialTensorRingInteger> <\textput> <\textput> Arithmetic operations inherited from the coefficient ring are available: <\unfolded-io> <|unfolded-io> p+33455552 <|unfolded-io> > <\unfolded-io> <|unfolded-io> q+=p <|unfolded-io> *y+3*x*z+215*x> <\unfolded-io> <|unfolded-io> r:=q*p <|unfolded-io> +3232231*x*y-9696693*x*z-10*x*y-1389858900*x+30*x*z+4300*x-215*x*y+645*x*z+46225*x> <\textput> <\textput> Coefficients with respect to variable >: <\unfolded-io> <|unfolded-io> coefficients(r,0) <|unfolded-io> 0,0,0,0,0,0,0,0,0> <\textput> <\textput> Coefficients of all the monomials: <\unfolded-io> <|unfolded-io> coefficients(r) <|unfolded-io> 10447310772899,0,0,0,-64644600,0,0,0,100,0,3232231,0,0,-9696693,-10,0,-1389858900,30,0,0,4300,0,0,0,0,0,-215,0,0,645,0,0,46225,0,0,0> <\unfolded-io> <|unfolded-io> diff(r,'x) <|unfolded-io> *z-30*x*y-5559435600*x+120*x*z+21500*x-1290*x*y+4515*x*z+369800*x> <\unfolded-io> <|unfolded-io> diff(r,0) <|unfolded-io> *z-30*x*y-5559435600*x+120*x*z+21500*x-1290*x*y+4515*x*z+369800*x> <\unfolded-io> <|unfolded-io> diff(r,0) <|unfolded-io> *z-30*x*y-5559435600*x+120*x*z+21500*x-1290*x*y+4515*x*z+369800*x> \; <\unfolded-io> <|unfolded-io> eval(r,[1,0,-1]) <|unfolded-io> <\errput> :: , \ eval(r,[1,0,-1]) ~~~~~~~~~~~~~~~~ <\unfolded-io> <|unfolded-io> help eval <|unfolded-io> <\text> Generic>> Generic>> Generic>> <\input> <|input> \; \; <\initial> <\collection>