
|
Go to the first, previous, next, last section, table of contents.
- lex_hensel_gsl(plist,vlist1,order,vlist2,homo)
-
:: GSL 形式のイデアル基底の計算
- tolex_gsl(plist,vlist1,order,vlist2,homo)
-
- tolex_gsl_d(plist,vlist1,order,vlist2,homo,procs)
-
:: グレブナ基底を入力とする, GSL 形式のイデアル基底の計算
- return
-
リスト
- plist, vlist1, vlist2, procs
-
リスト
- order
-
数, リストまたは行列
- homo
-
フラグ
-
lex_hensel_gsl() は lex_hensel() の, tolex_gsl() は
tolex() の変種で, 結果のみが異なる.
tolex_gsl_d() は, 基底計算を, procs で指定される子プロセスに
分散計算させる.
-
入力が 0 次元システムで, その辞書式順序グレブナ基底が
[f0,x1-f1,...,xn-fn] (f0 ,...,fn は
x0 の 1 変数多項式) なる形 (これを SL 形式と呼ぶ) を持つ場合,
[[x1,g1,d1],...,[xn,gn,dn],[x0,f0,f0']] なるリスト (これを GSL 形式と呼ぶ)
を返す.
ここで, gi は, di*f0'*fi-gi が f0 で割り切れるような
x0 の1 変数多項式で,
解は f0(x0)=0 なる x0 に対し, [x1=g1/(d1*f0'),...,xn=gn/(dn*f0')]
となる. 辞書式順序グレブナ基底が上のような形でない場合, tolex() に
よる通常のグレブナ基底を返す.
-
GSL 形式により表される基底はグレブナ基底ではないが, 一般に係数が SL 形式
のグレブナ基底より非常に小さいため計算も速く, 解も求めやすい.
tolex_gsl_d() で表示される時間は, この函数が実行されているプロセスに
おいて行われた計算に対応していて, 子プロセスにおける時間は含まれない.
[103] K=katsura(5)$
[104] V=[u5,u4,u3,u2,u1,u0]$
[105] G0=gr(K,V,0)$
[106] GSL=tolex_gsl(G0,V,0,V)$
[107] GSL[0];
[u1,8635837421130477667200000000*u0^31-...]
[108] GSL[1];
[u2,10352277157007342793600000000*u0^31-...]
[109] GSL[5];
[u0,11771021876193064124640000000*u0^32-...,376672700038178051988480000000*u0^31-...]
- 参照
-
section
lex_hensel , lex_tl , tolex , tolex_d , tolex_tl ,
section 分散計算
Go to the first, previous, next, last section, table of contents.
|