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

primadec(PLIST,VLIST)

primedec(PLIST,VLIST)
     :: イデアルの分解

RETURN
PLIST
     多項式リスト

VLIST
     変数リスト

   * `primadec()', `primedec' は `primdec' で定義されている.

   * `primadec()', `primedec()' はそれぞれ有理数体上でのイデアルの
     準素分解, 根基の素イデアル分解を行う.

   * 引数は多項式リストおよび変数リストである.
     多項式は有理数係数のみが許される.

   * `primadec' は `[準素成分, 付属素イデアル]' のリストを返す.

   * `primadec' は 素因子のリストを返す.

   * 結果において, 多項式リストとして表示されている各イデアルは全て
     グレブナ基底である. 対応する項順序は, それぞれ 変数 `PRIMAORD',
     `PRIMEORD' に格納されている.

   * `primadec' は `[Shimoyama,Yokoyama]' の準素分解アルゴリズム
     を実装している.

   * もし素因子のみを求めたいなら, `primedec' を使う方がよい.  これは,
     入力イデアルが根基イデアルでない場合に, `primadec'
     の計算に余分なコストが必要となる場合があるからである.

     [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]]]

参照
     *Note `fctr sqfr': fctr sqfr, *Note `項順序の設定': 項順序の設定.

