|  |  4.16.2 poly expressions 
A polynomial expression is (optional parts in square brackets):
 
a monomial (there are NO spaces allowed inside a monomial)
Monomials which contain an indexed ring variable
must be built from|  |   [coefficient] ring_variable [ exponent] [ring_variable [exponent] ...].
 | 
 ring_variableandcoefficientwith the operations*and^
an identifier of type poly
a function returning poly
polynomial expressions combined by the arithmetic operations
+,-,*,/, or^
an int expression (see  Type conversion and casting)
a type cast to poly
 
Example:
 |  | ring S=0,(x,y,z,a(1)),dp;
2x, x3, 2x2y3, xyz, 2xy2; //  are monomials
2*x, x^3, 2*x^2*y^3, x*y*z, 2*x*y^2; // are poly expressions
2*a(1); // is a valid polynomial expression (a(1) is a name of a variable),
        // but not 2a(1) (is a syntax error)
2*x^3;  // is a valid polynomial expression equal to 2x3 (a valid monomial)
        // but not equal to 2x^3 which will be interpreted as (2x)^3
        // since 2x is a monomial
  ring r=0,(x,y),dp;
  poly f = 10x2y3 +2x2y2-2xy+y -x+2;
  lead(f);
==> 10x2y3
  leadmonom(f);
==> x2y3
  simplify(f,1);     // normalize leading coefficient
==> x2y3+1/5x2y2-1/5xy-1/10x+1/10y+1/5
  poly g = 1/2x2 + 1/3y;
  cleardenom(g);
==> 3x2+2y
  int i = 102;
  poly(i);
==> 102
  typeof(_);
==> poly
 | 
 
See 
 Type conversion and casting;
 ring.
 
 |