Google

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


gr, hgr, gr_mod, dgr

gr(plist,vlist,order)
hgr(plist,vlist,order)
gr_mod(plist,vlist,order,p)
dgr(plist,vlist,order,procs)
:: グレブナ基底の計算
return
リスト
plist, vlist, procs
リスト
order
数, リストまたは行列
p
2^27 未満の素数
  • 標準ライブラリの `gr' で定義されている.
  • いずれも, 多項式リスト plist の, 変数順序 vlist, 項順序型 order に関するグレブナ基底を求める. gr(), hgr() は 有理数係数, gr_mod() は GF(p) 係数として計算する.
  • vlist は不定元のリスト. vlist に現れない不定元は, 係数体に属すると見なされる.
  • gr(), trace-lifting (モジュラ演算を用いた高速化) および sugar strategy による計算, hgr() は trace-lifting および 斉次化による 矯正された sugar strategy による計算を行う.
  • dgr() は, gr(), dgr() を 子プロセスリスト procs の 2 つのプロセスにより同時に計算させ, 先に結果を返した方の結果を返す. 結果は同一であるが, どちらの方法が 高速か一般には不明のため, 実際の経過時間を短縮するのに有効である.
  • dgr() で表示される時間は, この函数が実行されているプロセスでの CPU 時間であり, この函数の場合はほとんど通信のための時間である.
[0] load("gr")$
[64] load("cyclic")$
[74] G=gr(cyclic(5),[c0,c1,c2,c3,c4],2);
[c4^15+122*c4^10-122*c4^5-1,...]
[75] GM=gr_mod(cyclic(5),[c0,c1,c2,c3,c4],2,31991)$
24628*c4^15+29453*c4^10+2538*c4^5+7363
[76] (G[0]*24628-GM[0])%31991;
0
参照
section dp_gr_main, dp_gr_mod_main, section dp_ord.


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