`setmod_ff'
-----------

setmod_ff([PRIME|POLY])
setmod_ff(PRIME,N])
     :: Sets/Gets the current base fields.

RETURN
     number or polynomial

PRIME
     prime

POLY
     univariate polynomial irreducible over GF(2)

N
     the extension degree

   * If the argument is a non-negative integer PRIME, GF(PRIME) is set
     as the current base field.

   * If the argument is a polynomial POLY, GF(2^deg(POLY mod 2)) =
     GF(2)[t]/(POLY(t) mod2) is set as the current base field.

   * If the arguments are a prime P and an extension degree N, GF(P^N)
     is set as the current base field. P^N must be less than 2^29 and
     if P is greater than or equal to 2^14, then N must be equal to 1.

   * If no argument is specified, the modulus indicating the current
     base field is returned. If the current base field is GF(PRIME),
     PRIME is returned. If it is GF(2^N), the defining polynomial is
     returned.  If it is GF(P^N), where P^N is less than 2^14,
     [P,DEFPOLY,PRIM_ELEM] is returned. Here, DEFPOLY is the defining
     polynomial of the N-th extension, and PRIM_ELEM is the generator
     of the multiplicative group of GF(P^N).

   * Any irreducible univariate polynomial over GF(2) is available to
     set GF(2^N). However the use of `defpoly_mod2()' is recommended
     for efficiency.

     [174] defpoly_mod2(100);
     x^100+x^15+1
     [175] setmod_ff(@@);
     x^100+x^15+1
     [176] setmod_ff();
     x^100+x^15+1
     [177] setmod_ff(2,5);
     [2,x^5+x^2+1,x]

References
     *Note `defpoly_mod2': defpoly_mod2

