`sp_norm'
---------

sp_norm(ALG,VAR,POLY,ALGLIST)
     :: Norm computation over an algebraic number field.

RETURN
     polynomial

VAR
     The main variable of POLY

POLY
     univariate polynomial

ALG
     `root'

ALGLIST
     `root' list

   * Defined in the file `sp'.

   * Computes the norm of POLY with respect to ALG.  Namely, if we write
     K = Q(ALGLIST \ {ALG}), The function returns a product of all
     conjugates of POLY, where the conjugate of polynomial POLY is a
     polynomial in which the algebraic number ALG is substituted for
     its conjugate over K.

   * The result is a polynomial over K.

   * The method of computation depends on the input. Currently direct
     computation of resultant and Chinese remainder theorem are used
     but the selection is not necessarily optimal.  By setting the
     global variable `USE_RES' to 1, the builtin function `res()' is
     always used.

     [0] load("sp")$
     [39] A0=newalg(x^2+1)$
     [40] A1=newalg(x^2+A0)$
     [41] sp_norm(A1,x,x^3+A0*x+A1,[A1,A0]);
     x^6+(2*#0)*x^4+(#0^2)*x^2+(#0)
     [42] sp_norm(A0,x,@@,[A0]);
     x^12+2*x^8+5*x^4+1

Reference
     *Note `res': res, *Note `asq af af_noalg': asq af af_noalg

