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

### `nd_gr`, `nd_gr_trace`, `nd_f4`, `nd_weyl_gr`, `nd_weyl_gr_trace`

`nd_gr(plist,vlist,p,order)`
`nd_gr_trace(plist,vlist,homo,p,order)`
`nd_f4(plist,vlist,modular,order)`
`nd_weyl_gr(plist,vlist,p,order)`
`nd_weyl_gr_trace(plist,vlist,homo,p,order)`
  :: グレブナ基底の計算 (組み込み函数)

return
  リスト
plist vlist
  リスト
order
  数, リストまたは行列
homo
  フラグ
modular
  フラグまたは素数

- これらの函数は, グレブナ基底計算組み込み関数の新実装である.
- `nd_gr` は, `p` が 0 のとき有理数体上の Buchberger アルゴリズムを実行する. `p` が 2 以上の自然数のとき, GF(p) 上の Buchberger アルゴリズムを実行する.
- `nd_gr_trace` は有理数体上で trace アルゴリズムを実行する. `p` が 0 または 1 のとき, 自動的に選ばれた素数を用いて, 成功する まで trace アルゴリズムを実行する. `p` が 2 以上のとき, trace はGF(p) 上で計算される. trace アルゴリズム が失敗した場合 0 が返される. `p` が負の場合, グレブナ基底チェックは 行わない. この場合, `p` が -1 ならば自動的に選ばれた素数が, それ以外は指定された素数を用いてグレブナ基底候補の計算が行われる.
- `nd_f4` は, 有限体上の F4 アルゴリズムを実行する.
- `nd_weyl_gr`, `nd_weyl_gr_trace` は Weyl 代数用である.
- いずれの関数も, 有理関数体上の計算は未対応である.
- 一般に `dp_gr_main`, `dp_gr_mod_main` より高速であるが, 特に有限体上の場合顕著である.

    [38] load("cyclic")$
    [49] C=cyclic(7)$
    [50] V=vars(C)$
    [51] cputime(1)$
    [52] dp_gr_mod_main(C,V,0,31991,0)$
    26.06sec + gc : 0.313sec(26.4sec)
    [53] nd_gr(C,V,31991,0)$
    ndv_alloc=1477188
    5.737sec + gc : 0.1837sec(5.921sec)
    [54] dp_f4_mod_main(C,V,31991,0)$
    3.51sec + gc : 0.7109sec(4.221sec)
    [55] nd_f4(C,V,31991,0)$
    1.906sec + gc : 0.126sec(2.032sec)

`参照`
  section `dp_ord`, section `dp_gr_flags`, `dp_gr_print`, section 計算および表示の制御.

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