Go to the first, previous, next, last section, table of contents.

### `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]]]

`参照`
  section `fctr`, `sqfr`, section 項順序の設定.

Go to the first, previous, next, last section, table of contents.