`primadec', `primedec'
----------------------

primadec(PLIST,VLIST)

primedec(PLIST,VLIST)
     :: Computes decompositions of ideals.

RETURN
PLIST
     list of polynomials

VLIST
     list of variables

   * Function `primadec()' and `primedec' are defined in `primdec'.

   * `primadec()', `primedec()' are the function for primary ideal
     decomposition and prime decomposition of the radical over the
     rationals respectively.

   * The arguments are a list of polynomials and a list of variables.
     These functions accept ideals with rational function coefficients
     only.

   * `primadec' returns the list of pair lists consisting a primary
     component and its associated prime.

   * `primedec' returns the list of prime components.

   * Each component is a Groebner basis and the corresponding term order
     is indicated by the global variables `PRIMAORD', `PRIMEORD'
     respectively.

   * `primadec' implements the primary decompostion algorithm in
     `[Shimoyama,Yokoyama]'.

   * If one only wants to know the prime components of an ideal, then
     use `primedec' because `primadec' may need additional costs if an
     input ideal is not radical.

     [84] load("primdec")$
     [102] primedec([p*q*x-q^2*y^2+q^2*y,-p^2*x^2+p^2*x+p*q*y,
     (q^3*y^4-2*q^3*y^3+q^3*y^2)*x-q^3*y^4+q^3*y^3,
     -q^3*y^4+2*q^3*y^3+(-q^3+p*q^2)*y^2],[p,q,x,y]);
     [[y,x],[y,p],[x,q],[q,p],[x-1,q],[y-1,p],[(y-1)*x-y,q*y^2-2*q*y-p+q]]
     [103] primadec([x,z*y,w*y^2,w^2*y-z^3,y^3],[x,y,z,w]);
     [[[x,z*y,y^2,w^2*y-z^3],[z,y,x]],[[w,x,z*y,z^3,y^3],[w,z,y,x]]]

References
     *Note `fctr sqfr': fctr sqfr, *Note `Setting term orderings':
     Setting term orderings.

