up previous next

Introduction to Polynomials

An object of type POLY in CoCoA represents a polynomial. To fix terminology: a polynomial is a sum of terms; each term is the product of a coefficient and power-product, a power-product being a product of powers of indeterminates. (In English it is standard to use monomial to mean a power-product, however, in other languages, such as Italian, monomial connotes a power product multiplied by a scalar. In the interest of world peace, we will use the term power-product in those cases where confusion may arise.)

example

    
The following are CoCoA polynomials:

Use R ::= Q[x,y,z];
F := 3xyz + xy^2;
F;
xy^2 + 3xyz
-------------------------------
Use R ::= Q[x[1..5]];
Sum([x[N]^2 | N In 1..5]);
x[1]^2 + x[2]^2 + x[3]^2 + x[4]^2 + x[5]^2
-------------------------------
        
    
CoCoA always keeps polynomials ordered with respect to the term-orderings of their corresponding rings. The following algebraic operations on polynomials are supported:
  F^N, +F, -F, F*G, F/G if G divides F, F+G, F-G,
where F, G are polynomials and N is an integer. The result may be a rational function.

example

    
Use R ::= Q[x,y,z];
F := x^2+xy;
G := x;
F/G;
x + y
-------------------------------
F/(x+z);
(x^2 + xy)/(x + z)
-------------------------------
F^2;
x^4 + 2x^3y + x^2y^2
-------------------------------
F^(-1);
1/(x^2 + xy)
-------------------------------